SeiDB Adoption FAQ
SeiDB is the database layer designed to improve state storage performance on Sei. Use this FAQ to decide when and how to enable it.
Why SeiDB?
| Faster state reads | Optimized column families reduce latency for RPC-heavy workloads. |
| Compact storage | Built-in pruning keeps disk usage predictable. |
| Operator tooling | Supports snapshots and state sync workflows already used in production. |
Prerequisites
- Run the latest binary that includes the SeiDB integration (see repository release notes).
- Ensure disk I/O can handle compacted writes (NVMe recommended).
- Backup your existing
data/directory before enabling.
Enable Steps
-
Stop the node.
-
Update
app.toml:[state-store] ss-enable = true ss-backend = "seidb" ss-keep-recent = 100000 ss-prune-interval = 600 -
Restart the node and monitor logs for
seidbinitialization messages.
Migration Considerations
- First start performs data migration. Expect higher CPU and disk usage.
- Keep a recent snapshot handy; if migration encounters issues, you can roll back.
- After migration, take a fresh snapshot for disaster recovery.
Monitoring
- Track disk utilization and compaction stats from logs.
- Monitor snapshot creation time; SeiDB should reduce snapshot size compared to RocksDB.
Troubleshooting
| Error | Cause | Fix |
|---|---|---|
Node fails to start with seidb references | Binary or config mismatch. | Ensure binary includes SeiDB support and ss-backend is spelled correctly. |
Increased CPU usage after enablement | Initial compaction running. | Allow compaction to finish; schedule enabling during low-traffic periods. |
Snapshots take longer than expected | Snapshot interval too short or disk under-powered. | Increase ss-prune-interval and run on faster storage. |
Last updated on