You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@inlong.apache.org by do...@apache.org on 2022/03/23 11:36:44 UTC
[incubator-inlong] branch master updated: [INLONG-3332][Sort-Standalone] Fix NP and data race in ClsSink (#3333)
This is an automated email from the ASF dual-hosted git repository.
dockerzhang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-inlong.git
The following commit(s) were added to refs/heads/master by this push:
new 244d105 [INLONG-3332][Sort-Standalone] Fix NP and data race in ClsSink (#3333)
244d105 is described below
commit 244d1052438189151c44de2ffa51dd90ff29dbb5
Author: vernedeng <de...@pku.edu.cn>
AuthorDate: Wed Mar 23 19:36:40 2022 +0800
[INLONG-3332][Sort-Standalone] Fix NP and data race in ClsSink (#3333)
---
.../main/java/org/apache/inlong/sort/standalone/sink/cls/ClsSink.java | 3 ++-
.../org/apache/inlong/sort/standalone/sink/cls/ClsSinkContext.java | 4 +++-
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/sink/cls/ClsSink.java b/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/sink/cls/ClsSink.java
index cc1e976..4f443ed 100644
--- a/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/sink/cls/ClsSink.java
+++ b/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/sink/cls/ClsSink.java
@@ -24,6 +24,7 @@ import org.apache.flume.sink.AbstractSink;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -38,7 +39,7 @@ public class ClsSink extends AbstractSink implements Configurable {
private Context parentContext;
private ClsSinkContext context;
- private List<ClsChannelWorker> workers;
+ private List<ClsChannelWorker> workers = new ArrayList<>();
/**
* Start {@link ClsChannelWorker}.
diff --git a/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/sink/cls/ClsSinkContext.java b/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/sink/cls/ClsSinkContext.java
index aa05fba..e23f3e3 100644
--- a/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/sink/cls/ClsSinkContext.java
+++ b/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/sink/cls/ClsSinkContext.java
@@ -38,6 +38,7 @@ import org.apache.inlong.sort.standalone.utils.Constants;
import org.apache.inlong.sort.standalone.utils.InlongLoggerFactory;
import org.slf4j.Logger;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -71,7 +72,7 @@ public class ClsSinkContext extends SinkContext {
private int keywordMaxLength = DEFAULT_KEYWORD_MAX_LENGTH;
private final Map<String, AsyncProducerClient> clientMap;
- private List<AsyncProducerClient> deletingClients;
+ private List<AsyncProducerClient> deletingClients = new ArrayList<>();
private Context sinkContext;
private Map<String, ClsIdConfig> idConfigMap = new ConcurrentHashMap<>();
private IEvent2LogItemHandler event2LogItemHandler;
@@ -147,6 +148,7 @@ public class ClsSinkContext extends SinkContext {
String uid = InlongId.generateUid(inlongGroupId, inlongStreamId);
String jsonIdConfig = JSON.toJSONString(idParam);
ClsIdConfig idConfig = JSON.parseObject(jsonIdConfig, ClsIdConfig.class);
+ idConfig.getFieldList();
newIdConfigMap.put(uid, idConfig);
}
this.idConfigMap = newIdConfigMap;