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-2561: [C++] Fix double free in cuda-test under code coverage #2048

Closed
wants to merge 2 commits into from

Conversation

pitrou
Copy link
Member

@pitrou pitrou commented May 15, 2018

As far as I can understand, the problem is due to both shared and static linking with libarrow. Some static std::string in libarrow.so would be destroyed twice at shutdown. Linking entirely statically seems to fix the issue.

@codecov-io
Copy link

codecov-io commented May 15, 2018

Codecov Report

Merging #2048 into master will increase coverage by 0.03%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2048      +/-   ##
==========================================
+ Coverage   87.44%   87.47%   +0.03%     
==========================================
  Files         189      178      -11     
  Lines       29374    28601     -773     
==========================================
- Hits        25685    25018     -667     
+ Misses       3689     3583     -106
Impacted Files Coverage Δ
rust/src/buffer.rs
rust/src/datatypes.rs
rust/src/error.rs
rust/src/list.rs
rust/src/builder.rs
rust/src/array.rs
rust/src/memory_pool.rs
rust/src/list_builder.rs
rust/src/bitmap.rs
rust/src/memory.rs
... and 1 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 5bb3d85...7a9d1b5. Read the comment docs.

@@ -43,7 +43,7 @@ ADD_ARROW_LIB(arrow_gpu
DEPENDENCIES metadata_fbs
SHARED_LINK_FLAGS ""
SHARED_LINK_LIBS ${ARROW_GPU_SHARED_LINK_LIBS}
STATIC_LINK_LIBS ""
STATIC_LINK_LIBS ${ARROW_GPU_SHARED_LINK_LIBS}
Copy link
Member

Choose a reason for hiding this comment

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

This is probably ok but looks weird that the STATIC_LINK_LIBS list …_SHARED_LINK_LIBS. Can you add a comment that this is intended?

Copy link
Member Author

Choose a reason for hiding this comment

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

Done.

@pitrou
Copy link
Member Author

pitrou commented May 16, 2018

Seems like there's an unrelated failure in test_parquet on AppVeyor:
https://ci.appveyor.com/project/ApacheSoftwareFoundation/arrow/build/1.0.6470/job/hx95phkouafslhhp#L5889
and also in one of the Travis-CI jobs (this one I will restart):
https://travis-ci.org/apache/arrow/jobs/379652352#L3124

As far as I can understand, the problem is due to both shared and static linking
with libarrow.  Some static std::string in libarrow.so would be destroyed twice
at shutdown.  Linking entirely statically seems to fix the issue.
Copy link
Member

@xhochy xhochy left a comment

Choose a reason for hiding this comment

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

+1, LGTM

@xhochy xhochy closed this in e237918 May 16, 2018
@pitrou pitrou deleted the ARROW-2561 branch September 19, 2018 18:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants