Skip to content

Fix crash test failures when use_trie_index conflicts with txn options#14446

Closed
pdillinger wants to merge 1 commit intofacebook:mainfrom
pdillinger:crash_test_trie_txn_fix
Closed

Fix crash test failures when use_trie_index conflicts with txn options#14446
pdillinger wants to merge 1 commit intofacebook:mainfrom
pdillinger:crash_test_trie_txn_fix

Conversation

@pdillinger
Copy link
Contributor

Summary:
The trie UDI sanitization in db_crashtest.py disables use_txn because TransactionDB ROLLBACK writes DELETE entries that violate UDI's Put-only restriction. However, it was not clearing use_optimistic_txn or test_multi_ops_txns, which both require use_txn to be true.

Since use_trie_index is randomly enabled with 1/8 probability, the optimistic_txn and multiops_txn crash tests would intermittently fail with:

  • "You cannot set use_optimistic_txn true while use_txn is false"
  • "-use_txn must be true if -test_multi_ops_txns"

Fix by also setting use_optimistic_txn=0 and test_multi_ops_txns=0 in the trie UDI sanitization block alongside the existing use_txn=0.

Test Plan:
Watch crash test CI results

Summary:
The trie UDI sanitization in db_crashtest.py disables use_txn because
TransactionDB ROLLBACK writes DELETE entries that violate UDI's Put-only
restriction. However, it was not clearing use_optimistic_txn or
test_multi_ops_txns, which both require use_txn to be true.

Since use_trie_index is randomly enabled with 1/8 probability, the
optimistic_txn and multiops_txn crash tests would intermittently fail
with:
- "You cannot set use_optimistic_txn true while use_txn is false"
- "-use_txn must be true if -test_multi_ops_txns"

Fix by also setting use_optimistic_txn=0 and test_multi_ops_txns=0 in
the trie UDI sanitization block alongside the existing use_txn=0.

Test Plan:
Watch crash test CI results
@pdillinger pdillinger requested a review from xingbowang March 10, 2026 18:27
@meta-cla meta-cla bot added the CLA Signed label Mar 10, 2026
@meta-codesync
Copy link

meta-codesync bot commented Mar 10, 2026

@pdillinger has imported this pull request. If you are a Meta employee, you can view this in D95986370.

@github-actions
Copy link

✅ clang-tidy: No findings on changed lines

Completed in 0.0s.

@meta-codesync
Copy link

meta-codesync bot commented Mar 10, 2026

@pdillinger merged this pull request in db9449a.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants