1
0

[HUDI-1412] Make HoodieWriteConfig support setting different default … (#2278)

* [HUDI-1412] Make HoodieWriteConfig support setting different default value according to engine type
This commit is contained in:
wangxianghu
2020-12-07 09:29:53 +08:00
committed by GitHub
parent 319b7a58e4
commit de2fbeac33
5 changed files with 105 additions and 11 deletions

View File

@@ -18,8 +18,10 @@
package org.apache.hudi.config;
import org.apache.hudi.client.common.EngineType;
import org.apache.hudi.config.HoodieWriteConfig.Builder;
import org.apache.hudi.index.HoodieIndex;
import org.junit.jupiter.api.Test;
import java.io.ByteArrayInputStream;
@@ -54,6 +56,21 @@ public class TestHoodieWriteConfig {
assertEquals(2, config.getMinCommitsToKeep());
}
@Test
public void testDefaultIndexAccordingToEngineType() {
// default bloom
HoodieWriteConfig writeConfig = HoodieWriteConfig.newBuilder().withPath("/tmp").build();
assertEquals(HoodieIndex.IndexType.BLOOM, writeConfig.getIndexType());
// spark default bloom
writeConfig = HoodieWriteConfig.newBuilder().withEngineType(EngineType.SPARK).withPath("/tmp").build();
assertEquals(HoodieIndex.IndexType.BLOOM, writeConfig.getIndexType());
// flink default in-memory
writeConfig = HoodieWriteConfig.newBuilder().withEngineType(EngineType.FLINK).withPath("/tmp").build();
assertEquals(HoodieIndex.IndexType.INMEMORY, writeConfig.getIndexType());
}
private ByteArrayOutputStream saveParamsIntoOutputStream(Map<String, String> params) throws IOException {
Properties properties = new Properties();
properties.putAll(params);