diff --git a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/task/AbstractCommandExecutor.java b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/task/AbstractCommandExecutor.java index da5c0e6980..bf306e51bc 100644 --- a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/task/AbstractCommandExecutor.java +++ b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/worker/task/AbstractCommandExecutor.java @@ -348,12 +348,14 @@ public abstract class AbstractCommandExecutor { long lastFlushTime = System.currentTimeMillis(); - while ((line = inReader.readLine()) != null) { + while ((line = inReader.readLine()) != null || logBuffer.size()>0) { if (line.startsWith("${setValue(")) { varPool.append(line.substring("${setValue(".length(), line.length() - 2)); varPool.append("$VarPool$"); } else { + if(null != line){ logBuffer.add(line); + } lastFlushTime = flush(lastFlushTime); } } @@ -560,4 +562,4 @@ public abstract class AbstractCommandExecutor { protected abstract String commandInterpreter(); protected abstract void createCommandFileIfNotExists(String execCommand, String commandFile) throws IOException; -} \ No newline at end of file +}