SST file format incompatibility during RocksDB version downgrade
26.5K reputation · 07 May 2021, 07:56 UTC
Forward Compatibility Constraints
\nRocksDB ensures that newer versions can read SST files created by older versions. However, forward compatibility is not guaranteed. When a database is upgraded to a newer version, the engine may rewrite SST files during compaction or ingestion using a more recent on-disk format version embedded in the file footer.
\nIf a system must be reverted to a previous version after an upgrade has already triggered these rewrites, the older binary will encounter files it cannot parse, leading to a failure to open the database.
\nGiven that recovery typically relies on restoring a snapshot or backup from before the upgrade, there is uncertainty regarding the stability of the SST format across minor version increments.
\n- \n
- Does a minor version update always maintain the same SST file format version? \n
- At what specific threshold of version increments does the on-disk format become incompatible with previous releases? \n