Skip to content

Fix: OptimizeIndex concurrent conflict detection causes UnrecoverableError#3329

Draft
zpf121 wants to merge 2 commits intoinfiniflow:mainfrom
zpf121:fix_optimize
Draft

Fix: OptimizeIndex concurrent conflict detection causes UnrecoverableError#3329
zpf121 wants to merge 2 commits intoinfiniflow:mainfrom
zpf121:fix_optimize

Conversation

@zpf121
Copy link
Contributor

@zpf121 zpf121 commented Mar 20, 2026

Close #3328

Description

When multiple optimize index operations occur (either from timer or manual trigger), the system throws UnrecoverableError("There should be no concurrent optimize txns") incorrectly.

Message

[02:07:36.025] [1667169] [critical] Error: Aborted
   6# infinity::UnrecoverableError at /infinity/src/common/utility/exception_impl.cpp:84
  11# infinity::NewTxn::CheckConflictTxnStore at /infinity/src/storage/new_txn/new_txn_impl.cpp:3953
  12# infinity::NewTxn::CheckConflictTxnStores at /infinity/src/storage/new_txn/new_txn_impl.cpp:4558
  13# infinity::NewTxnManager::CheckConflict1 at /infinity/src/storage/new_txn/new_txn_manager_impl.cpp:228
  14# infinity::NewTxn::Commit at /infinity/src/storage/new_txn/new_txn_impl.cpp:2082
  15# infinity::NewTxnManager::CommitTxn at /infinity/src/storage/new_txn/new_txn_manager_impl.cpp:317
  16# infinity::OptimizationProcessor::NewNotifyOptimize at /infinity/src/storage/bg_task/optimization_process_impl.cpp:99
  17# infinity::OptimizationProcessor::Process at /infinity/src/storage/bg_task/optimization_process_impl.cpp:181

Reproduce

slow test:reldeb_restart_test

@zpf121 zpf121 marked this pull request as draft March 20, 2026 07:02
@zpf121 zpf121 added the slow-test To trigger slow test label Mar 20, 2026
@zpf121 zpf121 marked this pull request as ready for review March 20, 2026 07:03
@yuzhichang yuzhichang marked this pull request as draft March 20, 2026 11:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

slow-test To trigger slow test

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: OptimizeIndex concurrent conflict detection causes UnrecoverableError

1 participant