diff --git a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/java/RabitTracker.java b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/java/RabitTracker.java index a5768d6cd..5b04ac432 100644 --- a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/java/RabitTracker.java +++ b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/java/RabitTracker.java @@ -47,8 +47,15 @@ public class RabitTracker { while ((line = reader.readLine()) != null) { trackerProcessLogger.info(line); } + trackerProcess.get().waitFor(); + trackerProcessLogger.info("Tracker Process ends with exit code " + + trackerProcess.get().exitValue()); } catch (IOException ex) { trackerProcessLogger.error(ex.toString()); + } catch (InterruptedException ie) { + // we should not get here as RabitTracker is accessed in the main thread + ie.printStackTrace(); + logger.error("the RabitTracker thread is terminated unexpectedly"); } } }