Skip to content
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

ARROW-18339: [Python][CI] Add DYLD_LIBRARY_PATH to avoid requiring PYARROW_BUNDLE_ARROW_CPP on macOS job #14643

Merged
merged 6 commits into from Dec 14, 2022

Conversation

raulcd
Copy link
Member

@raulcd raulcd commented Nov 15, 2022

No description provided.

@raulcd raulcd marked this pull request as ready for review November 15, 2022 13:46
@raulcd
Copy link
Member Author

raulcd commented Nov 15, 2022

@kou @AlenkaF I tested removing the skip for the cython test and also adding to the test the following, as seen on the intermediate commits, but did not solve the issue for the cython test, that's why I opted to continue skipping it:

        elif sys.platform == 'darwin':
            delim, var = ':', 'LD_LIBRARY_PATH'
            subprocess_env['DYLD_LIBRARY_PATH'] = delim.join(
                pa.get_library_dirs() + [
                    subprocess_env.get('DYLD_LIBRARY_PATH', '')
                ]
            )

Let me know if you want me to create a JIRA for this change or if you are ok with it being MINOR

@AlenkaF
Copy link
Member

AlenkaF commented Nov 15, 2022

I agree with skipping the test for now. We can change that when XCode gets upgraded on the GitHub runner.
Regarding the change, not sure where is the line for the MINOR label 🤷‍♀️

@kou
Copy link
Member

kou commented Nov 15, 2022

Could you open a Jira issue because this pull request needs more changes?

The following log shows that import _json in the json library imports pyarrow's _json not the json library's one:

https://github.com/apache/arrow/actions/runs/3470117791/jobs/5797917201#step:6:481

  File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/scanner.py", line 5, in <module>
    from _json import make_scanner as c_make_scanner
  File "pyarrow/_json.pyx", line 1, in init pyarrow._json

I think that we can fix it by preparing a proper path. I'll take a look at this on my local M1 Mac. Please wait for a while.

@raulcd raulcd changed the title MINOR: [Python][CI] Add DYLD_LIBRARY_PATH to avoid requiring PYARROW_BUNDLE_ARROW_CPP on macOS job ARROW-18339: [Python][CI] Add DYLD_LIBRARY_PATH to avoid requiring PYARROW_BUNDLE_ARROW_CPP on macOS job Nov 16, 2022
@github-actions
Copy link

Copy link
Member Author

@raulcd raulcd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the fix @kou ! LGTM

if path_var:
paths = sys.path
paths += pa.get_library_dirs()
paths += [test_ld_path]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This path is probably not needed? (it seems we are not using PYARROW_TEST_LD_PATH anywhere)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I needed to use PYARROW_TEST_LD_PATH to reproduce this problem on my local M1 Mac.
(I did it without reading documentations. So my approach may not be a recommended approach. Sorry.)

If PYARROW_TEST_LD_PATH isn't recommended by pyarrow developers, I'm OK with removing it.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have no idea about PYARROW_TEST_LD_PATH or what it is supposed to do. I just notices that it has not a single mention in our repo outside of the line above test_ld_path = os.environ.get('PYARROW_TEST_LD_PATH', ''). So therefore I was assuming this is some old left-over.

I needed to use PYARROW_TEST_LD_PATH to reproduce this problem on my local M1 Mac.

Can you clarify how you "used" it? I suppose you mean setting it manually to some path, but which?

Copy link
Member

@kou kou Nov 18, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure:

$ rm -rf cpp.build
$ make -S cpp -B cpp.build -G "Ninja" -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_INSTALL_PREFIX=/tmp/local -DCMAKE_BUILD_TYPE=Debug -DARROW_FILESYSTEM=ON -DARROW_GANDIVA=ON -DARROW_COMPUTE=ON -DARROW_CSV=ON -DARROW_DATASET=ON -DARROW_ORC=ON -DARROW_JSON=ON
$ cmake --build cpp.build --config Debug --target install
$ MACOSX_DEPLOYMENT_TARGET=13.0 CMAKE_PREFIX_PATH=/tmp/local CMAKE_BUILD_PARALLEL_LEVEL=$(sysctl -n hw.ncpu) python3 -m pip install -vv ./python
$ MACOSX_DEPLOYMENT_TARGET=13.0 PYARROW_TEST_LD_PATH=/tmp/local/lib DYLD_LIBRARY_PATH=/tmp/local/lib python3 -m pytest -r s -k 'test_cython_api' --pyargs pyarrow

