Skip to content

Commit 0fda02e

Browse files
shitouFlechazoW
authored andcommitted
[hotfix-859][core] Fix NPE when NameMapping is empty.
1 parent f2eb609 commit 0fda02e

File tree

3 files changed

+19
-1
lines changed

3 files changed

+19
-1
lines changed

chunjun-connectors/chunjun-connector-doris/src/main/java/com/dtstack/chunjun/connector/doris/sink/DorisSinkFactory.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,9 @@ public DorisSinkFactory(SyncConf syncConf) {
137137
.setLoadProperties(
138138
parameter.getProperties(LOAD_PROPERTIES_KEY, new Properties()))
139139
.setPassword(parameter.getStringVal(PASSWORD_KEY, ""))
140-
.setNameMapped(syncConf.getNameMappingConf() != null)
140+
.setNameMapped(
141+
syncConf.getNameMappingConf() != null
142+
&& !syncConf.getNameMappingConf().isEmpty())
141143
.setWriteMode(
142144
parameter.getStringVal(WRITE_MODE_KEY, DORIS_WRITE_MODE_DEFAULT))
143145
.setUsername(parameter.getStringVal(USER_NAME_KEY))

chunjun-core/src/main/java/com/dtstack/chunjun/mapping/NameMappingConf.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020

2121
package com.dtstack.chunjun.mapping;
2222

23+
import org.apache.commons.lang.StringUtils;
24+
2325
import java.io.Serializable;
2426
import java.util.HashMap;
2527
import java.util.Map;
@@ -83,6 +85,14 @@ public void setSqlConevnt(Boolean sqlConevnt) {
8385
this.sqlConevnt = sqlConevnt;
8486
}
8587

88+
public boolean isEmpty() {
89+
return tableMappings.isEmpty()
90+
&& schemaMappings.isEmpty()
91+
&& fieldMappings.isEmpty()
92+
&& StringUtils.isEmpty(pattern)
93+
&& null == sqlConevnt;
94+
}
95+
8696
@Override
8797
public String toString() {
8898
return new StringJoiner(", ", NameMappingConf.class.getSimpleName() + "[", "]")

chunjun-core/src/main/java/com/dtstack/chunjun/mapping/NameMappingFlatMap.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,13 +43,15 @@ public class NameMappingFlatMap extends RichFlatMapFunction<RowData, RowData> {
4343
private final MappingClient client;
4444
private final DdlConvent source;
4545
private final DdlConvent sink;
46+
private final boolean turnOff;
4647
private final ConventExceptionProcessHandler conventExceptionProcessHandler;
4748

4849
public NameMappingFlatMap(
4950
NameMappingConf conf,
5051
DdlConvent source,
5152
DdlConvent sink,
5253
ConventExceptionProcessHandler conventExceptionProcessHandler) {
54+
this.turnOff = conf == null || conf.isEmpty();
5355
this.client = new MappingClient(conf);
5456
this.source = source;
5557
this.sink = sink;
@@ -59,6 +61,10 @@ public NameMappingFlatMap(
5961

6062
@Override
6163
public void flatMap(RowData value, Collector<RowData> collector) {
64+
if (turnOff) {
65+
collector.collect(value);
66+
return;
67+
}
6268
RowData rowData = client.map(value);
6369
if (rowData instanceof ColumnRowData) {
6470
collector.collect(rowData);

0 commit comments

Comments
 (0)