Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-193

split-merge pages have to be reconciled to mark their parents dirty

    • Type: Icon: Task Task
    • Resolution: Done
    • WT1.2
    • Affects Version/s: None
    • Component/s: None
    • Labels:

      There's a problem in how we're handling split-merge pages, here's the scenario:

      1. Imagine a tree root -> split-merge page -> leaf page, all 3 dirty
      2. sync without eviction writes all of the pages, and marks them all clean
      3. change to the leaf page marks it dirty
      4. eviction writes the leaf page, marks the split-merge page dirty
      5. eviction ignores the split-merge page
      6. the root page is still marked clean, and so we don't write it, losing our change to the leaf page.

      I think the right change is to reconcile split-merge pages like any other page, but the only thing that will happen is to mark the parent page dirty.

      This is a general problem, but it's triggered in the snapshot tree because we're doing a lot more sync calls.

            Assignee:
            Unassigned Unassigned
            Reporter:
            keith.bostic@mongodb.com Keith Bostic (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: