-
Notifications
You must be signed in to change notification settings - Fork 3.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GH-43868: [CI][Python] Skip test that requires PARQUET_TEST_DATA env on emscripten #43906
Conversation
@github-actions crossbow submit test-conda-python-emscripten |
|
Revision: 3091b51 Submitted crossbow builds: ursacomputing/crossbow @ actions-d04eba703d
|
ok, this does not work on arrow/python/pyarrow/tests/parquet/conftest.py Lines 34 to 36 in 2767dc5
edit: added link to check |
cc @kou for insight. |
I think that we can't inject Parquet test data directory path by environment variable. But... we may be able to use https://github.com/pyodide/pyodide/blob/a448c045cf5640c5050e0c3722bafc0d58659fcc/src/js/pyodide.ts#L151-L160 : diff --git a/python/scripts/run_emscripten_tests.py b/python/scripts/run_emscripten_tests.py
index 1a4b4a4e05..79996b1f92 100644
--- a/python/scripts/run_emscripten_tests.py
+++ b/python/scripts/run_emscripten_tests.py
@@ -19,6 +19,7 @@
import argparse
import contextlib
import http.server
+import json
import os
import queue
import shutil
@@ -153,7 +154,7 @@ class NodeDriver:
self.execute_js(
f"""
const {{ loadPyodide }} = require('{dist_dir}/pyodide.js');
- let pyodide = await loadPyodide();
+ let pyodide = await loadPyodide({json.dumps({"env": {"PARQUET_TEST_DATA": os.environ.get("PARQUET_TEST_DATA")}})});
"""
)
|
@github-actions crossbow submit test-conda-python-emscripten |
|
Revision: 3d3708a Submitted crossbow builds: ursacomputing/crossbow @ actions-8e719208e8
|
I was testing locally and it seems that even though the file exists at the location inside the container:
The test fails:
|
This comment was marked as outdated.
This comment was marked as outdated.
cc @joemarshall |
For setting the env variable, could we modify |
@github-actions crossbow submit test-conda-python-emscripten |
Pushing a test skip that works locally but happy if @joemarshall or someone else comes with a solution that does not require us to skip the test. |
Revision: 6a5c514 Submitted crossbow builds: ursacomputing/crossbow @ actions-e9434c5a2d
|
Skipping the test is certainly fine with me |
This seems relevant: |
I've been able to have the test passing locally for the NodeDriver with this (and some other minor changes): diff --git a/python/scripts/run_emscripten_tests.py b/python/scripts/run_emscripten_tests.py
index 53d3dd5..550e1a0 100644
--- a/python/scripts/run_emscripten_tests.py
+++ b/python/scripts/run_emscripten_tests.py
@@ -19,6 +19,7 @@
import argparse
import contextlib
import http.server
+import json
import os
import queue
import shutil
@@ -153,7 +154,8 @@ class NodeDriver:
self.execute_js(
f"""
const {{ loadPyodide }} = require('{dist_dir}/pyodide.js');
- let pyodide = await loadPyodide();
+ let pyodide = await loadPyodide({json.dumps({"env": {"PARQUET_TEST_DATA": "/test-data"}})});
+ pyodide.mountNodeFS("/test-data", "{os.environ.get("PARQUET_TEST_DATA")}");
"""
)
but the test still fails for the ChromeDriver, I tried a couple of things, but they just crash, so I am not sure how to do the mount for the ChromeDriver. |
Co-authored-by: Joris Van den Bossche <jorisvandenbossche@gmail.com>
@github-actions crossbow submit test-conda-python-emscripten |
Revision: e918ffa Submitted crossbow builds: ursacomputing/crossbow @ actions-295c35fb98
|
I am marking this as ready for review just skipping the test, I can create an issue as a follow up in order to mount |
@raulcd Can you fix this PR's title and description? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1
After merging your PR, Conbench analyzed the 4 benchmarking runs that have been run so far on merge-commit fe39c8f. There were no benchmark performance regressions. 🎉 The full Conbench report has more details. It also includes information about 3 possible false positives for unstable benchmarks that are known to sometimes produce them. |
Rationale for this change
The following PR:
Made mandatory for a test the requirement to have
PARQUET_TEST_DATA
env defined.This is currently not available from
python_test_emscripten.sh
as we require to mount the filesystem for both Node and ChromeDriver.What changes are included in this PR?
Skip the test that requires
PARQUET_TEST_DATA
for emscripten.Are these changes tested?
Via archery
Are there any user-facing changes?
No