Skip to content

Commit

Permalink
KYLIN-4485 Minor fix
Browse files Browse the repository at this point in the history
  • Loading branch information
kyotoYaho committed Jun 10, 2020
1 parent d0d4ff3 commit aa42d8c
Show file tree
Hide file tree
Showing 8 changed files with 38 additions and 35 deletions.
23 changes: 0 additions & 23 deletions core-common/src/main/java/org/apache/kylin/common/KConstants.java

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,15 @@ final protected String[] getOptionalStringArray(String prop, String[] dft) {
}
}

final protected String[] getRawStringArray(String prop, String[] dft) {
final String property = properties.getProperty(prop);
if (!StringUtils.isBlank(property)) {
return property.split("\\s*,\\s*");
} else {
return dft;
}
}

final protected int[] getOptionalIntArray(String prop, String[] dft) {
String[] strArray = getOptionalStringArray(prop, dft);
int[] intArray = new int[strArray.length];
Expand Down Expand Up @@ -618,7 +627,7 @@ public String getCuboidScheduler() {
}

public boolean isRowKeyEncodingAutoConvert() {
return Boolean.parseBoolean(getOptional("kylin.cube.kylin.cube.rowkey-encoding-auto-convert", "true"));
return Boolean.parseBoolean(getOptional("kylin.cube.rowkey-encoding-auto-convert", "true"));
}

public String getSegmentAdvisor() {
Expand Down Expand Up @@ -2038,6 +2047,10 @@ public String[] getRestServers() {
return getOptionalStringArray("kylin.server.cluster-servers", new String[0]);
}

public String[] getRawRestServers() {
return getRawStringArray("kylin.server.cluster-servers", new String[0]);
}

public String getServerRestAddress() {
return getOptional("kylin.server.host-address", "localhost:7070");
}
Expand Down Expand Up @@ -2141,6 +2154,7 @@ public boolean isWebDashboardEnabled() {

public String getPropertiesWhiteList() {
return getOptional("kylin.web.properties.whitelist", "kylin.web.timezone,kylin.query.cache-enabled,kylin.env,"
+ "kylin.cube.migration.enabled,"
+ "kylin.web.hive-limit,kylin.storage.default,"
+ "kylin.engine.default,kylin.web.link-hadoop,kylin.web.link-diagnostic,"
+ "kylin.web.contact-mail,kylin.web.help.length,kylin.web.help.0,kylin.web.help.1,kylin.web.help.2,"
Expand Down Expand Up @@ -2258,6 +2272,10 @@ public int printSampleEventRatio(){
// ============================================================================
// CUBE MIGRATION
// ============================================================================
public boolean isMigrationCubeEnabled() {
return Boolean.parseBoolean(getOptional("kylin.cube.migration.enabled", FALSE));
}

public int getMigrationRuleExpansionRateThreshold() {
return Integer.parseInt(getOptional("kylin.cube.migration.expansion-rate", "5"));
}
Expand Down Expand Up @@ -2286,12 +2304,12 @@ public String getMigrationTargetAddress() {
return getOptional("kylin.cube.migration.target-address", "sandbox:80");
}

public String getMigrationEmailSuffix() {
return getOptional("kylin.cube.migration.mail-suffix", "@mail.com");
public String getNotificationMailSuffix() {
return getOptional("kylin.cube.notification-mail-suffix", "@mail.com");
}

public boolean isMigrationApplyQueryLatencyRule() {
return Boolean.parseBoolean(getOptional("kylin.cube.migration.rule-query-latency-enabled", "true"));
return Boolean.parseBoolean(getOptional("kylin.cube.migration.rule-query-latency-enabled", TRUE));
}

// ============================================================================
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -327,7 +327,7 @@ public void onEntityChange(Broadcaster broadcaster, String entity, Event event,

public void reloadTableExtQuietly(String table, String project) {
try (AutoLock lock = srcExtMapLock.lockForWrite()) {
srcExtCrud.reloadQuietly(TableExtDesc.concatResourcePath(table, project));
srcExtCrud.reloadQuietly(TableDesc.makeResourceName(table, project));
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,7 @@ public List<String> getCubeAdmins(CubeInstance cubeInstance) {
logger.info("ProjectUUID : " + prjInstance.getUuid());
Acl acl = accessService.getAcl(ae);

String mailSuffix = KylinConfig.getInstanceFromEnv().getMigrationEmailSuffix();
String mailSuffix = KylinConfig.getInstanceFromEnv().getNotificationMailSuffix();
List<String> cubeAdmins = Lists.newArrayList();
if (acl != null) {
for (AccessControlEntry ace : acl.getEntries()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ public void checkHiveTableCompatibility(String prj, TableDesc tableDesc) throws
hiveTableDesc = pair.getFirst();
} catch (Exception e) {
logger.error("Fail to get metadata for hive table {} due to ", tableDesc.getIdentity(), e);
throw new RuntimeException("Fail to get metadata for hive table" + tableDesc.getIdentity());
throw new RuntimeException("Fail to get metadata for hive table " + tableDesc.getIdentity());
}

TableSchemaUpdateChecker.CheckResult result = getSchemaUpdateChecker().allowMigrate(tableDesc, hiveTableDesc);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -645,10 +645,10 @@ private String renameTableWithinProject(String srcItem) {
}

private void updateMeta(KylinConfig config, String projectName, String cubeName, DataModelDesc model) {
String[] nodes = config.getRestServers();
String[] nodes = config.getRawRestServers();
Map<String, String> tableToProjects = new HashMap<>();
for (TableRef tableRef : model.getAllTables()) {
tableToProjects.put(tableRef.getTableIdentity(), tableRef.getTableDesc().getProject());
tableToProjects.put(tableRef.getTableIdentity(), projectName);
}

for (String node : nodes) {
Expand Down
8 changes: 8 additions & 0 deletions webapp/app/js/services/kylinProperties.js
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,14 @@ KylinApp.service('kylinConfig', function (AdminService, $log) {
return false;
}

this.isCubeMigrationEnabled = function(){
var status = this.getProperty("kylin.cube.migration.enabled").trim();
if(status!=='false'){
return true;
}
return false;
}

//deprecated
this.getDeployEnv = function () {
this.deployEnv = this.getProperty("kylin.env");
Expand Down
6 changes: 3 additions & 3 deletions webapp/app/partials/cubes/cubes.html
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@
<li ng-if="cube.status=='DISABLED' && (userService.hasRole('ROLE_ADMIN') || hasPermission('cube',cube, permissions.ADMINISTRATION.mask, permissions.MANAGEMENT.mask))"><a ng-click="startDeleteSegment(cube)">Delete Segment</a></li>
<li ng-if="cube.status=='DISABLED' && (userService.hasRole('ROLE_ADMIN') || hasPermission('cube',cube, permissions.ADMINISTRATION.mask, permissions.MANAGEMENT.mask))"><a ng-click="purge(cube)">Purge</a></li>
<li ng-if="cube.status!='DESCBROKEN' && (userService.hasRole('ROLE_ADMIN') || hasPermission('cube',cube, permissions.ADMINISTRATION.mask, permissions.MANAGEMENT.mask))"><a ng-click="cloneCube(cube)">Clone</a></li>
<li ng-if="cube.status=='READY' && (userService.hasRole('ROLE_ADMIN') || hasPermission(cube, permissions.ADMINISTRATION.mask) || hasPermission(cubeProjectEntity, permissions.ADMINISTRATION.mask))"><a ng-click="startMigrateCube(cube, 0);">Migrate</a></li>
<li ng-if="cube.status=='READY' && kylinConfig.isCubeMigrationEnabled() && (userService.hasRole('ROLE_ADMIN') || hasPermission(cube, permissions.ADMINISTRATION.mask) || hasPermission(cubeProjectEntity, permissions.ADMINISTRATION.mask))"><a ng-click="startMigrateCube(cube, 0);">Migrate</a></li>

</ul>
<ul ng-if="(userService.hasRole('ROLE_ADMIN') || hasPermission('cube', cube, permissions.ADMINISTRATION.mask, permissions.MANAGEMENT.mask, permissions.OPERATION.mask)) && cube.streamingV2 && actionLoaded" class="dropdown-menu" role="menu" style="right:0;left:auto;">
Expand Down Expand Up @@ -132,8 +132,8 @@
<ul class="dropdown-menu" role="menu" style="right:0;left:auto;">
<li ng-if="cube.status!='READY'"><a href="cubes/edit/{{cube.name}}/descriptionjson">Edit CubeDesc</a></li>
<li><a href="cubes/view/{{cube.name}}/instancejson">View Cube</a></li>
<li ng-if="cube.status=='READY' && kylinConfig.getDeployEnv().indexOf('QA') > -1"><a ng-click="startMigrateCube(cube, 1)">Approve Migration</a></li>
<li ng-if="cube.status=='READY' && kylinConfig.getDeployEnv().indexOf('QA') > -1"><a ng-click="startMigrateCube(cube, -1)">Reject Migration</a></li>
<li ng-if="cube.status=='READY' && kylinConfig.isCubeMigrationEnabled()"><a ng-click="startMigrateCube(cube, 1)">Approve Migration</a></li>
<li ng-if="cube.status=='READY' && kylinConfig.isCubeMigrationEnabled()"><a ng-click="startMigrateCube(cube, -1)">Reject Migration</a></li>
</ul>
</div>
</td>
Expand Down

0 comments on commit aa42d8c

Please sign in to comment.