summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwangwei <[email protected]>2023-02-24 11:12:40 +0800
committerwangwei <[email protected]>2023-02-24 11:12:55 +0800
commit28f5c5a5529c8635829ce5c39e9cea34748b512c (patch)
tree8baa7f1f78593e8dd89ad7c4e8e6e372e0ad1c21
parent2d037d3f9ee4f34b79b3bf0dae44b88e098e0369 (diff)
fix(364 field discovery): TSG-13922 Field Discovery 任务中包含重复字段导致统计结果异常364br-364
-rw-r--r--src/main/java/com/mesalab/services/service/impl/JobServiceImp.java4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/main/java/com/mesalab/services/service/impl/JobServiceImp.java b/src/main/java/com/mesalab/services/service/impl/JobServiceImp.java
index 373184fc..00fa3af9 100644
--- a/src/main/java/com/mesalab/services/service/impl/JobServiceImp.java
+++ b/src/main/java/com/mesalab/services/service/impl/JobServiceImp.java
@@ -101,8 +101,6 @@ public class JobServiceImp implements JobService, EnvironmentAware {
@Override
public BaseResult commitAdHocQuery(HashMap<String, Object> reqBody) {
validateAdHocQuery(reqBody);
- List<String> fields = (List<String>) reqBody.get(JobConfig.KEY_CUSTOM_FIELD_DISCOVERY_FIELDS);
- reqBody.put(JobConfig.KEY_CUSTOM_FIELD_DISCOVERY_FIELDS, fields.stream().distinct().collect(Collectors.toList()));
String id = DigestUtil.md5Hex16(String.valueOf(reqBody.get(JobConfig.KEY_QUERY_TYPE)).toLowerCase()).concat(JobConfig.DELIMIT).concat(DigestUtil.md5Hex16(String.valueOf(reqBody)));
if (isExist(id)) {
log.info("Hoc Job already exist, ID is {}, params is {}", id, JsonMapper.toJsonString(reqBody));
@@ -522,6 +520,8 @@ public class JobServiceImp implements JobService, EnvironmentAware {
private void validateAdHocQuery(HashMap<String, Object> body) {
Object type = body.get(JobConfig.KEY_QUERY_TYPE);
if (JobConfig.FIELD_DISCOVERY.equals(type)) {
+ List<String> fields = (List<String>) body.get(JobConfig.KEY_CUSTOM_FIELD_DISCOVERY_FIELDS);
+ body.put(JobConfig.KEY_CUSTOM_FIELD_DISCOVERY_FIELDS, fields.stream().distinct().collect(Collectors.toList()));
syntaxValidationFieldDiscovery(body);
} else if (JobConfig.STATISTICS.equals(type)) {
syntaxValidationStatistics(body);