This is an automated email from the ASF dual-hosted git repository. haonan pushed a commit to branch cp3131 in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c5d105b34274a97bee6663148af10996a0709adb Author: Haonan <[email protected]> AuthorDate: Sat May 8 16:32:18 2021 +0800 [IOTDB-1316] The importCsv tool should continue inserting if a part of insertion failed (#3131) --- .../main/java/org/apache/iotdb/tool/ImportCsv.java | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/cli/src/main/java/org/apache/iotdb/tool/ImportCsv.java b/cli/src/main/java/org/apache/iotdb/tool/ImportCsv.java index 224d513..d4f22a5 100644 --- a/cli/src/main/java/org/apache/iotdb/tool/ImportCsv.java +++ b/cli/src/main/java/org/apache/iotdb/tool/ImportCsv.java @@ -167,7 +167,16 @@ public class ImportCsv extends AbstractCsvTool { measurementsList.add(devicesToMeasurements.get(device)); } if (lineNumber % 10000 == 0) { - session.insertRecords(devices, times, measurementsList, valuesList); + try { + session.insertRecords(devices, times, measurementsList, valuesList); + } catch (StatementExecutionException e) { + if (e.getMessage().contains("failed to insert measurements")) { + System.out.println("Meet error when insert csv because " + e.getMessage()); + System.out.println("Continue inserting... "); + } else { + throw e; + } + } pb.stepTo(lineNumber + 1L); devices = new ArrayList<>(); times = new ArrayList<>(); @@ -176,7 +185,16 @@ public class ImportCsv extends AbstractCsvTool { } } // TODO change it to insertTablet, now is slow - session.insertRecords(devices, times, measurementsList, valuesList); + try { + session.insertRecords(devices, times, measurementsList, valuesList); + } catch (StatementExecutionException e) { + if (e.getMessage().contains("failed to insert measurements")) { + System.out.println("Meet error when insert csv because " + e.getMessage()); + System.out.println("Continue inserting... "); + } else { + throw e; + } + } System.out.println("Insert csv successfully!"); pb.stepTo(fileLine); } catch (FileNotFoundException e) {
