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));
}