in spark-load/spark-load-core/src/main/java/org/apache/doris/SparkLoadRunner.java [64:115]
public static void main(String[] args) {
if (StringUtils.isBlank(SPARK_LOAD_HOME)) {
System.err.println("env SPARK_LOAD_HOME is not set.");
System.exit(-1);
}
CommandLineOptions cmdOptions = parseArgs(args);
if (Strings.isNullOrEmpty(cmdOptions.getConfigPath())) {
System.err.println("config path is empty");
System.exit(-1);
}
JobConfig jobConfig = readConfig(cmdOptions.getConfigPath());
try {
preprocessConfig(jobConfig);
checkConfig(jobConfig);
} catch (IllegalArgumentException e) {
System.err.println("check config failed, msg: " + ExceptionUtils.getStackTrace(e));
System.exit(-1);
}
Loader loader = LoaderFactory.createLoader(jobConfig, cmdOptions.getRecovery());
Runtime.getRuntime().addShutdownHook(new Thread(() -> {
LOG.info("Shutting down...");
loader.cancel();
}));
try {
loader.prepare();
do {
if (loader instanceof Recoverable) {
if (((Recoverable) loader).canBeRecovered()) {
LOG.info("recovery check passed, start prepare recovery.");
((Recoverable) loader).prepareRecover();
break;
}
}
loader.execute();
} while (false);
loader.afterFinished();
// loader.cancel();
} catch (Exception e) {
loader.afterFailed(e);
LOG.error("start load failed", e);
System.err.println("start load failed, exit.");
System.exit(-1);
}
}