Recovering from an unclean shutdown with vinyl is currently rather expensive and requires a complete scan of the bstream.
This is because vinyl_meta does not have proper persistence features.
If the recovery code detects a lock held in vinyl_meta, then the affected slot range may be out-of-date or corrupt.
Journaling vinyl_meta updates into a shared memory persistent ring buffer would allow recovery logic to always recover a vinyl_meta assuming TSO ordering.
Recovering from an unclean shutdown with vinyl is currently rather expensive and requires a complete scan of the bstream.
This is because vinyl_meta does not have proper persistence features.
If the recovery code detects a lock held in vinyl_meta, then the affected slot range may be out-of-date or corrupt.
Journaling vinyl_meta updates into a shared memory persistent ring buffer would allow recovery logic to always recover a vinyl_meta assuming TSO ordering.