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

Matplotlib Support #12

Open
whilo opened this issue Jun 19, 2017 · 2 comments
Open

Matplotlib Support #12

whilo opened this issue Jun 19, 2017 · 2 comments

Comments

@whilo
Copy link

whilo commented Jun 19, 2017

Factoring out from #11

Yes, it is reproducible. I have just tried to find the part in matplotlib where it is called to shrink the case, but it is a bit messy with all the backend monkey patching. I am not sure where show() calls into multiarray (and why), I can instrument with print debugging, but this is a bit inefficient. I tried to use the Emacs Python debugger with CPython, but I have had no success yet. Any suggestions? How do you pin things like that down?

Since the crash happens in multiarray, and matplotlib uses numpy, I think it is a numpy issue.

@whilo
Copy link
Author

whilo commented Jun 19, 2017

I also have tried to use gdb with the core dump, but this gives no additional information really. I probably have to built all this stuff from sources with debug info attached for gdb to throw out useful information...

@whilo whilo mentioned this issue Jun 19, 2017
@Stewori
Copy link
Owner

Stewori commented Jun 19, 2017

I often do this stuff the brutal way. Set this up as a copy of matplotlib and delete part by part all code that isn't needed or does not change the issue behaviour. Time consuming unfortunately. I did this with PyOpenGL. Also, please try to set up your own numpy (1.13 please). Then you can insert debug output at crucial spots. Eventually it is even useful then to crosscheck with CPython behavior.

However, before you go that way, what about pydbg? Did you step with the Python Debugger through plt.show()?

Also, please post or attach somehow the actual hs_err_pid[some number].log. However, looking at #11 the latest method called is JyNI.JyNI.callPyCPeer. Look at https://github.com/Stewori/JyNI/blob/master/JyNI-C/src/JyNI.c#L160
as you can see, it contains a mess of out-commented debug-output functions. I didn't bother to clean this up, because I need it so frequently for debugging. You might want to in-comment some of this output, especially the block https://github.com/Stewori/JyNI/blob/master/JyNI-C/src/JyNI.c#L182, mainly for line 185. Hope this can reveal something.

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