You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by mo...@apache.org on 2022/11/30 03:55:19 UTC

[doris] branch master updated: [improvement](planner)sort show catalogs result by name (#14684)

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

morningman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new 3ca3af2234 [improvement](planner)sort show catalogs result by name (#14684)
3ca3af2234 is described below

commit 3ca3af2234d314b72074f8c8920e7daa4f8f1e72
Author: Yulei-Yang <yu...@gmail.com>
AuthorDate: Wed Nov 30 11:55:14 2022 +0800

    [improvement](planner)sort show catalogs result by name (#14684)
    
    Result of show databases, show tables, show data are all sorted by name, so make show catalogs behavior same.
---
 .../src/main/java/org/apache/doris/datasource/CatalogMgr.java      | 7 ++++++-
 .../src/test/java/org/apache/doris/datasource/CatalogMgrTest.java  | 4 ++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java
index fbd6a75d2c..75e38f39b8 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java
@@ -303,7 +303,7 @@ public class CatalogMgr implements Writable, GsonPostProcessable {
                     if (Env.getCurrentEnv().getAuth()
                             .checkCtlPriv(ConnectContext.get(), catalog.getName(), PrivPredicate.SHOW)) {
                         String name = catalog.getName();
-                        // Filter dbname
+                        // Filter catalog name
                         if (matcher != null && !matcher.match(name)) {
                             continue;
                         }
@@ -313,6 +313,11 @@ public class CatalogMgr implements Writable, GsonPostProcessable {
                         row.add(catalog.getType());
                         rows.add(row);
                     }
+
+                    // sort by catalog name
+                    rows.sort((x, y) -> {
+                        return x.get(1).compareTo(y.get(1));
+                    });
                 }
             } else {
                 if (!nameToCatalog.containsKey(showStmt.getCatalogName())) {
diff --git a/fe/fe-core/src/test/java/org/apache/doris/datasource/CatalogMgrTest.java b/fe/fe-core/src/test/java/org/apache/doris/datasource/CatalogMgrTest.java
index 0c62ea4c6f..781d94b491 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/datasource/CatalogMgrTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/datasource/CatalogMgrTest.java
@@ -158,6 +158,10 @@ public class CatalogMgrTest extends TestWithFeService {
         ShowResultSet showResultSet = mgr.showCatalogs(showStmt);
         Assertions.assertEquals(5, showResultSet.getResultRows().size());
 
+        //test result order
+        Assertions.assertEquals("es", showResultSet.getResultRows().get(0).get(1));
+        Assertions.assertEquals("internal", showResultSet.getResultRows().get(4).get(1));
+
         showCatalogSql = "SHOW CATALOGS LIKE 'hms%'";
         showStmt = (ShowCatalogStmt) parseAndAnalyzeStmt(showCatalogSql);
         showResultSet = mgr.showCatalogs(showStmt);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org