Skip to content

Commit fc4e56a

Browse files
committed
[SPARK-30884][PYSPARK] Upgrade to Py4J 0.10.9
This PR aims to upgrade Py4J to `0.10.9` for better Python 3.7 support in Apache Spark 3.0.0 (master/branch-3.0). This is not for `branch-2.4`. - Apache Spark 3.0.0 is using `Py4J 0.10.8.1` (released on 2018-10-21) because `0.10.8.1` was the first official release to support Python 3.7. - https://www.py4j.org/changelog.html#py4j-0-10-8-and-py4j-0-10-8-1 - `Py4J 0.10.9` was released on January 25th 2020 with better Python 3.7 support and `magic_member` bug fix. - https://github.com/bartdag/py4j/releases/tag/0.10.9 - https://www.py4j.org/changelog.html#py4j-0-10-9 No. Pass the Jenkins with the existing tests. Closes #27641 from dongjoon-hyun/SPARK-30884. Authored-by: Dongjoon Hyun <[email protected]> Signed-off-by: Dongjoon Hyun <[email protected]>
1 parent bb40ab0 commit fc4e56a

File tree

14 files changed

+12
-12
lines changed

14 files changed

+12
-12
lines changed

bin/pyspark

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export PYSPARK_DRIVER_PYTHON_OPTS
5050

5151
# Add the PySpark classes to the Python path:
5252
export PYTHONPATH="${SPARK_HOME}/python/:$PYTHONPATH"
53-
export PYTHONPATH="${SPARK_HOME}/python/lib/py4j-0.10.8.1-src.zip:$PYTHONPATH"
53+
export PYTHONPATH="${SPARK_HOME}/python/lib/py4j-0.10.9-src.zip:$PYTHONPATH"
5454

5555
# Load the PySpark shell.py script when ./pyspark is used interactively:
5656
export OLD_PYTHONSTARTUP="$PYTHONSTARTUP"

bin/pyspark2.cmd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ if "x%PYSPARK_DRIVER_PYTHON%"=="x" (
3030
)
3131

3232
set PYTHONPATH=%SPARK_HOME%\python;%PYTHONPATH%
33-
set PYTHONPATH=%SPARK_HOME%\python\lib\py4j-0.10.8.1-src.zip;%PYTHONPATH%
33+
set PYTHONPATH=%SPARK_HOME%\python\lib\py4j-0.10.9-src.zip;%PYTHONPATH%
3434

3535
set OLD_PYTHONSTARTUP=%PYTHONSTARTUP%
3636
set PYTHONSTARTUP=%SPARK_HOME%\python\pyspark\shell.py

core/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -414,7 +414,7 @@
414414
<dependency>
415415
<groupId>net.sf.py4j</groupId>
416416
<artifactId>py4j</artifactId>
417-
<version>0.10.8.1</version>
417+
<version>0.10.9</version>
418418
</dependency>
419419
<dependency>
420420
<groupId>org.apache.spark</groupId>

core/src/main/scala/org/apache/spark/api/python/PythonUtils.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import org.apache.spark.SparkContext
2727
import org.apache.spark.api.java.{JavaRDD, JavaSparkContext}
2828

2929
private[spark] object PythonUtils {
30-
val PY4J_ZIP_NAME = "py4j-0.10.8.1-src.zip"
30+
val PY4J_ZIP_NAME = "py4j-0.10.9-src.zip"
3131

3232
/** Get the PYTHONPATH for PySpark, either from SPARK_HOME, if it is set, or from our JAR */
3333
def sparkPythonPath: String = {

dev/deps/spark-deps-hadoop-2.7-hive-1.2

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ parquet-hadoop-bundle/1.6.0//parquet-hadoop-bundle-1.6.0.jar
174174
parquet-hadoop/1.10.1//parquet-hadoop-1.10.1.jar
175175
parquet-jackson/1.10.1//parquet-jackson-1.10.1.jar
176176
protobuf-java/2.5.0//protobuf-java-2.5.0.jar
177-
py4j/0.10.8.1//py4j-0.10.8.1.jar
177+
py4j/0.10.9//py4j-0.10.9.jar
178178
pyrolite/4.30//pyrolite-4.30.jar
179179
scala-collection-compat_2.12/2.1.1//scala-collection-compat_2.12-2.1.1.jar
180180
scala-compiler/2.12.10//scala-compiler-2.12.10.jar

dev/deps/spark-deps-hadoop-2.7-hive-2.3

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ parquet-format/2.4.0//parquet-format-2.4.0.jar
188188
parquet-hadoop/1.10.1//parquet-hadoop-1.10.1.jar
189189
parquet-jackson/1.10.1//parquet-jackson-1.10.1.jar
190190
protobuf-java/2.5.0//protobuf-java-2.5.0.jar
191-
py4j/0.10.8.1//py4j-0.10.8.1.jar
191+
py4j/0.10.9//py4j-0.10.9.jar
192192
pyrolite/4.30//pyrolite-4.30.jar
193193
scala-collection-compat_2.12/2.1.1//scala-collection-compat_2.12-2.1.1.jar
194194
scala-compiler/2.12.10//scala-compiler-2.12.10.jar

dev/deps/spark-deps-hadoop-3.2-hive-2.3

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ parquet-format/2.4.0//parquet-format-2.4.0.jar
203203
parquet-hadoop/1.10.1//parquet-hadoop-1.10.1.jar
204204
parquet-jackson/1.10.1//parquet-jackson-1.10.1.jar
205205
protobuf-java/2.5.0//protobuf-java-2.5.0.jar
206-
py4j/0.10.8.1//py4j-0.10.8.1.jar
206+
py4j/0.10.9//py4j-0.10.9.jar
207207
pyrolite/4.30//pyrolite-4.30.jar
208208
re2j/1.1//re2j-1.1.jar
209209
scala-collection-compat_2.12/2.1.1//scala-collection-compat_2.12-2.1.1.jar

python/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,4 @@ The Python packaging for Spark is not intended to replace all of the other use c
2929

3030
## Python Requirements
3131

32-
At its core PySpark depends on Py4J (currently version 0.10.8.1), but some additional sub-packages have their own extra requirements for some features (including numpy, pandas, and pyarrow).
32+
At its core PySpark depends on Py4J, but some additional sub-packages have their own extra requirements for some features (including numpy, pandas, and pyarrow).

python/docs/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ SPHINXBUILD ?= sphinx-build
77
PAPER ?=
88
BUILDDIR ?= _build
99

10-
export PYTHONPATH=$(realpath ..):$(realpath ../lib/py4j-0.10.8.1-src.zip)
10+
export PYTHONPATH=$(realpath ..):$(realpath ../lib/py4j-0.10.9-src.zip)
1111

1212
# User-friendly check for sphinx-build
1313
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)

python/docs/make2.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
REM Command file for Sphinx documentation
44

5-
set PYTHONPATH=..;..\lib\py4j-0.10.8.1-src.zip
5+
set PYTHONPATH=..;..\lib\py4j-0.10.9-src.zip
66

77

88
if "%SPHINXBUILD%" == "" (

0 commit comments

Comments
 (0)