-
Notifications
You must be signed in to change notification settings - Fork 213
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
double free or corruption (out) #394
Comments
I can't reproduce your corruption locally. You can add
|
Thank you for the help @seisman. Here is the output with V='d':
|
I ran pygmt.test() and got a core dump on open_virtual_file:
|
I searched the Google machine for |
Something else I am suspecting perhaps is the Linux kernel we are on, or the distribution, or some other library. Any suggestions you have would be greatly appreciated! Thanks. |
Hard to say why it corrupts for you. pygmt is tested on macOS and Linux nightly, and we don't see any corruptions. The |
Well, pretty sure this is a segmentation fault in one of the modules. I think the key clue is:
Would be great to know if there is a difference between the GMT library I have and the one you have. How can we check this? |
Those are GMT debug messages. It doesn't mean GMT corrupts. You can check the detailed version information with:
|
Thanks! What is your output from that command? |
@leouieda, any thoughts on this? It seems clear that psxy is trying to free unallocated memory leading to a double free, and Python does not like that. The python interpreter rarely crashes out like this, but it can do so when a C program does something bad with malloc. I wonder if the version of Python we are on is not as lenient about stuff like this as the one you are using for your tests. I am hoping to determine what versions (i.e. builds) of the GMT library you are using, as well as Python. Can you help with this? Thanks! |
This is my output:
|
@tjcrone ouch. I love how interfacing with C code keeps coming back to bite us :-) The most frustrating part is that these crashes seems to be somewhat random.
That's probably not it since we test with the latest Python 3.7 from conda-forge. I'm guessing you're running this on a Pangeo JupyterHub, right? Any idea what the underlying system is? |
Thanks for the followup @leouieda. Currently the underlying system of Pangeo is Ubuntu Bionic. But I don't think it's the kernel or the system. I think I might have narrowed it down to an installation of PyAV, which also uses Cython, and may install incompatible libraries. I'll keep you posted if/when I find a fix. Thanks! |
In case anyone is wondering, it was actually the pyinterp package that somehow includes something that makes gmt=6.0.0 segmentation fault. I never got to the bottom of the issue, just removed pyinterp from the OOI Pangeo notebook image, and it seems to be working okay. Thanks everyone for the help! |
Thank you for posting, Tim! That's a strange bug and probably something we
didn't specify well enough in the GMT build.
|
Hello. I am getting some sort of segmentation-type error when running the points example:
I'm on a Pangeo system and the output of conda list is:
Any thoughts what might be causing this? Thank you for any help you can provide!
The text was updated successfully, but these errors were encountered: