[HUDI-1002] Ignore case when setting incremental mode in hive query (#1715)
This commit is contained in:
@@ -98,7 +98,7 @@ public class HoodieHiveUtil {
|
||||
Map<String, String> tablesModeMap = job.getConfiguration()
|
||||
.getValByRegex(HOODIE_CONSUME_MODE_PATTERN_STRING.pattern());
|
||||
List<String> result = tablesModeMap.entrySet().stream().map(s -> {
|
||||
if (s.getValue().trim().equals(INCREMENTAL_SCAN_MODE)) {
|
||||
if (s.getValue().trim().toUpperCase().equals(INCREMENTAL_SCAN_MODE)) {
|
||||
Matcher matcher = HOODIE_CONSUME_MODE_PATTERN_STRING.matcher(s.getKey());
|
||||
return (!matcher.find() ? null : matcher.group(1));
|
||||
}
|
||||
|
||||
@@ -310,12 +310,14 @@ public class TestHoodieParquetInputFormat {
|
||||
|
||||
@Test
|
||||
public void testGetIncrementalTableNames() throws IOException {
|
||||
String[] expectedincrTables = {"db1.raw_trips", "db2.model_trips"};
|
||||
String[] expectedincrTables = {"db1.raw_trips", "db2.model_trips", "db3.model_trips"};
|
||||
JobConf conf = new JobConf();
|
||||
String incrementalMode1 = String.format(HoodieHiveUtil.HOODIE_CONSUME_MODE_PATTERN, expectedincrTables[0]);
|
||||
conf.set(incrementalMode1, HoodieHiveUtil.INCREMENTAL_SCAN_MODE);
|
||||
String incrementalMode2 = String.format(HoodieHiveUtil.HOODIE_CONSUME_MODE_PATTERN, expectedincrTables[1]);
|
||||
conf.set(incrementalMode2,HoodieHiveUtil.INCREMENTAL_SCAN_MODE);
|
||||
String incrementalMode3 = String.format(HoodieHiveUtil.HOODIE_CONSUME_MODE_PATTERN, "db3.model_trips");
|
||||
conf.set(incrementalMode3, HoodieHiveUtil.INCREMENTAL_SCAN_MODE.toLowerCase());
|
||||
String defaultmode = String.format(HoodieHiveUtil.HOODIE_CONSUME_MODE_PATTERN, "db3.first_trips");
|
||||
conf.set(defaultmode, HoodieHiveUtil.DEFAULT_SCAN_MODE);
|
||||
List<String> actualincrTables = HoodieHiveUtil.getIncrementalTableNames(Job.getInstance(conf));
|
||||
|
||||
Reference in New Issue
Block a user