-
Notifications
You must be signed in to change notification settings - Fork 4k
ARROW-739: Don't install jemalloc in parallel #456
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
Conversation
cpp/CMakeLists.txt
Outdated
| BUILD_IN_SOURCE 1 | ||
| BUILD_COMMAND ${MAKE}) | ||
| BUILD_COMMAND ${MAKE} | ||
| INSTALL_COMMAND ${MAKE} -j1) |
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.
I guess this works without install?
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.
No, it should include install. I did not realise that we have libjemalloc already installed in Travis.
|
On my machine (Mac OS) and on Linux, the new code failed with I guess Now I'm investigating if the combination fixes the original problem. |
|
After this change 820035e, the problems seems to have gone away. I've compiled arrow about 100 times on that branch and didn't see the error. |
|
Cool, that's great. Fun times with CMake as always. We'll pull in that change and merge the patch tomorrow |
wesm
left a comment
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, all good locally on CMake 2.8.x. Will await green build
|
The build failed because this patch is behind the Parquet API changes -- libarrow_jemalloc built fine though. Merging, thanks! |
…second timestamp with arrow writer properties set to coerce timestamps and support deprecated int96 timestamps. The bug was a due to the fact that the physical type was int64 but the WriteTimestamps function was taking a path that assumed the physical type was int96. This caused memory corruption because it was writing past the end of the array. The bug was fixed by checking that coerce timestamps is disabled when writing int96. A unit test was added for the regression. Author: Joshua Storck <joshua.storck@twosigma.com> Closes apache#456 from joshuastorck/ARROW_2082 and squashes the following commits: 5fa0a94 [Joshua Storck] Removing 'using ::arrow' in favor of using ::arrow::SomeType 9725ecc [Joshua Storck] Bug fix for ARROW-2082, in which a segfault was being encountered when writing a nanosecond timestamp column with arrow writer properties set to coerce timestamps and support deprecated int96 timestamps. The bug was a segfault due to the fact that the physical type was int64 but the WriteTimestamps function was taking a path that assumed the physical type was int96. The bug was fixed by checking that coerce timestamps is disabled when writing int96. A unit test was added for the regression Change-Id: I9551796c415416fd1e64890b32fe4a59db2fb825
On ARROW-6437 (#7928) we saw occasional "File exists" errors on `jemalloc_ep` on macOS. Googling the error message led back to ARROW-739 (#456), which fixed this before by forcing install with `-j1`. ARROW-3492 later made it so jemalloc would build (but not install) in parallel. Then ARROW-3539 (#2779) was addressing a problem with that change and, along with fixing the build parallelization issue, unfortunately reverted the original `make -j1 install` fix. This patch restores the fix from ARROW-739. Closes #7995 from nealrichardson/jemalloc-install Authored-by: Neal Richardson <neal.p.richardson@gmail.com> Signed-off-by: Sutou Kouhei <kou@clear-code.com>
## What's Changed Derived from the ADBC one. Fixes apache#456. --------- Co-authored-by: Sutou Kouhei <kou@cozmixng.org>
Alternative fix proposal. Couldn't trigger it locally though.