Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix planning of volatile transactions with uncommitted effects #2505

Merged

Conversation

snaury
Copy link
Member

@snaury snaury commented Mar 6, 2024

Changelog entry

...

Changelog category

  • Not for changelog (changelog entry is not required)

Additional information

We checked for volatile tx too early, with uncommitted writes missing from datashardTxs, which caused transaction to run as non-volatile even when volatile transactions are enabled. This patch changes BuildDatashardTxs to prepare all basic transaction bodies first, before deciding whether it should be volatile, and finally filling sending/receiving shard sets when needed.

Fixes #2504.

Copy link

github-actions bot commented Mar 6, 2024

2024-03-06 12:37:48 UTC Pre-commit check for 40f1d23 has started.
2024-03-06 12:37:50 UTC Build linux-x86_64-release-asan is running...
🟢 2024-03-06 12:40:01 UTC Build successful.
2024-03-06 12:40:11 UTC Tests are running...
🔴 2024-03-06 14:17:24 UTC Some tests failed, follow the links below.

Test history

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
14928 14789 0 28 84 27

Copy link

github-actions bot commented Mar 6, 2024

2024-03-06 12:42:32 UTC Pre-commit check for 40f1d23 has started.
2024-03-06 12:42:34 UTC Build linux-x86_64-relwithdebinfo is running...
🟢 2024-03-06 12:44:56 UTC Build successful.
2024-03-06 12:45:10 UTC Tests are running...
🔴 2024-03-06 14:02:01 UTC Some tests failed, follow the links below.

Test history

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
68171 57224 0 8 10911 28

Copy link

github-actions bot commented Mar 6, 2024

2024-03-06 12:45:37 UTC Pre-commit check for 40f1d23 has started.
2024-03-06 12:45:38 UTC Build linux-x86_64-release-cmake14 is running...
🟢 2024-03-06 12:47:47 UTC Build successful.

@snaury snaury force-pushed the fix-2504-volatile-with-uncommitted-changes branch from 4e31462 to 5a1e8dc Compare March 6, 2024 20:47
Copy link

github-actions bot commented Mar 6, 2024

2024-03-06 20:51:00 UTC Pre-commit check for e886620 has started.
2024-03-06 20:51:03 UTC Build linux-x86_64-release-cmake14 is running...
🟢 2024-03-06 21:01:29 UTC Build successful.

Copy link

github-actions bot commented Mar 6, 2024

2024-03-06 20:51:52 UTC Pre-commit check for e886620 has started.
2024-03-06 20:51:54 UTC Build linux-x86_64-relwithdebinfo is running...
🟢 2024-03-06 20:54:46 UTC Build successful.
2024-03-06 20:55:03 UTC Tests are running...
🔴 2024-03-06 22:25:11 UTC Some tests failed, follow the links below.

Test history

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
68251 57304 0 2 10918 27

Copy link

github-actions bot commented Mar 6, 2024

2024-03-06 20:52:12 UTC Pre-commit check for e886620 has started.
2024-03-06 20:52:14 UTC Build linux-x86_64-release-asan is running...
🟢 2024-03-06 20:55:27 UTC Build successful.
2024-03-06 20:55:39 UTC Tests are running...
🔴 2024-03-06 22:37:10 UTC Some tests failed, follow the links below.

Test history

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
14951 14794 0 27 100 30

@snaury snaury marked this pull request as ready for review March 7, 2024 07:33
@snaury snaury requested a review from gridnevvvit March 7, 2024 07:33
@snaury snaury enabled auto-merge (squash) March 7, 2024 07:50
@snaury snaury merged commit fd4cf66 into ydb-platform:main Mar 7, 2024
3 of 5 checks passed
@snaury snaury deleted the fix-2504-volatile-with-uncommitted-changes branch March 7, 2024 10:27
@snaury snaury self-assigned this Mar 7, 2024
@shnikd shnikd mentioned this pull request Mar 26, 2024
@niksaveliev niksaveliev mentioned this pull request Mar 29, 2024
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.

Distributed transactions with uncommitted changes not running as volatile when they should
2 participants