-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Critical - P2
-
Affects Version/s: None
-
Component/s: Btree, Page deltas
-
Storage Engines, Storage Engines - Transactions
-
SE Transactions - 2025-08-29, SE Transactions - 2025-09-12
-
5
In one PR test in the wiredtiger_disagg_integration branch, I saw this error:
[2025/07/02 12:34:57.012] ====================================================================== [2025/07/02 12:34:57.012] [pid:56634]: FAIL: test_layered32.test_layered32.test_internal_page_delta_random(rotn.snappy.palm.layered.ts.write_both) [2025/07/02 12:34:57.012] ---------------------------------------------------------------------- [2025/07/02 12:34:57.012] [pid:56634]: testtools.testresult.real._StringException: Traceback (most recent call last): [2025/07/02 12:34:57.012] File "/data/mci/479feb40289ab4d4822a466c0f802fbf/wiredtiger/test/suite/wttest.py", line 243, in _callTestMethod [2025/07/02 12:34:57.012] method() [2025/07/02 12:34:57.012] File "/data/mci/479feb40289ab4d4822a466c0f802fbf/wiredtiger/test/suite/test_layered32.py", line 217, in test_internal_page_delta_random [2025/07/02 12:34:57.012] self.verify(kv_modfied, inital_value) [2025/07/02 12:34:57.012] File "/data/mci/479feb40289ab4d4822a466c0f802fbf/wiredtiger/test/suite/test_layered32.py", line 118, in verify [2025/07/02 12:34:57.012] self.assertEqual(cursor.get_value(), expected_kv[str(i)]) [2025/07/02 12:34:57.012] AssertionError: '219abc' != '1602abc' [2025/07/02 12:34:57.012] - 219abc [2025/07/02 12:34:57.012] + 1602abc
The failing task is here: https://spruce.mongodb.com/task/wiredtiger_feature_ubuntu2004_unit_test_bucket10_patch_4940cffd91879240b40195dde0184fd2d040061e_68655a7725f67a00070966fe_25_07_02_16_12_41/logs?execution=0
This looks like it could be a serious error. I tried running layered32 100 times but haven't seen the error. This test has some good randomness - changing number of keys written and in what range on each run. It uses random.randint(), which appears to start with a different seed every time python is initialized. It would be very useful to generate a random seed in the test itself, then we could print the seed via self.pr() or something that can be discovered if the test fails, and rerun with a specific seed.
I think the expectations for the ticket are to try to reproduce, but mainly change the test so that any failure can be repeated.
- is related to
-
WT-15213 Don't free the previous address cookie
-
- Closed
-
-
WT-15233 Fix behavior of dmalloc, dcalloc, drealloc used in testing to match malloc, etc.
-
- Closed
-
-
WT-15247 Unexpected keys observed after connection reopen for disagg
-
- Closed
-
-
WT-15249 Add error check for incompatible config with write_timestamp_usage=never in disagg
-
- Closed
-
-
WT-15396 Coverity analysis defect 175990: Calling risky function
-
- Closed
-
-
WT-15405 Fix layered table key deletion and add a test for GC
-
- Closed
-
-
WT-14880 Support generating page deltas for page splits
-
- Open
-
-
WT-14514 Prototype rewrite the page when reconstructing the leaf page deltas
-
- Closed
-
-
WT-15187 Don't build overflow keys or values in disagg
-
- Closed
-
-
WT-15401 Make test/model compatible with macOS
-
- Closed
-
-
WT-15389 Saved update lists with deletes are lost when building a delta
-
- Closed
-
- related to
-
WT-15215 test/format (disagg) detects out-of-order keys
-
- In Progress
-