This is an automated email from the ASF dual-hosted git repository.
xxyu pushed a commit to branch kylin-on-parquet-v2
in repository https://gitbox.apache.org/repos/asf/kylin.git
The following commit(s) were added to refs/heads/kylin-on-parquet-v2 by this
push:
new e719f7b KYLIn-4874 Fix CubeMigrationCLI bug for kylin4
e719f7b is described below
commit e719f7b562f87cb0ecaaca34a4c53c2fe91cecc0
Author: yaqian.zhang <[email protected]>
AuthorDate: Mon Jan 18 11:42:41 2021 +0800
KYLIn-4874 Fix CubeMigrationCLI bug for kylin4
---
.../main/java/org/apache/kylin/common/KylinConfigBase.java | 6 +++---
.../main/java/org/apache/kylin/tool/CubeMigrationCLI.java | 13 ++++++++++++-
2 files changed, 15 insertions(+), 4 deletions(-)
diff --git
a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
index 21f05db..b297806 100644
--- a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
+++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
@@ -2350,16 +2350,16 @@ public abstract class KylinConfigBase implements
Serializable {
}
public String getKylinMetricsSubjectQueryExecution() {
- return getOptional("kylin.metrics.subject-query",
"METRICS_QUERY_EXECUTION") + "_" + getKylinMetricsSubjectSuffix();
+ return getOptional("kylin.metrics.subject-query-execution",
"METRICS_QUERY_EXECUTION") + "_" + getKylinMetricsSubjectSuffix();
}
public String getKylinMetricsSubjectQuerySparkJob() {
- return getOptional("kylin.metrics.subject-query-cube",
"METRICS_QUERY_SPARK_JOB") + "_"
+ return getOptional("kylin.metrics.subject-query-spark-job",
"METRICS_QUERY_SPARK_JOB") + "_"
+ getKylinMetricsSubjectSuffix();
}
public String getKylinMetricsSubjectQuerySparkStage() {
- return getOptional("kylin.metrics.subject-query-rpc",
"METRICS_QUERY_SPARK_STAGE") + "_"
+ return getOptional("kylin.metrics.subject-query-spark-stage",
"METRICS_QUERY_SPARK_STAGE") + "_"
+ getKylinMetricsSubjectSuffix();
}
diff --git a/tool/src/main/java/org/apache/kylin/tool/CubeMigrationCLI.java
b/tool/src/main/java/org/apache/kylin/tool/CubeMigrationCLI.java
index 550da0c..8a18f25 100644
--- a/tool/src/main/java/org/apache/kylin/tool/CubeMigrationCLI.java
+++ b/tool/src/main/java/org/apache/kylin/tool/CubeMigrationCLI.java
@@ -54,6 +54,7 @@ import org.apache.kylin.metadata.model.SegmentStatusEnum;
import org.apache.kylin.metadata.model.TableDesc;
import org.apache.kylin.metadata.model.TableRef;
import org.apache.kylin.metadata.model.TableExtDesc;
+import org.apache.kylin.metadata.model.DataModelManager;
import org.apache.kylin.metadata.project.ProjectInstance;
import org.apache.kylin.metadata.realization.RealizationStatusEnum;
import org.apache.kylin.metadata.realization.RealizationType;
@@ -403,6 +404,16 @@ public class CubeMigrationCLI extends AbstractApplication {
logger.info("Item: {} doesn't exist, ignore it.", item);
break;
}
+ // dataModel's project maybe be different with new project.
+ if
(item.startsWith(ResourceStore.DATA_MODEL_DESC_RESOURCE_ROOT)) {
+ DataModelDesc dataModelDesc = srcStore.getResource(item,
DataModelManager.getInstance(srcConfig).getDataModelSerializer());
+ if (dataModelDesc != null &&
dataModelDesc.getProjectName() != null &&
!dataModelDesc.getProjectName().equals(dstProject)) {
+ dataModelDesc.setProjectName(dstProject);
+ dstStore.putResource(item, dataModelDesc,
res.lastModified(),
DataModelManager.getInstance(srcConfig).getDataModelSerializer());
+ logger.info("Item " + item + " is copied.");
+ break;
+ }
+ }
dstStore.putResource(renameTableWithinProject(item),
res.content(), res.lastModified());
res.content().close();
logger.info("Item " + item + " is copied");
@@ -527,7 +538,7 @@ public class CubeMigrationCLI extends AbstractApplication {
}
private String renameTableWithinProject(String srcItem) {
- if (dstProject != null &&
srcItem.contains(ResourceStore.TABLE_RESOURCE_ROOT)) {
+ if (dstProject != null &&
srcItem.startsWith(ResourceStore.TABLE_RESOURCE_ROOT)) {
String tableIdentity =
TableDesc.parseResourcePath(srcItem).getTable();
if (srcItem.contains(ResourceStore.TABLE_EXD_RESOURCE_ROOT))
return TableExtDesc.concatResourcePath(tableIdentity,
dstProject);