Skip to content
Snippets Groups Projects
Commit 74584869 authored by Andrey Saranchin's avatar Andrey Saranchin Committed by Serge Petrenko
Browse files

memtx: do not use memtx_build_on_replace trigger with mvcc enabled

Now background build of index uses index iterator that collects
conflicts during iteration if MVCC is enabled. Thus, trigger
`memtx_build_on_replace` is not needed - if someone writes to
prefix we already scanned, it will lead to transaction conflict.
Moreover, `memtx_ddl_state` that is needed for rollback is allocated
on stack of function called from DDL transaction, so if conflicted
transaction rolls back later that DDL is over (and it's possible only
with MVCC enabled), segmentation fault will happen. So let's simply
don't set the trigger is MVCC is enabled.

Closes #10147

NO_CHANGELOG=later
NO_DOC=bugfix

(cherry picked from commit 9fe60c5754cf77686404fc7ee3d24af32b6c486c)
parent 1d72b80f
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment