This is an automated email from the ASF dual-hosted git repository. nic pushed a commit to branch 2.6.x-hadoop3.1 in repository https://gitbox.apache.org/repos/asf/kylin.git
commit e489af530d7de9cfcb6febd9bc2032d2ae29bfa8 Author: nichunen <n...@apache.org> AuthorDate: Mon May 13 18:04:11 2019 +0800 KYLIN-2565 Fix use of HBaseAdmin --- .../java/org/apache/kylin/rest/service/CubeService.java | 12 ++++++++---- .../apache/kylin/storage/hbase/util/StorageCleanUtil.java | 13 +++++++------ 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java b/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java index 219d0d2..2fac791 100644 --- a/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java +++ b/server-base/src/main/java/org/apache/kylin/rest/service/CubeService.java @@ -29,7 +29,8 @@ import java.util.Map; import java.util.Set; import org.apache.commons.lang.StringUtils; -import org.apache.hadoop.hbase.client.HBaseAdmin; +import org.apache.hadoop.hbase.client.Admin; +import org.apache.hadoop.hbase.client.Connection; import org.apache.kylin.common.KylinConfig; import org.apache.kylin.common.persistence.RootPersistentEntity; import org.apache.kylin.common.util.CliCommandExecutor; @@ -581,8 +582,9 @@ public class CubeService extends BasicService implements InitializingBean { toDelHDFSPaths.add(JobBuilderSupport.getJobWorkingDir(seg.getConfig().getHdfsWorkingDirectory(), seg.getLastBuildJobID())); } - - StorageCleanUtil.dropHTables(new HBaseAdmin(HBaseConnection.getCurrentHBaseConfiguration()), toDropHTables); + Connection conn = HBaseConnection.get(KylinConfig.getInstanceFromEnv().getStorageUrl()); + Admin hbaseAdmin = conn.getAdmin(); + StorageCleanUtil.dropHTables(hbaseAdmin, toDropHTables); StorageCleanUtil.deleteHDFSPath(HadoopUtil.getWorkingFileSystem(), toDelHDFSPaths); } } @@ -946,7 +948,9 @@ public class CubeService extends BasicService implements InitializingBean { return node; } - /** cube planner services */ + /** + * cube planner services + */ public Map<Long, Long> getRecommendCuboidStatistics(CubeInstance cube, Map<Long, Long> hitFrequencyMap, Map<Long, Map<Long, Pair<Long, Long>>> rollingUpCountSourceMap) throws IOException { aclEvaluate.checkProjectAdminPermission(cube.getProject()); diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/util/StorageCleanUtil.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/util/StorageCleanUtil.java index a1259b8..0cae1e7 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/util/StorageCleanUtil.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/util/StorageCleanUtil.java @@ -21,7 +21,8 @@ package org.apache.kylin.storage.hbase.util; import org.apache.commons.io.IOUtils; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; -import org.apache.hadoop.hbase.client.HBaseAdmin; +import org.apache.hadoop.hbase.TableName; +import org.apache.hadoop.hbase.client.Admin; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,18 +36,18 @@ public class StorageCleanUtil { /** * this method will close hbaseAdmin after finishing the work. */ - public static void dropHTables(final HBaseAdmin hbaseAdmin, List<String> hTables) { + public static void dropHTables(final Admin hbaseAdmin, List<String> hTables) { runSingleThreadTaskQuietly(() -> { try { for (String htable : hTables) { logger.info("Deleting HBase table {}", htable); - if (hbaseAdmin.tableExists(htable)) { - if (hbaseAdmin.isTableEnabled(htable)) { - hbaseAdmin.disableTable(htable); + if (hbaseAdmin.tableExists(TableName.valueOf(htable))) { + if (hbaseAdmin.isTableEnabled(TableName.valueOf(htable))) { + hbaseAdmin.disableTable(TableName.valueOf(htable)); } - hbaseAdmin.deleteTable(htable); + hbaseAdmin.deleteTable(TableName.valueOf(htable)); logger.info("Deleted HBase table {}", htable); } else { logger.info("HBase table {} does not exist.", htable);