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

YQ-4205 fixed query service config passing into SS #16208

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

GrigoriyPA
Copy link
Collaborator

Changelog entry

YQ-4205 fixed query service config passing into SS

Changelog category

  • Bugfix

Description for reviewers

@GrigoriyPA GrigoriyPA requested a review from a team as a code owner March 25, 2025 12:05
@GrigoriyPA GrigoriyPA requested a review from ijon March 25, 2025 12:06
Copy link

🟢 2025-03-25 12:07:00 UTC The validation of the Pull Request description is successful.

Copy link

github-actions bot commented Mar 25, 2025

2025-03-25 12:08:18 UTC Pre-commit check linux-x86_64-release-asan for 3582517 has started.
2025-03-25 12:08:33 UTC Artifacts will be uploaded here
2025-03-25 12:11:46 UTC ya make is running...
🟡 2025-03-25 13:51:15 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?
14061 13863 0 147 15 36

2025-03-25 13:52:55 UTC ya make is running... (failed tests rerun, try 2)
🟡 2025-03-25 14:08:50 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?
273 (only retried tests) 205 0 34 0 34

2025-03-25 14:09:05 UTC ya make is running... (failed tests rerun, try 3)
🟡 2025-03-25 14:21:11 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) 58 0 33 1 32

🟢 2025-03-25 14:21:20 UTC Build successful.
🟢 2025-03-25 14:21:51 UTC ydbd size 3.8 GiB changed* by +61.6 KiB, which is < 100.0 KiB vs main: OK

ydbd size dash main: 575de06 merge: 3582517 diff diff %
ydbd size 4 083 531 984 Bytes 4 083 595 032 Bytes +61.6 KiB +0.002%
ydbd stripped size 1 410 960 872 Bytes 1 410 983 752 Bytes +22.3 KiB +0.002%

*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 Mar 25, 2025

2025-03-25 12:33:18 UTC Pre-commit check linux-x86_64-relwithdebinfo for 3582517 has started.
2025-03-25 12:33:37 UTC Artifacts will be uploaded here
2025-03-25 12:37:13 UTC ya make is running...
🟡 2025-03-25 14:05:14 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?
28574 25853 0 58 2544 119

2025-03-25 14:07:57 UTC ya make is running... (failed tests rerun, try 2)
🟡 2025-03-25 14:25:03 UTC Some tests failed, follow the links below. Going to retry failed tests...

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

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
281 (only retried tests) 119 0 53 0 109

2025-03-25 14:25:16 UTC ya make is running... (failed tests rerun, try 3)
🔴 2025-03-25 14:35:53 UTC Some tests failed, follow the links below.

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

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
252 (only retried tests) 94 0 53 0 105

🟢 2025-03-25 14:36:03 UTC Build successful.
🟢 2025-03-25 14:36:24 UTC ydbd size 2.2 GiB changed* by +7.1 KiB, which is < 100.0 KiB vs main: OK

ydbd size dash main: 9808a23 merge: 3582517 diff diff %
ydbd size 2 321 300 104 Bytes 2 321 307 400 Bytes +7.1 KiB +0.000%
ydbd stripped size 485 307 456 Bytes 485 308 800 Bytes +1.3 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

uzhastik
uzhastik previously approved these changes Mar 25, 2025
gridnevvvit
gridnevvvit previously approved these changes Mar 25, 2025
@GrigoriyPA GrigoriyPA force-pushed the YQ-4205-fix-query-service-config-passing-into-SS branch from 5d2a52f to 6251501 Compare March 26, 2025 19:15
Copy link

github-actions bot commented Mar 26, 2025

2025-03-26 19:17:08 UTC Pre-commit check linux-x86_64-release-asan for 1ee882c has started.
2025-03-26 19:17:39 UTC Artifacts will be uploaded here
2025-03-26 19:21:23 UTC ya make is running...
🟡 2025-03-26 21:08:27 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?
14097 13991 0 51 17 38

2025-03-26 21:09:37 UTC ya make is running... (failed tests rerun, try 2)
🟡 2025-03-26 21:21:58 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?
149 (only retried tests) 110 0 4 2 33

2025-03-26 21:22:09 UTC ya make is running... (failed tests rerun, try 3)
🟡 2025-03-26 21:34:28 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?
66 (only retried tests) 30 0 4 1 31

🟢 2025-03-26 21:34:35 UTC Build successful.
🟢 2025-03-26 21:35:06 UTC ydbd size 3.8 GiB changed* by +10.5 KiB, which is < 100.0 KiB vs main: OK

ydbd size dash main: 8a9a129 merge: 1ee882c diff diff %
ydbd size 4 111 912 472 Bytes 4 111 923 192 Bytes +10.5 KiB +0.000%
ydbd stripped size 1 420 949 096 Bytes 1 420 952 296 Bytes +3.1 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 Mar 26, 2025

2025-03-26 19:19:11 UTC Pre-commit check linux-x86_64-relwithdebinfo for 1ee882c has started.
2025-03-26 19:19:26 UTC Artifacts will be uploaded here
2025-03-26 19:22:36 UTC ya make is running...
🟡 2025-03-26 20:59:19 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?
28609 25951 0 1 2545 112

2025-03-26 21:01:42 UTC ya make is running... (failed tests rerun, try 2)
🟢 2025-03-26 21:12:47 UTC Tests successful.

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

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
162 (only retried tests) 60 0 0 0 102

🟢 2025-03-26 21:12:54 UTC Build successful.
🟢 2025-03-26 21:13:14 UTC ydbd size 2.2 GiB changed* by +7.2 KiB, which is < 100.0 KiB vs main: OK

