[HUDI-1749] Clean/Compaction/Rollback command maybe never exit when operation fail (#2752)
This commit is contained in:
@@ -83,6 +83,7 @@ public class SparkMain {
|
|||||||
? SparkUtil.initJavaSparkConf("hoodie-cli-" + command, Option.of(args[1]), Option.of(args[2]))
|
? SparkUtil.initJavaSparkConf("hoodie-cli-" + command, Option.of(args[1]), Option.of(args[2]))
|
||||||
: SparkUtil.initJavaSparkConf("hoodie-cli-" + command);
|
: SparkUtil.initJavaSparkConf("hoodie-cli-" + command);
|
||||||
int returnCode = 0;
|
int returnCode = 0;
|
||||||
|
try {
|
||||||
switch (cmd) {
|
switch (cmd) {
|
||||||
case ROLLBACK:
|
case ROLLBACK:
|
||||||
assert (args.length == 5);
|
assert (args.length == 5);
|
||||||
@@ -199,6 +200,12 @@ public class SparkMain {
|
|||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
} catch (Throwable throwable) {
|
||||||
|
LOG.error("Fail to execute command", throwable);
|
||||||
|
returnCode = -1;
|
||||||
|
} finally {
|
||||||
|
jsc.stop();
|
||||||
|
}
|
||||||
System.exit(returnCode);
|
System.exit(returnCode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -110,6 +110,12 @@ public class HoodieCleaner {
|
|||||||
|
|
||||||
String dirName = new Path(cfg.basePath).getName();
|
String dirName = new Path(cfg.basePath).getName();
|
||||||
JavaSparkContext jssc = UtilHelpers.buildSparkContext("hoodie-cleaner-" + dirName, cfg.sparkMaster);
|
JavaSparkContext jssc = UtilHelpers.buildSparkContext("hoodie-cleaner-" + dirName, cfg.sparkMaster);
|
||||||
|
try {
|
||||||
new HoodieCleaner(cfg, jssc).run();
|
new HoodieCleaner(cfg, jssc).run();
|
||||||
|
} catch (Throwable throwable) {
|
||||||
|
LOG.error("Fail to run cleaning for " + cfg.basePath, throwable);
|
||||||
|
} finally {
|
||||||
|
jssc.stop();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -103,8 +103,14 @@ public class HoodieCompactor {
|
|||||||
System.exit(1);
|
System.exit(1);
|
||||||
}
|
}
|
||||||
final JavaSparkContext jsc = UtilHelpers.buildSparkContext("compactor-" + cfg.tableName, cfg.sparkMaster, cfg.sparkMemory);
|
final JavaSparkContext jsc = UtilHelpers.buildSparkContext("compactor-" + cfg.tableName, cfg.sparkMaster, cfg.sparkMemory);
|
||||||
|
try {
|
||||||
HoodieCompactor compactor = new HoodieCompactor(jsc, cfg);
|
HoodieCompactor compactor = new HoodieCompactor(jsc, cfg);
|
||||||
compactor.compact(cfg.retry);
|
compactor.compact(cfg.retry);
|
||||||
|
} catch (Throwable throwable) {
|
||||||
|
LOG.error("Fail to run compaction for " + cfg.tableName, throwable);
|
||||||
|
} finally {
|
||||||
|
jsc.stop();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public int compact(int retry) {
|
public int compact(int retry) {
|
||||||
|
|||||||
Reference in New Issue
Block a user