This is an automated email from the ASF dual-hosted git repository.
vogievetsky pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/druid.git
The following commit(s) were added to refs/heads/master by this push:
new 44ef0f2463e Web console: fix segment view issuing query that does not
work sometimes. (#17940)
44ef0f2463e is described below
commit 44ef0f2463e7eccaac5b8a90bb9e9acccc496992
Author: Vadim Ogievetsky <[email protected]>
AuthorDate: Mon Apr 21 13:43:54 2025 -0700
Web console: fix segment view issuing query that does not work sometimes.
(#17940)
* set inFunctionThreshold high when needed
* less magic number
---
web-console/src/views/segments-view/segments-view.tsx | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/web-console/src/views/segments-view/segments-view.tsx
b/web-console/src/views/segments-view/segments-view.tsx
index ef44b83dc6f..c60911a5e0c 100644
--- a/web-console/src/views/segments-view/segments-view.tsx
+++ b/web-console/src/views/segments-view/segments-view.tsx
@@ -44,7 +44,7 @@ import {
import { AsyncActionDialog } from '../../dialogs';
import { SegmentTableActionDialog } from
'../../dialogs/segments-table-action-dialog/segment-table-action-dialog';
import { ShowValueDialog } from
'../../dialogs/show-value-dialog/show-value-dialog';
-import type { QueryWithContext, ShardSpec } from '../../druid-models';
+import type { QueryContext, QueryWithContext, ShardSpec } from
'../../druid-models';
import { computeSegmentTimeSpan, getDatasourceColor } from
'../../druid-models';
import type { Capabilities, CapabilitiesMode } from '../../helpers';
import {
@@ -319,6 +319,7 @@ export class SegmentsView extends
React.PureComponent<SegmentsViewProps, Segment
const orderByClause = sortedToOrderByClause(effectiveSorted);
let queryParts: string[];
+ const sqlQueryContext: QueryContext = {};
if (groupByInterval) {
const innerQuery = compact([
`SELECT "start", "end"`,
@@ -345,6 +346,9 @@ export class SegmentsView extends
React.PureComponent<SegmentsViewProps, Segment
orderByClause,
`LIMIT ${pageSize * 1000}`,
]);
+
+ // This is needed because there might be an IN filter with
{pageSize} intervals, the number of which exceeds the default
inFunctionThreshold, set it to something greater than the {pageSize}
+ sqlQueryContext.inFunctionThreshold = pageSize + 1;
} else {
queryParts = compact([
base,
@@ -358,7 +362,10 @@ export class SegmentsView extends
React.PureComponent<SegmentsViewProps, Segment
}
const sqlQuery = queryParts.join('\n');
setIntermediateQuery(sqlQuery);
- let result = await queryDruidSql({ query: sqlQuery }, cancelToken);
+ let result = await queryDruidSql(
+ { query: sqlQuery, context: sqlQueryContext },
+ cancelToken,
+ );
if (visibleColumns.shown('Shard type', 'Shard spec')) {
result = result.map(sr => ({
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]