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]

Reply via email to