# rosbag2存储：无法打开包：存储插件'sqlite3'不支持压缩格式'zstd'

- **ID:** `ros2/rosbag2-compression-format-mismatch`
- **领域:** ros2
- **类别:** data_error
- **验证级别:** ai_generated
- **修复率:** 90%

## 根因

rosbag2的sqlite3存储插件不支持zstd压缩；默认只支持lz4，且未安装zstd的自定义插件。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| ros2-humble | active | — | — |
| ros2-iron | active | — | — |
| ros2-rolling | active | — | — |

## 解决方案

1. ```
   安装rosbag2_compression_zstd插件：sudo apt install ros-humble-rosbag2-compression-zstd
   ```
2. ```
   将包转换为lz4压缩：ros2 bag compress --input /path/to/bag --output /path/to/output --compression-queue-size 1 --compression-mode file --compression-format lz4
   ```

## 无效尝试

- **** — Default sqlite3 plugin code doesn't support zstd; requires a separate plugin package. (80% 失败率)
- **** — Environment variable alone doesn't install the required plugin; the plugin must be built and loaded. (90% 失败率)
