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

BTreeIndex Bugfix partially-loaded tree #1674

Merged
merged 9 commits into from
Feb 9, 2024

Conversation

kunga
Copy link
Member

@kunga kunga commented Feb 7, 2024

Changelog entry

...

Changelog category

  • Not for changelog (changelog entry is not required)

Additional information

Previous version has a bug, that if we have some (but not all) pages, it passes wrong bounds to groups/history precharge.

For example:

  • 3-leveled tree
    • level0: node00: rows [0..40)
    • level1: node10: rows [0..20); node11: rows [20..40)
    • level2: node20: rows [0..10); node20: rows [10..20); ...
  • in memory we have all the nodes except node11
  • precharge keys range [5..15]

We will reach and stop on level 1, and have beginRowId = 0. And will call DoGroupsAndHistory(0, 10) instead of DoGroupsAndHistory(5, 10).

So instead of stopping as soon as we have unloaded node on current level, we should continue the process and search for exact begin/end bounds.

Also, it was really hard to track limits in previous version because we don't have enough information about nodes sizes and items (and skip unneeded nodes easily).

We may also consider 'Deep First Search' instead of current 'Breadth First Search' and do not store all level node states, but I expect that usually level will consist of two or three nodes.

Copy link

github-actions bot commented Feb 7, 2024

2024-02-07 13:46:23 UTC Pre-commit check for 42b3845 has started.
2024-02-07 13:46:25 UTC Build linux-x86_64-relwithdebinfo is running...
🟢 2024-02-07 13:48:02 UTC Build successful.
2024-02-07 13:48:11 UTC Tests are running...
🔴 2024-02-07 15:05:03 UTC Some tests failed, follow the links below.

Test history

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
67229 56365 0 11 10820 33

@kunga kunga changed the title BTreeIndex Bugfix curvy tree BTreeIndex Bugfix partially-loaded tree Feb 7, 2024
Copy link

github-actions bot commented Feb 7, 2024

2024-02-07 13:52:46 UTC Pre-commit check for 42b3845 has started.
2024-02-07 13:52:49 UTC Build linux-x86_64-release-asan is running...
🟢 2024-02-07 13:54:32 UTC Build successful.
2024-02-07 13:54:42 UTC Tests are running...
🔴 2024-02-07 15:29:42 UTC Some tests failed, follow the links below.

Test history

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
14574 14455 0 29 66 24

Copy link

github-actions bot commented Feb 7, 2024

2024-02-07 16:00:51 UTC Pre-commit check for c8108fc has started.
2024-02-07 16:00:54 UTC Build linux-x86_64-relwithdebinfo is running...
🟢 2024-02-07 16:02:58 UTC Build successful.
2024-02-07 16:03:12 UTC Tests are running...
🔴 2024-02-07 16:43:21 UTC Test run completed, no test results found for commit c3b175b. Please check build logs.
2024-02-07 16:43:25 UTC Check cancelled

Copy link

github-actions bot commented Feb 7, 2024

2024-02-07 16:00:57 UTC Pre-commit check for c8108fc has started.
2024-02-07 16:01:00 UTC Build linux-x86_64-release-asan is running...
🟢 2024-02-07 16:02:46 UTC Build successful.
2024-02-07 16:03:00 UTC Tests are running...
🔴 2024-02-07 16:43:24 UTC Test run completed, no test results found for commit c3b175b. Please check build logs.
2024-02-07 16:43:27 UTC Check cancelled

Copy link

github-actions bot commented Feb 7, 2024

2024-02-07 16:44:03 UTC Pre-commit check for f2273fe has started.
2024-02-07 16:44:05 UTC Build linux-x86_64-relwithdebinfo is running...
🟢 2024-02-07 16:45:42 UTC Build successful.
2024-02-07 16:45:51 UTC Tests are running...
🔴 2024-02-07 18:08:19 UTC Test run completed, no test results found for commit 66441e7. Please check build logs.
2024-02-07 18:08:23 UTC Check cancelled

Copy link

github-actions bot commented Feb 7, 2024