If I don't set PYARROW_TEST_LD_PATH, the following error is reported:

clang++ -bundle -undefined dynamic_lookup -arch arm64 -arch x86_64 -g build/temp.macosx-10.9-universal2-cpython-310/pyarrow_cython_example.o -L/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pyarrow -larrow -larrow_python -o build/lib.macosx-10.9-universal2-cpython-310/pyarrow_cython_example.cpython-310-darwin.so
ld: library not found for -larrow
================================================ test session starts =================================================
platform darwin -- Python 3.10.8, pytest-7.2.0, pluggy-1.0.0
rootdir: /Users/kou/work/cpp/arrow
plugins: hypothesis-6.57.1, lazy-fixture-0.6.3
collected 4447 items / 4446 deselected / 3 skipped / 1 selected                                                      

tests/test_cython.py F                                                                                         [100%]

====================================================== FAILURES ======================================================
__________________________________________________ test_cython_api ___________________________________________________

tmpdir = local('/private/var/folders/6b/s397zyc57g9gvqm8cj6gzq0r0000gn/T/pytest-of-kou/pytest-3/test_cython_api0')

    @pytest.mark.cython
    def test_cython_api(tmpdir):
        """
        Basic test for the Cython API.
        """
        # Fail early if cython is not found
        import cython  # noqa
    
        with tmpdir.as_cwd():
            # Set up temporary workspace
            pyx_file = 'pyarrow_cython_example.pyx'
            shutil.copyfile(os.path.join(here, pyx_file),
                            os.path.join(str(tmpdir), pyx_file))
            # Create setup.py file
            setup_code = setup_template.format(pyx_file=pyx_file,
                                               compiler_opts=compiler_opts,
                                               test_ld_path=test_ld_path)
            with open('setup.py', 'w') as f:
                f.write(setup_code)
    
            # ARROW-2263: Make environment with this pyarrow/ package first on the
            # PYTHONPATH, for local dev environments
            subprocess_env = test_util.get_modified_env_with_pythonpath()
    
            # Compile extension module
>           subprocess.check_call([sys.executable, 'setup.py',
                                   'build_ext', '--inplace'],
                                  env=subprocess_env)

/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pyarrow/tests/test_cython.py:109: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

popenargs = (['/Library/Frameworks/Python.framework/Versions/3.10/bin/python3', 'setup.py', 'build_ext', '--inplace'],)
kwargs = {'env': {'AWS_CONFIG_FILE': '/dev/null', 'AWS_EC2_METADATA_DISABLED': 'true', 'DYLD_LIBRARY_PATH': '/tmp/local/lib', 'EDITOR': 'vim', ...}}
retcode = 1
cmd = ['/Library/Frameworks/Python.framework/Versions/3.10/bin/python3', 'setup.py', 'build_ext', '--inplace']

    def check_call(*popenargs, **kwargs):
        """Run command with arguments.  Wait for command to complete.  If
        the exit code was zero then return, otherwise raise
        CalledProcessError.  The CalledProcessError object will have the
        return code in the returncode attribute.
    
        The arguments are the same as for the call function.  Example:
    
        check_call(["ls", "-l"])
        """
        retcode = call(*popenargs, **kwargs)
        if retcode:
            cmd = kwargs.get("args")
            if cmd is None:
                cmd = popenargs[0]
>           raise CalledProcessError(retcode, cmd)
E           subprocess.CalledProcessError: Command '['/Library/Frameworks/Python.framework/Versions/3.10/bin/python3', 'setup.py', 'build_ext', '--inplace']' returned non-zero exit status 1.

