-
Notifications
You must be signed in to change notification settings - Fork 638
speed up merging for sparsed columns #8365
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
speed up merging for sparsed columns #8365
Conversation
ivanmorozov333
commented
Aug 28, 2024
- Performance improvement
ac88928
to
9cb8435
Compare
⚪ ⚪ ⚪
🟢
*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation |
⚪
🟢
*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation |
⚪
🟢
*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation |
⚪ ⚪
🟢
*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation |
} | ||
++chunkIdx; | ||
} | ||
RemapPortionIndexToResultIndex = std::move(result); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Почему сразу не строить RemapPortionIndexToResultIndex, а через result?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
если кто-то захочет посередине выйти - мы мусор не сохраним, даже если exception вылетит... но это, скорее, психологический момент. предпочитаю "атомарно" менять сложные конструкции
Cursors.emplace_back(p, Context); | ||
if (mergingContext.HasRemapInfo(idx)) { | ||
CursorPositions.emplace_back(TCursorPosition(&Cursors.back(), mergingContext.GetRemapPortionIndexToResultIndex(idx))); | ||
if (CursorPositions.back().IsFinished()) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А нельзя до добавления проверять на IsFinished?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
да можно - лень было переменную объявлять. это условие редкое
Conflicts: ydb/core/tx/columnshard/engines/changes/compaction/merger.cpp