[HUDI-3485] Adding scheduler pool configs for async clustering (#5043)
This commit is contained in:
committed by
GitHub
parent
5c1b482a1b
commit
4fed8dd319
@@ -22,14 +22,15 @@ package org.apache.hudi.async;
|
||||
import org.apache.hudi.client.BaseClusterer;
|
||||
import org.apache.hudi.client.BaseHoodieWriteClient;
|
||||
import org.apache.hudi.client.HoodieSparkClusteringClient;
|
||||
import org.apache.hudi.common.engine.HoodieEngineContext;
|
||||
|
||||
/**
|
||||
* Async clustering service for Spark datasource.
|
||||
*/
|
||||
public class SparkAsyncClusteringService extends AsyncClusteringService {
|
||||
|
||||
public SparkAsyncClusteringService(BaseHoodieWriteClient writeClient) {
|
||||
super(writeClient);
|
||||
public SparkAsyncClusteringService(HoodieEngineContext engineContext, BaseHoodieWriteClient writeClient) {
|
||||
super(engineContext, writeClient);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -36,6 +36,8 @@ import org.apache.hudi.data.HoodieJavaRDD;
|
||||
import org.apache.hudi.data.HoodieSparkLongAccumulator;
|
||||
import org.apache.hudi.exception.HoodieException;
|
||||
|
||||
import org.apache.log4j.LogManager;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.apache.spark.api.java.JavaSparkContext;
|
||||
import org.apache.spark.api.java.function.PairFlatMapFunction;
|
||||
import org.apache.spark.sql.SQLContext;
|
||||
@@ -53,6 +55,7 @@ import java.util.stream.Stream;
|
||||
*/
|
||||
public class HoodieSparkEngineContext extends HoodieEngineContext {
|
||||
|
||||
private static final Logger LOG = LogManager.getLogger(HoodieSparkEngineContext.class);
|
||||
private final JavaSparkContext javaSparkContext;
|
||||
private SQLContext sqlContext;
|
||||
|
||||
@@ -158,6 +161,8 @@ public class HoodieSparkEngineContext extends HoodieEngineContext {
|
||||
public void setProperty(EngineProperty key, String value) {
|
||||
if (key == EngineProperty.COMPACTION_POOL_NAME) {
|
||||
javaSparkContext.setLocalProperty("spark.scheduler.pool", value);
|
||||
} else if (key == EngineProperty.CLUSTERING_POOL_NAME) {
|
||||
javaSparkContext.setLocalProperty("spark.scheduler.pool", value);
|
||||
} else {
|
||||
throw new HoodieException("Unknown engine property :" + key);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user