Making IPython PySpark compatible across versions <1.0.0. Also cleaned up '-i' 
option and made IPYTHON_OPTS work


Project: http://git-wip-us.apache.org/repos/asf/incubator-spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-spark/commit/bb5277b1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-spark/tree/bb5277b1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-spark/diff/bb5277b1

Branch: refs/heads/master
Commit: bb5277b10a3797c1beeca01c32b287ee79db831d
Parents: d36ee3b
Author: Nick Pentreath <[email protected]>
Authored: Sun Dec 15 09:39:45 2013 +0200
Committer: Nick Pentreath <[email protected]>
Committed: Sun Dec 15 09:39:45 2013 +0200

----------------------------------------------------------------------
 pyspark | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-spark/blob/bb5277b1/pyspark
----------------------------------------------------------------------
diff --git a/pyspark b/pyspark
index 8b34c98..12cc926 100755
--- a/pyspark
+++ b/pyspark
@@ -59,7 +59,12 @@ if [ -n "$IPYTHON_OPTS" ]; then
 fi
 
 if [[ "$IPYTHON" = "1" ]] ; then
-  exec ipython "$IPYTHON_OPTS" "$@"
+  # IPython <1.0.0 doesn't honor PYTHONSTARTUP, while 1.0.0+ does. 
+  # Hence we clear PYTHONSTARTUP and use the -c "%run $IPYTHONSTARTUP" command 
which works on all versions
+  # We also force interactive mode with "-i"
+  IPYTHONSTARTUP=$PYTHONSTARTUP
+  PYTHONSTARTUP=
+  exec ipython "$IPYTHON_OPTS" -i -c "%run $IPYTHONSTARTUP"
 else
   exec "$PYSPARK_PYTHON" "$@"
 fi

Reply via email to