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

Create a test application that stresses truncate and checkpoint

    • Type: Icon: Workload Workload
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • 8

      The truncate implementation in WiredTiger has an optimization where it can mark entire pages deleted, rather than marking individual records as deleted. The truncate implementation leads to have a bunch of new interesting states possible for pages in the cache.

      Further, checkpoints at a timestamp require that interesting states of those pages can be reconstructed.

      We should implement a targeted stress test that includes truncate and checkpoint operations. There will also need to be other operations present to ensure there is content to be truncated, and an interesting interleaving of operations.

      The application should use timestamps - since re-reading content that has been truncated is more possible with timestamps, and again leads to some of the interesting scenarios.

      An example of a case the test should cover is described in WT-9776, and another is covered by test/suite/test_truncate18.py

      Adding a new CPP suite test application seems like a good fit for implementing this.

            Assignee:
            backlog-server-storage-engines [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            alexander.gorrod@mongodb.com Alexander Gorrod
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: