diff options
author | Davies Liu <davies.liu@gmail.com> | 2014-09-24 12:10:09 -0700 |
---|---|---|
committer | Josh Rosen <joshrosen@apache.org> | 2014-09-24 12:10:09 -0700 |
commit | c854b9fcb5595b1d70b6ce257fc7574602ac5e49 (patch) | |
tree | 87a169effcaeb4abc13324f4d13dada8cd533a88 /python/pyspark/tests.py | |
parent | 50f863365348d52a9285fc779efbedbf1567ea11 (diff) | |
download | spark-c854b9fcb5595b1d70b6ce257fc7574602ac5e49.tar.gz spark-c854b9fcb5595b1d70b6ce257fc7574602ac5e49.tar.bz2 spark-c854b9fcb5595b1d70b6ce257fc7574602ac5e49.zip |
[SPARK-3634] [PySpark] User's module should take precedence over system modules
Python modules added through addPyFile should take precedence over system modules.
This patch put the path for user added module in the front of sys.path (just after '').
Author: Davies Liu <davies.liu@gmail.com>
Closes #2492 from davies/path and squashes the following commits:
4a2af78 [Davies Liu] fix tests
f7ff4da [Davies Liu] ad license header
6b0002f [Davies Liu] add tests
c16c392 [Davies Liu] put addPyFile in front of sys.path
Diffstat (limited to 'python/pyspark/tests.py')
-rw-r--r-- | python/pyspark/tests.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/python/pyspark/tests.py b/python/pyspark/tests.py index 1b8afb763b..4483bf80db 100644 --- a/python/pyspark/tests.py +++ b/python/pyspark/tests.py @@ -323,6 +323,18 @@ class TestAddFile(PySparkTestCase): from userlib import UserClass self.assertEqual("Hello World from inside a package!", UserClass().hello()) + def test_overwrite_system_module(self): + self.sc.addPyFile(os.path.join(SPARK_HOME, "python/test_support/SimpleHTTPServer.py")) + + import SimpleHTTPServer + self.assertEqual("My Server", SimpleHTTPServer.__name__) + + def func(x): + import SimpleHTTPServer + return SimpleHTTPServer.__name__ + + self.assertEqual(["My Server"], self.sc.parallelize(range(1)).map(func).collect()) + class TestRDDFunctions(PySparkTestCase): |