Skip to content

Commit c42eeee

Browse files
fallback on bad request proxying (#4566)
1 parent 5f22068 commit c42eeee

File tree

3 files changed

+18
-3
lines changed

3 files changed

+18
-3
lines changed

ydb/core/viewer/json_autocomplete.h

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -425,7 +425,12 @@ class TJsonAutocomplete : public TViewerPipeClient<TJsonAutocomplete> {
425425
}
426426

427427
void Handle(TEvViewer::TEvViewerResponse::TPtr& ev) {
428-
ProxyResult = ev.Release()->Release();
428+
if (ev.Get()->Get()->Record.HasAutocompleteResponse()) {
429+
ProxyResult = ev.Release()->Release();
430+
} else {
431+
Direct = true;
432+
SendSchemeCacheRequest(); // fallback
433+
}
429434
RequestDone();
430435
}
431436

ydb/core/viewer/json_query.h

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -420,7 +420,12 @@ class TJsonQuery : public TViewerPipeClient<TJsonQuery> {
420420
}
421421

422422
void HandleReply(TEvViewer::TEvViewerResponse::TPtr& ev) {
423-
Handle(*(ev.Get()->Get()->Record.MutableQueryResponse()));
423+
auto& record = ev.Get()->Get()->Record;
424+
if (record.HasQueryResponse()) {
425+
Handle(*(ev.Get()->Get()->Record.MutableQueryResponse()));
426+
} else {
427+
SendKpqProxyRequest(); // fallback
428+
}
424429
}
425430

426431
void HandleReply(NKqp::TEvKqp::TEvAbortExecution::TPtr& ev) {

ydb/core/viewer/json_render.h

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,12 @@ class TJsonRender : public TViewerPipeClient<TJsonRender> {
254254
}
255255

256256
void Handle(TEvViewer::TEvViewerResponse::TPtr& ev) {
257-
HandleRenderResponse(*(ev.Get()->Get()->Record.MutableRenderResponse()));
257+
auto& record = ev.Get()->Get()->Record;
258+
if (record.HasRenderResponse()) {
259+
HandleRenderResponse(*(record.MutableRenderResponse()));
260+
} else {
261+
SendGraphRequest(); // fallback
262+
}
258263
}
259264

260265
void HandleTimeout() {

0 commit comments

Comments
 (0)