Skip to content

memtx: split memtx_tx_story_unlink_both logic in two separate contexts#7758

Merged
alyapunov merged 1 commit intotarantool:masterfrom
CuriousGeorgiy:gh-7757-full-unlink-on-space-delete
Nov 9, 2022
Merged

memtx: split memtx_tx_story_unlink_both logic in two separate contexts#7758
alyapunov merged 1 commit intotarantool:masterfrom
CuriousGeorgiy:gh-7757-full-unlink-on-space-delete

Conversation

@CuriousGeorgiy
Copy link
Member

memtx_tx_story_unlink_both is called in two separate contexts: on space delete and on rollback. In the former case we need to simply unlink the story, while in the latter case we need to rebind read and gap trackers, and, perhaps do some other logic in the future. Calling memtx_tx_story_unlink_both in the former context can trigger assertion: split the function and its helpers into two separate functions for each case, grouping the common logic into third *_common functions.

Closes #7757

@drewdzzz drewdzzz assigned CuriousGeorgiy and unassigned drewdzzz Oct 3, 2022
@CuriousGeorgiy CuriousGeorgiy force-pushed the gh-7757-full-unlink-on-space-delete branch from 3e8e1d8 to 44a2020 Compare October 3, 2022 11:22
`memtx_tx_story_unlink_both` is called in two separate contexts: on space
delete and on rollback. In the former case we need to simply unlink the
story, while in the latter case we need to rebind read and gap trackers,
and, perhaps do some other logic in the future. Calling
`memtx_tx_story_unlink_both` in the former context can trigger assertion:
split the function and its helpers into two separate functions for each
case, grouping the common logic into third `*_common` functions.

Closes tarantool#7757

NO_DOC=bugfix
@CuriousGeorgiy CuriousGeorgiy force-pushed the gh-7757-full-unlink-on-space-delete branch from 44a2020 to 0f74945 Compare October 31, 2022 10:08
@coveralls
Copy link

coveralls commented Oct 31, 2022

Coverage Status

Coverage increased (+0.8%) to 85.092% when pulling 0f74945 on CuriousGeorgiy:gh-7757-full-unlink-on-space-delete into 847e5e0
on tarantool:master
.

@alyapunov alyapunov added the full-ci Enables all tests for a pull request label Nov 8, 2022
@alyapunov alyapunov merged commit 21d3af4 into tarantool:master Nov 9, 2022
@alyapunov
Copy link
Contributor

Cherry-picked to 2.10.

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

Labels

full-ci Enables all tests for a pull request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

memtx space:drop triggers assertion in transaction manager

4 participants