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

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


The following commit(s) were added to refs/heads/master by this push:
     new dcfbc364a [AMORO-3021]: AMS First Time Async Load External Catalog 
Select OptimizingStatus Have NPE (#3021)  (#3022)
dcfbc364a is described below

commit dcfbc364af5b5d454156ace0c34cda2c82a52dbe
Author: ConradJam <[email protected]>
AuthorDate: Wed Jul 10 22:27:48 2024 +0800

    [AMORO-3021]: AMS First Time Async Load External Catalog Select 
OptimizingStatus Have NPE (#3021)  (#3022)
    
    [AMORO-3021]: AMS First Time Async Load External Catalog Select 
OptimizingStatus Have NPE (#3021)
    
    Co-authored-by: ConradJam <[email protected]>
---
 .../server/dashboard/controller/TableController.java  | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git 
a/amoro-ams/amoro-ams-server/src/main/java/org/apache/amoro/server/dashboard/controller/TableController.java
 
b/amoro-ams/amoro-ams-server/src/main/java/org/apache/amoro/server/dashboard/controller/TableController.java
index 30c367f1f..ae23a32b7 100644
--- 
a/amoro-ams/amoro-ams-server/src/main/java/org/apache/amoro/server/dashboard/controller/TableController.java
+++ 
b/amoro-ams/amoro-ams-server/src/main/java/org/apache/amoro/server/dashboard/controller/TableController.java
@@ -57,6 +57,7 @@ import org.apache.amoro.server.dashboard.response.OkResponse;
 import org.apache.amoro.server.dashboard.response.PageResult;
 import org.apache.amoro.server.dashboard.utils.AmsUtil;
 import org.apache.amoro.server.dashboard.utils.CommonUtil;
+import org.apache.amoro.server.optimizing.OptimizingStatus;
 import org.apache.amoro.server.table.TableRuntime;
 import org.apache.amoro.server.table.TableService;
 import org.apache.amoro.shade.guava32.com.google.common.base.Function;
@@ -80,6 +81,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
+import java.util.Optional;
 import java.util.Set;
 import java.util.TreeMap;
 import java.util.concurrent.ConcurrentHashMap;
@@ -137,13 +139,18 @@ public class TableController {
     ServerTableMeta serverTableMeta =
         tableDescriptor.getTableDetail(
             TableIdentifier.of(catalog, database, 
tableName).buildTableIdentifier());
-    ServerTableIdentifier serverTableIdentifier =
-        tableService.getServerTableIdentifier(
-            TableIdentifier.of(catalog, database, 
tableName).buildTableIdentifier());
     Map<String, Object> tableSummary = serverTableMeta.getTableSummary();
-    tableSummary.put(
-        "optimizingStatus", 
tableService.getRuntime(serverTableIdentifier).getOptimizingStatus());
-
+    Optional<ServerTableIdentifier> serverTableIdentifier =
+        Optional.ofNullable(
+            tableService.getServerTableIdentifier(
+                TableIdentifier.of(catalog, database, 
tableName).buildTableIdentifier()));
+    if (serverTableIdentifier.isPresent()) {
+      tableSummary.put(
+          "optimizingStatus",
+          
tableService.getRuntime(serverTableIdentifier.get()).getOptimizingStatus());
+    } else {
+      tableSummary.put("optimizingStatus", OptimizingStatus.IDLE);
+    }
     ctx.json(OkResponse.of(serverTableMeta));
   }
 

Reply via email to