From 329f7b28cf826ca1b8ba3826e5208345169611e0 Mon Sep 17 00:00:00 2001 From: caoliang <245623257@qq.com> Date: Thu, 11 Jan 2024 12:28:30 +0800 Subject: [PATCH] Supports importing bitmap and other types --- .../writer/selectdbwriter/SelectdbCopyIntoObserver.java | 4 ++-- .../datax/plugin/writer/selectdbwriter/SelectdbUtil.java | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/selectdbwriter/src/main/java/com/alibaba/datax/plugin/writer/selectdbwriter/SelectdbCopyIntoObserver.java b/selectdbwriter/src/main/java/com/alibaba/datax/plugin/writer/selectdbwriter/SelectdbCopyIntoObserver.java index c9228b22..bbc52e9e 100644 --- a/selectdbwriter/src/main/java/com/alibaba/datax/plugin/writer/selectdbwriter/SelectdbCopyIntoObserver.java +++ b/selectdbwriter/src/main/java/com/alibaba/datax/plugin/writer/selectdbwriter/SelectdbCopyIntoObserver.java @@ -40,7 +40,7 @@ public class SelectdbCopyIntoObserver { private CloseableHttpClient httpClient; private static final String UPLOAD_URL_PATTERN = "%s/copy/upload"; private static final String COMMIT_PATTERN = "%s/copy/query"; - private static final Pattern COMMITTED_PATTERN = Pattern.compile("errCode = 2, detailMessage = No files can be copied, matched (\\d+) files, " + "filtered (\\d+) files because files may be loading or loaded"); + private static final Pattern COMMITTED_PATTERN = Pattern.compile("errCode = 2, detailMessage = No files can be copied.*"); public SelectdbCopyIntoObserver(Keys options) { @@ -202,7 +202,7 @@ public class SelectdbCopyIntoObserver { return false; }else{ Map result = dataResp.getResult(); - if(!result.get("state").equals("FINISHED") && !isCommitted(result.get("msg"))){ + if(SelectdbUtil.isNullOrEmpty(result) || !result.get("state").equals("FINISHED") && !isCommitted(result.get("msg"))){ LOG.error("copy into load failed, reason:{}", loadResult); return false; }else{ diff --git a/selectdbwriter/src/main/java/com/alibaba/datax/plugin/writer/selectdbwriter/SelectdbUtil.java b/selectdbwriter/src/main/java/com/alibaba/datax/plugin/writer/selectdbwriter/SelectdbUtil.java index 6cfcc8bf..3e7961e8 100644 --- a/selectdbwriter/src/main/java/com/alibaba/datax/plugin/writer/selectdbwriter/SelectdbUtil.java +++ b/selectdbwriter/src/main/java/com/alibaba/datax/plugin/writer/selectdbwriter/SelectdbUtil.java @@ -15,6 +15,7 @@ import java.sql.Statement; import java.util.ArrayList; import java.util.Collections; import java.util.List; +import java.util.Map; /** * jdbc util @@ -110,4 +111,8 @@ public class SelectdbUtil { return reference; } } + + public static boolean isNullOrEmpty(Map map) { + return map == null || map.isEmpty(); + } }