Repository: spark Updated Branches: refs/heads/master bbad4cb48 -> acef843f6
[SPARK-15975] Fix improper Popen retcode code handling in dev/run-tests In the `dev/run-tests.py` script we check a `Popen.retcode` for success using `retcode > 0`, but this is subtlety wrong because Popen's return code will be negative if the child process was terminated by a signal: https://docs.python.org/2/library/subprocess.html#subprocess.Popen.returncode In order to properly handle signals, we should change this to check `retcode != 0` instead. Author: Josh Rosen <joshro...@databricks.com> Closes #13692 from JoshRosen/dev-run-tests-return-code-handling. Project: http://git-wip-us.apache.org/repos/asf/spark/repo Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/acef843f Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/acef843f Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/acef843f Branch: refs/heads/master Commit: acef843f67e770f0a2709fb3fbd1a53c200b2bc5 Parents: bbad4cb Author: Josh Rosen <joshro...@databricks.com> Authored: Thu Jun 16 14:18:58 2016 -0700 Committer: Andrew Or <and...@databricks.com> Committed: Thu Jun 16 14:18:58 2016 -0700 ---------------------------------------------------------------------- dev/run-tests.py | 2 +- dev/sparktestsupport/shellutils.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/spark/blob/acef843f/dev/run-tests.py ---------------------------------------------------------------------- diff --git a/dev/run-tests.py b/dev/run-tests.py index dcf1be9..930d7f8 100755 --- a/dev/run-tests.py +++ b/dev/run-tests.py @@ -294,7 +294,7 @@ def exec_sbt(sbt_args=()): print(line, end='') retcode = sbt_proc.wait() - if retcode > 0: + if retcode != 0: exit_from_command_with_retcode(sbt_cmd, retcode) http://git-wip-us.apache.org/repos/asf/spark/blob/acef843f/dev/sparktestsupport/shellutils.py ---------------------------------------------------------------------- diff --git a/dev/sparktestsupport/shellutils.py b/dev/sparktestsupport/shellutils.py index d280e79..05af871 100644 --- a/dev/sparktestsupport/shellutils.py +++ b/dev/sparktestsupport/shellutils.py @@ -53,7 +53,10 @@ else: def exit_from_command_with_retcode(cmd, retcode): - print("[error] running", ' '.join(cmd), "; received return code", retcode) + if retcode < 0: + print("[error] running", ' '.join(cmd), "; process was terminated by signal", -retcode) + else: + print("[error] running", ' '.join(cmd), "; received return code", retcode) sys.exit(int(os.environ.get("CURRENT_BLOCK", 255))) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org For additional commands, e-mail: commits-h...@spark.apache.org