/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/subprocess.py:369: CalledProcessError
------------------------------------------------ Captured stdout call ------------------------------------------------
Compiling pyarrow_cython_example.pyx because it changed.
[1/1] Cythonizing pyarrow_cython_example.pyx
Extension module: <setuptools.extension.Extension('pyarrow_cython_example') at 0x119c86620> ['/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/numpy/core/include', '/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pyarrow/include'] ['arrow', 'arrow_python'] ['/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pyarrow']
running build_ext
building 'pyarrow_cython_example' extension
creating build
creating build/temp.macosx-10.9-universal2-cpython-310
clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch arm64 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/numpy/core/include -I/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pyarrow/include -I/Library/Frameworks/Python.framework/Versions/3.10/include/python3.10 -c pyarrow_cython_example.cpp -o build/temp.macosx-10.9-universal2-cpython-310/pyarrow_cython_example.o -std=c++17
creating build/lib.macosx-10.9-universal2-cpython-310
clang++ -bundle -undefined dynamic_lookup -arch arm64 -arch x86_64 -g build/temp.macosx-10.9-universal2-cpython-310/pyarrow_cython_example.o -L/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pyarrow -larrow -larrow_python -o build/lib.macosx-10.9-universal2-cpython-310/pyarrow_cython_example.cpython-310-darwin.so
------------------------------------------------ Captured stderr call ------------------------------------------------
pyarrow_cython_example.cpp:3756:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_buffer' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_buffer)(std::shared_ptr< arrow::Buffer>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3757:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_resizable_buffer' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_resizable_buffer)(std::shared_ptr< arrow::ResizableBuffer>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3758:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_data_type' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_data_type)(std::shared_ptr< arrow::DataType>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3759:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_field' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_field)(std::shared_ptr< arrow::Field>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3760:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_schema' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_schema)(std::shared_ptr< arrow::Schema>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3763:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_chunked_array' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_chunked_array)(std::shared_ptr< arrow::ChunkedArray>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3764:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_coo_tensor' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_coo_tensor)(std::shared_ptr< arrow::SparseCOOTensor>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3765:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csc_matrix' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csc_matrix)(std::shared_ptr< arrow::SparseCSCMatrix>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3766:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csf_tensor' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csf_tensor)(std::shared_ptr< arrow::SparseCSFTensor>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3767:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csr_matrix' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csr_matrix)(std::shared_ptr< arrow::SparseCSRMatrix>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3768:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_tensor' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_tensor)(std::shared_ptr< arrow::Tensor>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3769:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_batch' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_batch)(std::shared_ptr< arrow::RecordBatch>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3770:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_table' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_table)(std::shared_ptr< arrow::Table>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3771:43: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_buffer' [-Wunused-variable]
static std::shared_ptr< arrow::Buffer>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_buffer)(PyObject *); /*proto*/
                                          ^
pyarrow_cython_example.cpp:3773:42: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_field' [-Wunused-variable]
static std::shared_ptr< arrow::Field>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_field)(PyObject *); /*proto*/
                                         ^
pyarrow_cython_example.cpp:3774:43: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_schema' [-Wunused-variable]
static std::shared_ptr< arrow::Schema>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_schema)(PyObject *); /*proto*/
                                          ^
pyarrow_cython_example.cpp:3777:49: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_chunked_array' [-Wunused-variable]
static std::shared_ptr< arrow::ChunkedArray>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_chunked_array)(PyObject *); /*proto*/
                                                ^
pyarrow_cython_example.cpp:3778:52: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_coo_tensor' [-Wunused-variable]
static std::shared_ptr< arrow::SparseCOOTensor>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_coo_tensor)(PyObject *); /*proto*/
                                                   ^
pyarrow_cython_example.cpp:3779:52: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csc_matrix' [-Wunused-variable]
static std::shared_ptr< arrow::SparseCSCMatrix>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csc_matrix)(PyObject *); /*proto*/
                                                   ^
pyarrow_cython_example.cpp:3780:52: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csf_tensor' [-Wunused-variable]
static std::shared_ptr< arrow::SparseCSFTensor>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csf_tensor)(PyObject *); /*proto*/
                                                   ^
pyarrow_cython_example.cpp:3781:52: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csr_matrix' [-Wunused-variable]
static std::shared_ptr< arrow::SparseCSRMatrix>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csr_matrix)(PyObject *); /*proto*/
                                                   ^
pyarrow_cython_example.cpp:3782:43: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_tensor' [-Wunused-variable]
static std::shared_ptr< arrow::Tensor>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_tensor)(PyObject *); /*proto*/
                                          ^
pyarrow_cython_example.cpp:3783:48: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_batch' [-Wunused-variable]
static std::shared_ptr< arrow::RecordBatch>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_batch)(PyObject *); /*proto*/
                                               ^
pyarrow_cython_example.cpp:3784:42: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_table' [-Wunused-variable]
static std::shared_ptr< arrow::Table>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_table)(PyObject *); /*proto*/
                                         ^
24 warnings generated.
pyarrow_cython_example.cpp:3756:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_buffer' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_buffer)(std::shared_ptr< arrow::Buffer>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3757:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_resizable_buffer' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_resizable_buffer)(std::shared_ptr< arrow::ResizableBuffer>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3758:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_data_type' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_data_type)(std::shared_ptr< arrow::DataType>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3759:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_field' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_field)(std::shared_ptr< arrow::Field>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3760:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_schema' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_schema)(std::shared_ptr< arrow::Schema>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3763:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_chunked_array' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_chunked_array)(std::shared_ptr< arrow::ChunkedArray>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3764:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_coo_tensor' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_coo_tensor)(std::shared_ptr< arrow::SparseCOOTensor>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3765:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csc_matrix' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csc_matrix)(std::shared_ptr< arrow::SparseCSCMatrix>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3766:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csf_tensor' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csf_tensor)(std::shared_ptr< arrow::SparseCSFTensor>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3767:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csr_matrix' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_sparse_csr_matrix)(std::shared_ptr< arrow::SparseCSRMatrix>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3768:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_tensor' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_tensor)(std::shared_ptr< arrow::Tensor>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3769:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_batch' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_batch)(std::shared_ptr< arrow::RecordBatch>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3770:20: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_wrap_table' [-Wunused-variable]
static PyObject *(*__pyx_f_7pyarrow_3lib_pyarrow_wrap_table)(std::shared_ptr< arrow::Table>  const &); /*proto*/
                   ^
pyarrow_cython_example.cpp:3771:43: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_buffer' [-Wunused-variable]
static std::shared_ptr< arrow::Buffer>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_buffer)(PyObject *); /*proto*/
                                          ^
pyarrow_cython_example.cpp:3773:42: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_field' [-Wunused-variable]
static std::shared_ptr< arrow::Field>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_field)(PyObject *); /*proto*/
                                         ^
pyarrow_cython_example.cpp:3774:43: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_schema' [-Wunused-variable]
static std::shared_ptr< arrow::Schema>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_schema)(PyObject *); /*proto*/
                                          ^
pyarrow_cython_example.cpp:3777:49: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_chunked_array' [-Wunused-variable]
static std::shared_ptr< arrow::ChunkedArray>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_chunked_array)(PyObject *); /*proto*/
                                                ^
pyarrow_cython_example.cpp:3778:52: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_coo_tensor' [-Wunused-variable]
static std::shared_ptr< arrow::SparseCOOTensor>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_coo_tensor)(PyObject *); /*proto*/
                                                   ^
pyarrow_cython_example.cpp:3779:52: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csc_matrix' [-Wunused-variable]
static std::shared_ptr< arrow::SparseCSCMatrix>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csc_matrix)(PyObject *); /*proto*/
                                                   ^
pyarrow_cython_example.cpp:3780:52: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csf_tensor' [-Wunused-variable]
static std::shared_ptr< arrow::SparseCSFTensor>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csf_tensor)(PyObject *); /*proto*/
                                                   ^
pyarrow_cython_example.cpp:3781:52: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csr_matrix' [-Wunused-variable]
static std::shared_ptr< arrow::SparseCSRMatrix>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_sparse_csr_matrix)(PyObject *); /*proto*/
                                                   ^
pyarrow_cython_example.cpp:3782:43: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_tensor' [-Wunused-variable]
static std::shared_ptr< arrow::Tensor>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_tensor)(PyObject *); /*proto*/
                                          ^
pyarrow_cython_example.cpp:3783:48: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_batch' [-Wunused-variable]
static std::shared_ptr< arrow::RecordBatch>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_batch)(PyObject *); /*proto*/
                                               ^
pyarrow_cython_example.cpp:3784:42: warning: unused variable '__pyx_f_7pyarrow_3lib_pyarrow_unwrap_table' [-Wunused-variable]
static std::shared_ptr< arrow::Table>  (*__pyx_f_7pyarrow_3lib_pyarrow_unwrap_table)(PyObject *); /*proto*/
                                         ^
24 warnings generated.
ld: library not found for -larrow
clang: error: linker command failed with exit code 1 (use -v to see invocation)
error: command '/usr/bin/clang++' failed with exit code 1
============================================== short test summary info ===============================================
SKIPPED [1] ../../../../../Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pyarrow/tests/test_cuda.py:32: could not import 'pyarrow.cuda': No module named 'pyarrow._cuda'
SKIPPED [1] ../../../../../Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pyarrow/tests/test_cuda_numba_interop.py:23: could not import 'pyarrow.cuda': No module named 'pyarrow._cuda'
SKIPPED [1] ../../../../../Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pyarrow/tests/test_jvm.py:27: could not import 'jpype': No module named 'jpype'
=================================== 1 failed, 3 skipped, 4446 deselected in 6.48s ====================================

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that we can remove paths += [test_ld_path] with my instruction because my instruction specifies DYLD_LIBRARY_PATH .

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that we can remove paths += [test_ld_path] with my instruction because my instruction specifies DYLD_LIBRARY_PATH .

Then I would do that?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK. I've removed it.

Copy link
Member Author

@raulcd raulcd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @kou for taking this over! Looks good to me +1

@raulcd
Copy link
Member Author

raulcd commented Dec 14, 2022

@jorisvandenbossche are you ok with the latest changes here?

Copy link
Member

@jorisvandenbossche jorisvandenbossche left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes! Sorry for the slow response

@kou kou merged commit 6724fc1 into apache:master Dec 14, 2022
@ursabot
Copy link

ursabot commented Dec 16, 2022

Benchmark runs are scheduled for baseline = 794aefd and contender = 6724fc1. 6724fc1 is a master commit associated with this PR. Results will be available as each benchmark for each run completes.
Conbench compare runs links:
[Finished ⬇️0.0% ⬆️0.0%] ec2-t3-xlarge-us-east-2
[Failed ⬇️0.56% ⬆️0.0%] test-mac-arm
[Finished ⬇️0.27% ⬆️0.0%] ursa-i9-9960x
[Finished ⬇️0.34% ⬆️0.03%] ursa-thinkcentre-m75q
Buildkite builds:
[Finished] 6724fc1d ec2-t3-xlarge-us-east-2
[Failed] 6724fc1d test-mac-arm
[Finished] 6724fc1d ursa-i9-9960x
[Finished] 6724fc1d ursa-thinkcentre-m75q
[Finished] 794aefd6 ec2-t3-xlarge-us-east-2
[Failed] 794aefd6 test-mac-arm
[Finished] 794aefd6 ursa-i9-9960x
[Finished] 794aefd6 ursa-thinkcentre-m75q
Supported benchmarks:
ec2-t3-xlarge-us-east-2: Supported benchmark langs: Python, R. Runs only benchmarks with cloud = True
test-mac-arm: Supported benchmark langs: C++, Python, R
ursa-i9-9960x: Supported benchmark langs: Python, R, JavaScript
ursa-thinkcentre-m75q: Supported benchmark langs: C++, Java

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants