-
Notifications
You must be signed in to change notification settings - Fork 708
Merge critical viewer fixes stable 25-1-2 #20054
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
Merge critical viewer fixes stable 25-1-2 #20054
Conversation
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.
Pull Request Overview
This PR reduces node criticality thresholds and minimizes response payloads by adding field-level filtering, updates JSON handler versions, and refactors the system-state evaluation logic in the node whiteboard.
- Introduced
FieldsRequested
to only serialize user-requested fields inTJsonNodes
andTStorageGroups
. - Added result-size measurement on spans and bumped JSON handler versions for viewer and storage endpoints.
- Refactored
UpdateSystemState
innode_whiteboard.cpp
to simplify flag calculations and adjust disk usage thresholds.
Reviewed Changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated 3 comments.
Show a summary per file
File | Description |
---|---|
ydb/core/viewer/viewer_nodes.h | Added FieldsRequested filter checks and span size reporting. |
ydb/core/viewer/storage_groups.h | Added FieldsRequested filter checks for storage group fields. |
ydb/core/viewer/json_handlers_viewer.cpp | Bumped /viewer/nodes handler priority from 15 to 16. |
ydb/core/viewer/json_handlers_storage.cpp | Bumped /storage/groups handler priority from 6 to 7. |
ydb/core/tablet/node_whiteboard.cpp | Refactored UpdateSystemState logic and disk flag thresholds. |
Comments suppressed due to low confidence (2)
ydb/core/viewer/viewer_nodes.h:3277
- New span attribute
result_size
was introduced but lacks corresponding unit or integration tests. Consider adding tests to verify that the span is annotated correctly and covers edge cases for empty and large payloads.
Span.Attribute("result_size", TStringBuilder() << jsonBody.Size());
ydb/core/tablet/node_whiteboard.cpp:826
- The code that merged
MessageBusState
into the overall flag was removed. This may cause message-bus errors to be ignored. If this was unintentional, reintroduceif (HasMessageBusState) eFlag = max(eFlag, GetMessageBusState());
to preserve previous behavior.
if (SystemStateInfo.HasGRpcState()) {
🟢 |
⚪ Test history | Ya make output | Test bloat
⚪ Test history | Ya make output | Test bloat | Test bloat
🟢
*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation |
⚪ Test history | Ya make output | Test bloat
⚪ Test history | Ya make output | Test bloat | Test bloat
⚪ Test history | Ya make output | Test bloat | Test bloat | Test bloat
🟢
*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation |
Changelog entry
Make nodes less critical (to make cluster less critical), closes #19676
Minimize returned data to avoid large responses, closes #19810
Changelog category
Description for reviewers
Нужно выкатить asap: