KYLIN-2323 add unloaded tables
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/5bd47a1a Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/5bd47a1a Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/5bd47a1a Branch: refs/heads/KYLIN-2323 Commit: 5bd47a1a532ea7c8c72202e9c708611c08372fcb Parents: f01aad2 Author: Billy Liu <[email protected]> Authored: Wed Dec 28 22:20:01 2016 +0800 Committer: Billy Liu <[email protected]> Committed: Wed Dec 28 22:20:01 2016 +0800 ---------------------------------------------------------------------- .../kylin/rest/controller/TableController.java | 11 +++++++++++ .../apache/kylin/rest/service/TableService.java | 17 +++++++++-------- 2 files changed, 20 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/5bd47a1a/server-base/src/main/java/org/apache/kylin/rest/controller/TableController.java ---------------------------------------------------------------------- diff --git a/server-base/src/main/java/org/apache/kylin/rest/controller/TableController.java b/server-base/src/main/java/org/apache/kylin/rest/controller/TableController.java index 964cd4c..eed5413 100644 --- a/server-base/src/main/java/org/apache/kylin/rest/controller/TableController.java +++ b/server-base/src/main/java/org/apache/kylin/rest/controller/TableController.java @@ -20,6 +20,7 @@ package org.apache.kylin.rest.controller; import java.io.IOException; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; @@ -97,6 +98,16 @@ public class TableController extends BasicController { try { String[] loaded = tableService.loadHiveTablesToProject(tableNames, project); result.put("result.loaded", loaded); + Set<String> allTables = new HashSet<String>(); + for (String tableName : tableNames) { + allTables.add(tableService.normalizeHiveTableName(tableName)); + } + for (String loadedTableName : loaded) { + allTables.remove(loadedTableName); + } + String[] unloaded = new String[allTables.size()]; + allTables.toArray(unloaded); + result.put("result.unloaded", unloaded); if (request.isCalculate()) { tableService.calculateCardinalityIfNotPresent(loaded, submitter); } http://git-wip-us.apache.org/repos/asf/kylin/blob/5bd47a1a/server-base/src/main/java/org/apache/kylin/rest/service/TableService.java ---------------------------------------------------------------------- diff --git a/server-base/src/main/java/org/apache/kylin/rest/service/TableService.java b/server-base/src/main/java/org/apache/kylin/rest/service/TableService.java index 8868bff..461800e 100644 --- a/server-base/src/main/java/org/apache/kylin/rest/service/TableService.java +++ b/server-base/src/main/java/org/apache/kylin/rest/service/TableService.java @@ -101,8 +101,7 @@ public class TableService extends BasicService { @PreAuthorize(Constant.ACCESS_HAS_ROLE_ADMIN) private void unLoadHiveTable(String tableName) throws IOException { - String[] dbTableName = HadoopUtil.parseHiveTableName(tableName); - tableName = dbTableName[0] + "." + dbTableName[1]; + tableName = normalizeHiveTableName(tableName); HiveSourceTableLoader.unLoadHiveTable(tableName.toUpperCase()); } @@ -113,8 +112,7 @@ public class TableService extends BasicService { @PreAuthorize(Constant.ACCESS_HAS_ROLE_ADMIN) private void removeTableFromProject(String tableName, String projectName) throws IOException { - String[] dbTableName = HadoopUtil.parseHiveTableName(tableName); - tableName = dbTableName[0] + "." + dbTableName[1]; + tableName = normalizeHiveTableName(tableName); getProjectManager().removeTableDescFromProject(tableName, projectName); } @@ -130,8 +128,7 @@ public class TableService extends BasicService { int tableType = 0; //remove streaming info - String[] dbTableName = HadoopUtil.parseHiveTableName(tableName); - tableName = dbTableName[0] + "." + dbTableName[1]; + tableName = normalizeHiveTableName(tableName); TableDesc desc = getMetadataManager().getTableDesc(tableName); if (desc == null) return false; @@ -276,8 +273,7 @@ public class TableService extends BasicService { */ @PreAuthorize(Constant.ACCESS_HAS_ROLE_MODELER + " or " + Constant.ACCESS_HAS_ROLE_ADMIN) public void calculateCardinality(String tableName, String submitter) throws IOException { - String[] dbTableName = HadoopUtil.parseHiveTableName(tableName); - tableName = dbTableName[0] + "." + dbTableName[1]; + tableName = normalizeHiveTableName(tableName); TableDesc table = getMetadataManager().getTableDesc(tableName); final TableExtDesc tableExt = getMetadataManager().getTableExt(tableName); if (table == null) { @@ -314,4 +310,9 @@ public class TableService extends BasicService { getExecutableManager().addJob(job); } + + public String normalizeHiveTableName(String tableName){ + String[] dbTableName = HadoopUtil.parseHiveTableName(tableName); + return dbTableName[0] + "." + dbTableName[1]; + } }