ydbd size dash main: 8a9a129 merge: 1ee882c diff diff %
ydbd size 2 343 286 784 Bytes 2 343 294 120 Bytes +7.2 KiB +0.000%
ydbd stripped size 490 037 088 Bytes 490 038 432 Bytes +1.3 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

@@ -244,6 +245,7 @@ struct TAppData {
NKikimrProto::TDataIntegrityTrailsConfig& DataIntegrityTrailsConfig;
NKikimrConfig::TDataErasureConfig& DataErasureConfig;
NKikimrConfig::THealthCheckConfig& HealthCheckConfig;
NKikimrConfig::TQueryServiceConfig& QueryServiceConfig;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

В целом доставлять этот конфиг до schemeshard'а через AppData корректное, но кажется не очень правильное решение. Оно замазывает реальную проблему (возможно в schemeshard'е, а может и нет), которую надо искать и справлять.

Copy link
Collaborator Author

@GrigoriyPA GrigoriyPA Mar 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

В этом PR решается следующая проблема:

  • На старте таблетки SS в ней нету QueryService конфига, по этому все external sources запрещены (так как список AvailableExternalDataSources пуст)
  • Есть определённая задержка, с которой приходит конфиг от config dispatcher (она может быть достаточно большой, чтобы пользователи успели заметить неожиданные ошибки, что external sources отключены, хотя в конфиге они разрешены)
  • Чтобы исправить эту проблему (конфиг должен быть сразу актуальным), пробросил его через AppData

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

schemeshard не переходит в рабочий режим, пока не получит актуальную конфигурацию. И по-идее не может выполнить запрос, пришедший от внешнего с точки зрения ydb клиента на default конфиге.

Мне не понятно, как именно и в какой момент YQ пробует создавать resource-pool — может быть он это делает как-то слишком рано. Может быть, после создания базы YQ должен дожидаться рабочего статуса базы (как это делает ydbcp).
Может быть, в schemeshard есть какая-то недоработка, позволяющая просочиться слишком ранним запросам.

Это решение можно допустить временно, как заплатку, но, по-хорошему, надо искать дальше (и найдя, от этого проброса через AppData отказаться).

@GrigoriyPA GrigoriyPA dismissed stale reviews from gridnevvvit and uzhastik via 31b1d21 March 28, 2025 08:15
Copy link

github-actions bot commented Mar 28, 2025

2025-03-28 08:17:03 UTC Pre-commit check linux-x86_64-relwithdebinfo for 795552a has started.
2025-03-28 08:17:19 UTC Artifacts will be uploaded here
2025-03-28 08:20:34 UTC ya make is running...
🟡 2025-03-28 10:00:52 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?
28626 25967 0 2 2541 116

2025-03-28 10:03:18 UTC ya make is running... (failed tests rerun, try 2)
🟢 2025-03-28 10:17:08 UTC Tests successful.

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

TESTS PASSED ERRORS FAILED SKIPPED MUTED?
164 (only retried tests) 62 0 0 0 102

🟢 2025-03-28 10:17:18 UTC Build successful.
🟢 2025-03-28 10:17:40 UTC ydbd size 2.2 GiB changed* by +7.2 KiB, which is < 100.0 KiB vs main: OK

ydbd size dash main: 201a31f merge: 795552a diff diff %
ydbd size 2 346 850 224 Bytes 2 346 857 640 Bytes +7.2 KiB +0.000%
ydbd stripped size 490 750 720 Bytes 490 752 128 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 Mar 28, 2025

2025-03-28 08:17:04 UTC Pre-commit check linux-x86_64-release-asan for 795552a has started.
2025-03-28 08:17:20 UTC Artifacts will be uploaded here
2025-03-28 08:20:35 UTC ya make is running...
🟡 2025-03-28 10:23:18 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?
14104 13968 0 63 37 36

2025-03-28 10:24:32 UTC ya make is running... (failed tests rerun, try 2)
🟡 2025-03-28 10:40:41 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?
199 (only retried tests) 156 0 9 3 31

2025-03-28 10:40:55 UTC ya make is running... (failed tests rerun, try 3)
🟡 2025-03-28 10:54:35 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?
68 (only retried tests) 33 0 4 1 30

🟢 2025-03-28 10:54:48 UTC Build successful.
🟢 2025-03-28 10:55:23 UTC ydbd size 3.8 GiB changed* by +10.5 KiB, which is < 100.0 KiB vs main: OK

ydbd size dash main: 201a31f merge: 795552a diff diff %
ydbd size 4 118 515 528 Bytes 4 118 526 264 Bytes +10.5 KiB +0.000%
ydbd stripped size 1 423 530 056 Bytes 1 423 533 256 Bytes +3.1 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
Collaborator

@ijon ijon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Замечание про QueryService остаётся, оно касалось всех употреблений имени, а не только вывода в лог.

@@ -244,6 +245,7 @@ struct TAppData {
NKikimrProto::TDataIntegrityTrailsConfig& DataIntegrityTrailsConfig;
NKikimrConfig::TDataErasureConfig& DataErasureConfig;
NKikimrConfig::THealthCheckConfig& HealthCheckConfig;
NKikimrConfig::TQueryServiceConfig& QueryServiceConfig;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

schemeshard не переходит в рабочий режим, пока не получит актуальную конфигурацию. И по-идее не может выполнить запрос, пришедший от внешнего с точки зрения ydb клиента на default конфиге.

Мне не понятно, как именно и в какой момент YQ пробует создавать resource-pool — может быть он это делает как-то слишком рано. Может быть, после создания базы YQ должен дожидаться рабочего статуса базы (как это делает ydbcp).
Может быть, в schemeshard есть какая-то недоработка, позволяющая просочиться слишком ранним запросам.

Это решение можно допустить временно, как заплатку, но, по-хорошему, надо искать дальше (и найдя, от этого проброса через AppData отказаться).

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.

4 participants