This is an automated email from the ASF dual-hosted git repository.
rong pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 4900407d8b1 load-tsfile: Add retry logic for load memory controls
(#12782)
4900407d8b1 is described below
commit 4900407d8b11fd35cf4c85cdda5c2333fb482915
Author: Steve Yurong Su <[email protected]>
AuthorDate: Fri Jun 21 15:55:23 2024 +0800
load-tsfile: Add retry logic for load memory controls (#12782)
---
.../cli/src/main/java/org/apache/iotdb/tool/ImportTsFile.java | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git
a/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ImportTsFile.java
b/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ImportTsFile.java
index e0f1a906aca..15cdd907f8b 100644
--- a/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ImportTsFile.java
+++ b/iotdb-client/cli/src/main/java/org/apache/iotdb/tool/ImportTsFile.java
@@ -208,7 +208,7 @@ public class ImportTsFile extends AbstractTsFileTool {
ioTPrinter.println(
"Successfully load "
+ loadFileSuccessfulNum.sum()
- + " file(s) (--on_success operation(s): "
+ + " tsfile(s) (--on_success operation(s): "
+ processingLoadSuccessfulFileSuccessfulNum.sum()
+ " succeed, "
+ (loadFileSuccessfulNum.sum() -
processingLoadSuccessfulFileSuccessfulNum.sum())
@@ -386,6 +386,7 @@ public class ImportTsFile extends AbstractTsFileTool {
try {
sessionPool.executeNonQueryStatement(sql);
+
loadFileSuccessfulNum.increment();
ioTPrinter.println("Imported [ " + filePath + " ] file
successfully!");
@@ -401,6 +402,14 @@ public class ImportTsFile extends AbstractTsFileTool {
+ processSuccessException.getMessage());
}
} catch (Exception e) {
+ // Reject because of memory controls, do retry later
+ if (Objects.nonNull(e.getMessage()) &&
e.getMessage().contains("memory")) {
+ ioTPrinter.println(
+ "Rejecting file [ " + filePath + " ] due to memory
constraints, will retry later.");
+ tsfileQueue.put(filePath);
+ continue;
+ }
+
loadFileFailedNum.increment();
ioTPrinter.println("Failed to import [ " + filePath + " ] file: " +
e.getMessage());