This is an automated email from the ASF dual-hosted git repository.

karan 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 cb712f43e5d fix column tree schema changing (#18584)
cb712f43e5d is described below

commit cb712f43e5d3ccb6b11bbe167fa4f49c21ef91f7
Author: Vadim Ogievetsky <[email protected]>
AuthorDate: Mon Oct 6 14:40:34 2025 +0100

    fix column tree schema changing (#18584)
---
 .../src/views/workbench-view/column-tree/column-tree.tsx    | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/web-console/src/views/workbench-view/column-tree/column-tree.tsx 
b/web-console/src/views/workbench-view/column-tree/column-tree.tsx
index 20240386ddb..ece7b275ff4 100644
--- a/web-console/src/views/workbench-view/column-tree/column-tree.tsx
+++ b/web-console/src/views/workbench-view/column-tree/column-tree.tsx
@@ -213,7 +213,8 @@ export function getJoinColumns(parsedQuery: SqlQuery, 
_table: string) {
 export class ColumnTree extends React.PureComponent<ColumnTreeProps, 
ColumnTreeState> {
   static getDerivedStateFromProps(props: ColumnTreeProps, state: 
ColumnTreeState) {
     const { columnMetadata, defaultSchema, defaultWhere, onQueryChange, 
highlightTable } = props;
-    const { searchString, searchMode, expandedTables, prevExpandedTables } = 
state;
+    const { searchString, searchMode, expandedTables, prevExpandedTables, 
selectedTreeIndex } =
+      state;
     const searchHash = computeSearchHash(searchString, searchMode);
 
     if (
@@ -561,22 +562,22 @@ export class ColumnTree extends 
React.PureComponent<ColumnTreeProps, ColumnTreeS
         }),
       );
 
-      let selectedTreeIndex = -1;
-      if (defaultSchema && columnTree) {
-        selectedTreeIndex = columnTree.findIndex(x => {
+      let newSelectedTreeIndex = selectedTreeIndex;
+      if (newSelectedTreeIndex === -1 && defaultSchema && columnTree) {
+        newSelectedTreeIndex = columnTree.findIndex(x => {
           return x.id === defaultSchema;
         });
       }
 
       if (!columnTree) return null;
       const currentSchemaSubtree =
-        columnTree[selectedTreeIndex > -1 ? selectedTreeIndex : 0].childNodes;
+        columnTree[newSelectedTreeIndex > -1 ? newSelectedTreeIndex : 
0].childNodes;
       if (!currentSchemaSubtree) return null;
 
       return {
         prevColumnMetadata: columnMetadata,
         columnTree,
-        selectedTreeIndex,
+        selectedTreeIndex: newSelectedTreeIndex,
         currentSchemaSubtree,
         prevSearchHash: searchHash,
         prevExpandedTables: expandedTables,


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to