Skip to content

remove recoverylog FSM properties #265

@jgraettinger

Description

@jgraettinger

"Properties" were originally added to the log FSM when it was a concern that files like IDENTITY, written by RocksDB on DB initialization and never changed, would prevent normal RocksDB compaction action from shifting forward the offset "horizon" of recovery-log content that's still required.

These days it's totally vestigial, since un-needed portions of the recovery log are happily pruned from the middle of the log, and there's no downside to having a jumble of very old fragments, new fragments, and "islands" of still-used fragments in between.

It also causes some rare initialization failures, because the FSM requires that a property like IDENTITY is never written again once initialized, and it turns out there are certain conditions where RocksDB will actually write this file again.

We should remove support for recording new Properties updates, while keeping required support to not break Properties that already exist in FSM hints.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions