Skip to content

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

Merged

Conversation

adameat
Copy link
Member

@adameat adameat commented Jun 23, 2025

Changelog entry

Make nodes less critical (to make cluster less critical), closes #19676
Minimize returned data to avoid large responses, closes #19810

Changelog category

  • Bugfix

Description for reviewers

Нужно выкатить asap:

  1. множественные жалобы пользователей (включая внешних) что текущее изменение вызывает панику при просмотре кластера.
  2. в текущей версии если посмотреть закладку сеть на большом кластере, она может вернуть ответ в ~300MB что фактически убивает браузер.

@adameat adameat requested a review from a team as a code owner June 23, 2025 13:08
@adameat adameat self-assigned this Jun 23, 2025
@adameat adameat added the bugfix label Jun 23, 2025
@adameat adameat requested a review from Copilot June 23, 2025 13:08
Copy link

github-actions bot commented Jun 23, 2025

2025-06-23 13:10:34 UTC Pre-commit check linux-x86_64-release-asan for 00816c3 has started.
2025-06-23 13:10:46 UTC Artifacts will be uploaded here
2025-06-23 13:11:38 UTC Check cancelled

Copy link
Contributor

@Copilot Copilot AI left a 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 in TJsonNodes and TStorageGroups.
  • Added result-size measurement on spans and bumped JSON handler versions for viewer and storage endpoints.
  • Refactored UpdateSystemState in node_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, reintroduce if (HasMessageBusState) eFlag = max(eFlag, GetMessageBusState()); to preserve previous behavior.
        if (SystemStateInfo.HasGRpcState()) {

Copy link

github-actions bot commented Jun 23, 2025

2025-06-23 13:10:56 UTC Pre-commit check linux-x86_64-relwithdebinfo for 00816c3 has started.
2025-06-23 13:11:08 UTC Artifacts will be uploaded here
2025-06-23 13:11:37 UTC Check cancelled

Copy link

github-actions bot commented Jun 23, 2025

🟢 2025-06-26 06:58:28 UTC The validation of the Pull Request description is successful.

Copy link

github-actions bot commented Jun 23, 2025

2025-06-23 13:12:53 UTC Pre-commit check linux-x86_64-relwithdebinfo for a06596d has started.
2025-06-23 13:12:57 UTC Artifacts will be uploaded here
2025-06-23 13:15:53 UTC ya make is running...
🟡 2025-06-23 14:23:37 UTC Some tests failed, follow the links below. Going to retry failed tests...

Test history | Ya make output | Test bloat

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
27043 24522 0 2 2453 66

2025-06-23 14:26:04 UTC ya make is running... (failed tests rerun, try 2)
🟢 2025-06-23 14:46:16 UTC Tests successful.

Test history | Ya make output | Test bloat | Test bloat

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
130 (only retried tests) 72 0 0 0 58

🟢 2025-06-23 14:46:23 UTC Build successful.
🟢 2025-06-23 14:46:42 UTC ydbd size 2.1 GiB changed* by +6.4 KiB, which is < 100.0 KiB vs stable-25-1-2: OK

ydbd size dash stable-25-1-2: 002721e merge: a06596d diff diff %
ydbd size 2 257 908 800 Bytes 2 257 915 384 Bytes +6.4 KiB +0.000%
ydbd stripped size 477 952 856 Bytes 477 954 264 Bytes +1.4 KiB +0.000%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

Copy link

github-actions bot commented Jun 23, 2025

2025-06-23 13:13:01 UTC Pre-commit check linux-x86_64-release-asan for a06596d has started.
2025-06-23 13:13:13 UTC Artifacts will be uploaded here
2025-06-23 13:16:13 UTC ya make is running...
🟡 2025-06-23 14:35:04 UTC Some tests failed, follow the links below. This fail is not in blocking policy yet Going to retry failed tests...

Test history | Ya make output | Test bloat

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
13101 12942 0 56 67 36

2025-06-23 14:36:16 UTC ya make is running... (failed tests rerun, try 2)
🟡 2025-06-23 14:57:21 UTC Some tests failed, follow the links below. This fail is not in blocking policy yet Going to retry failed tests...

Test history | Ya make output | Test bloat | Test bloat

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
203 (only retried tests) 107 0 8 55 33

2025-06-23 14:57:32 UTC ya make is running... (failed tests rerun, try 3)
🟡 2025-06-23 15:18:01 UTC Some tests failed, follow the links below. This fail is not in blocking policy yet

Test history | Ya make output | Test bloat | Test bloat | Test bloat

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
124 (only retried tests) 37 0 7 48 32

🟢 2025-06-23 15:18:09 UTC Build successful.
🟢 2025-06-23 15:18:38 UTC ydbd size 3.7 GiB changed* by +10.6 KiB, which is < 100.0 KiB vs stable-25-1-2: OK

ydbd size dash stable-25-1-2: 002721e merge: a06596d diff diff %
ydbd size 3 927 693 920 Bytes 3 927 704 824 Bytes +10.6 KiB +0.000%
ydbd stripped size 1 373 423 280 Bytes 1 373 426 032 Bytes +2.7 KiB +0.000%

*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation

@galnat galnat requested a review from maximyurchuk June 26, 2025 06:55
@adameat adameat merged commit 885de47 into ydb-platform:stable-25-1-2 Jun 26, 2025
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants