From bcad5edf5309d1f551b6e82d6a79e13070e1b13e Mon Sep 17 00:00:00 2001 From: kangkaisen Date: Wed, 13 Jul 2016 17:42:33 +0800 Subject: [PATCH] KYLIN-1884 Reload metadata automatically after migrating cube --- .../kylin/storage/hbase/util/CubeMigrationCLI.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/util/CubeMigrationCLI.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/util/CubeMigrationCLI.java index 32aa4b0..9a83a3f 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/util/CubeMigrationCLI.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/util/CubeMigrationCLI.java @@ -42,6 +42,8 @@ import org.apache.kylin.common.persistence.JsonSerializer; import org.apache.kylin.common.persistence.RawResource; import org.apache.kylin.common.persistence.ResourceStore; import org.apache.kylin.common.persistence.Serializer; +import org.apache.kylin.common.restclient.Broadcaster; +import org.apache.kylin.common.restclient.RestClient; import org.apache.kylin.common.util.Bytes; import org.apache.kylin.common.util.Dictionary; import org.apache.kylin.cube.CubeInstance; @@ -148,6 +150,7 @@ public class CubeMigrationCLI { if (realExecute.equalsIgnoreCase("true")) { doOpts(); checkMigrationSuccess(dstConfig, cubeName, true); + updateMeta(dstConfig); } else { showOpts(); } @@ -547,4 +550,17 @@ public class CubeMigrationCLI { } } } + + private static void updateMeta(KylinConfig config){ + String[] nodes = config.getRestServers(); + for (String node : nodes) { + RestClient restClient = new RestClient(node); + try { + logger.info("update meta cache for " + node); + restClient.wipeCache(Broadcaster.TYPE.ALL.getType(), Broadcaster.EVENT.UPDATE.getType(), "all"); + } catch (IOException e) { + logger.error(e.getMessage()); + } + } + } } -- 2.5.4 (Apple Git-61)