2024-02-07 16:44:44 UTC Pre-commit check for f2273fe has started.
2024-02-07 16:44:46 UTC Build linux-x86_64-release-asan is running...
🟢 2024-02-07 16:46:25 UTC Build successful.
2024-02-07 16:46:35 UTC Tests are running...
🔴 2024-02-07 18:08:18 UTC Test run completed, no test results found for commit 66441e7. Please check build logs.
2024-02-07 18:08:22 UTC Check cancelled

Copy link

github-actions bot commented Feb 7, 2024

2024-02-07 18:10:16 UTC Pre-commit check for 3bd9d4f has started.
2024-02-07 18:10:19 UTC Build linux-x86_64-relwithdebinfo is running...
🟢 2024-02-07 18:12:03 UTC Build successful.
2024-02-07 18:12:16 UTC Tests are running...
🔴 2024-02-07 19:34:12 UTC Some tests failed, follow the links below.

Test history

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
67247 56376 0 27 10820 24

Copy link

github-actions bot commented Feb 7, 2024

2024-02-07 18:10:21 UTC Pre-commit check for 3bd9d4f has started.
2024-02-07 18:10:23 UTC Build linux-x86_64-release-asan is running...
🟢 2024-02-07 18:12:23 UTC Build successful.
2024-02-07 18:12:35 UTC Tests are running...
🔴 2024-02-07 19:48:52 UTC Some tests failed, follow the links below.

Test history

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
14594 14441 0 57 56 40

Copy link

github-actions bot commented Feb 8, 2024

2024-02-08 13:24:03 UTC Pre-commit check for ed31bb4 has started.
2024-02-08 13:24:05 UTC Build linux-x86_64-relwithdebinfo is running...
🟢 2024-02-08 13:25:59 UTC Build successful.
2024-02-08 13:26:12 UTC Tests are running...
🔴 2024-02-08 13:58:26 UTC Test run completed, no test results found for commit 8cefe19. Please check build logs.
2024-02-08 13:58:30 UTC Check cancelled

Copy link

github-actions bot commented Feb 8, 2024

2024-02-08 13:24:10 UTC Pre-commit check for ed31bb4 has started.
2024-02-08 13:24:13 UTC Build linux-x86_64-release-asan is running...
🟢 2024-02-08 13:26:03 UTC Build successful.
2024-02-08 13:26:15 UTC Tests are running...
🔴 2024-02-08 13:58:21 UTC Test run completed, no test results found for commit 8cefe19. Please check build logs.
2024-02-08 13:58:24 UTC Check cancelled

@kunga kunga mentioned this pull request Feb 8, 2024
61 tasks
Copy link

github-actions bot commented Feb 8, 2024

2024-02-08 13:59:16 UTC Pre-commit check for 5cf4969 has started.
2024-02-08 13:59:18 UTC Build linux-x86_64-release-asan is running...
🟢 2024-02-08 14:13:07 UTC Build successful.
2024-02-08 14:13:16 UTC Tests are running...
🔴 2024-02-08 15:53:33 UTC Some tests failed, follow the links below.

Test history

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
14738 14547 0 18 132 41

Copy link

github-actions bot commented Feb 8, 2024

2024-02-08 13:59:55 UTC Pre-commit check for 5cf4969 has started.
2024-02-08 13:59:57 UTC Build linux-x86_64-relwithdebinfo is running...
🟢 2024-02-08 14:13:08 UTC Build successful.
2024-02-08 14:13:18 UTC Tests are running...
🟢 2024-02-08 15:52:01 UTC Tests successful.

Test history

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
67413 56461 0 0 10892 60

@kunga kunga requested a review from snaury February 8, 2024 14:14
@kunga kunga marked this pull request as ready for review February 8, 2024 14:14
@kunga kunga merged commit bb72994 into ydb-platform:main Feb 9, 2024
3 of 4 checks passed
@starlinskiy starlinskiy mentioned this pull request Feb 12, 2024
@serbel324 serbel324 mentioned this pull request Feb 13, 2024
@vitstn vitstn mentioned this pull request Feb 16, 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.

2 participants