Unify the mechanisms for updating shared metadata table

XMLWordPrintableJSON

    • Type: Technical Debt
    • Resolution: Unresolved
    • Priority: Major - P3
    • WT12.0.0
    • Affects Version/s: None
    • Component/s: Metadata
    • None
    • Storage Engines, Storage Engines - Persistence
    • None
    • None

      WiredTiger currently updates the shared metadata table in the following ways:

      • Modifying the metadata table directly during a checkpoint, e.g., during checkpoint resolve.
      • Modifying the metadata table directly in response to DDL operations, e.g., creating a new table.
      • Scheduling metadata to be copied later, e.g., to handle creating empty tables.

      The latter has a somewhat unfortunate design (even though it works), because it schedules copying metadata for later, but it uses metadata from that latter point when updating it. It is also somewhat unfortunate that the mechanism's correctness depends on transactional access to the metadata table, while metadata operations are non-transactional.

      The motivation behind this redesign is to clean up the design.

            Assignee:
            Peter Macko
            Reporter:
            Peter Macko
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: