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

Parallel build fails non-deterministically. #16356

Closed
asfimport opened this issue Mar 30, 2017 · 7 comments
Closed

Parallel build fails non-deterministically. #16356

asfimport opened this issue Mar 30, 2017 · 7 comments
Assignees
Milestone

Comments

@asfimport
Copy link

The following script fails non-deterministically (most of the time) on my machine.

With make -j1 it seems to work (though I only tried a few times). With make -j8 it fails most of the time (though I have seen it succeed).

git clone https://github.com/apache/arrow.git
cd arrow/cpp
git checkout 8f386374eca26d0eebe562beac52fc75459f352c
mkdir release
cd release
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS="-g" -DCMAKE_CXX_FLAGS="-g" -DARROW_BUILD_TESTS=OFF ..
make VERBOSE=1 -j8
cd ../../..

The output from both a successful run (arrow_build_make_j1.txt) and an unsuccessful run (arrow_build_make_j8.txt) are attached, but the error may be the following.

install: mkdir /Users/rkn/Workspace/testingarrow/arrow/cpp/release/jemalloc_ep-prefix/src/jemalloc_ep/dist: File exists
make[3]: *** [install_include] Error 71
make[3]: *** Waiting for unfinished jobs....

Environment: OS X 10.12.1
Reporter: Robert Nishihara / @robertnishihara
Assignee: Uwe Korn / @xhochy

Original Issue Attachments:

Note: This issue was originally created as ARROW-739. Please see the migration documentation for further details.

@asfimport
Copy link
Author

Wes McKinney / @wesm:
That's very odd. It seems that race conditions with external projects are possible. I see:

  if (JEMALLOC_VENDORED)
    add_dependencies(jemalloc_shared jemalloc_ep)
    add_dependencies(jemalloc_static jemalloc_ep)
  endif()

What happens if you remove the dependency for jemalloc_static?

@asfimport
Copy link
Author

Wes McKinney / @wesm:
Workarounds are to pass -DARROW_JEMALLOC=off for now, or to install jemalloc on your system (brew install jemalloc)

@asfimport
Copy link
Author

Robert Nishihara / @robertnishihara:
Thanks! Removing the line add_dependencies(jemalloc_static jemalloc_ep) worked the few times I tried it, but I haven't tried enough to say for sure.

@asfimport
Copy link
Author

Wes McKinney / @wesm:
I have a better fix, I'm about to put up a patch

@asfimport
Copy link
Author

Wes McKinney / @wesm:
PR: #453, let me know if that also works

@asfimport
Copy link
Author

Uwe Korn / @xhochy:
PR #2: #456

@asfimport
Copy link
Author

Wes McKinney / @wesm:
Issue resolved by pull request 456
#456

@asfimport asfimport added this to the 0.3.0 milestone Jan 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants