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

Heap corruption #5

Closed
AlexDaniel opened this issue Mar 16, 2017 · 10 comments
Closed

Heap corruption #5

AlexDaniel opened this issue Mar 16, 2017 · 10 comments

Comments

@AlexDaniel
Copy link

I've filed this RT ticket, but given that this module is completely useless with the bug, I thought I'd create an issue here as well.

@AlexDaniel
Copy link
Author

Using libgumbo 0.10.1+dfsg-2.1 (from debian packages)

@kazcw
Copy link

kazcw commented Jun 6, 2019

There's also a bug for this in the MoarVM tracker: MoarVM/MoarVM#800.

I can attest that this is still a killer with the current (git) versions of moar/nqp/rakudo/perl6-gumbo and libgumbo 0.10.1. Now that my scraper has become complex enough I've started hitting this, I am trying to find some kind of workaround before I resort to restarting my whole project in another language.

@AlexDaniel
Copy link
Author

@kazcw one of the workarounds that I use is to make things restartable. That is, the script keeps walking until it dies, then it is automatically restarted. Once it starts up, it just continues the work instead of starting from scratch.

Another thing that works is if you load a python module using Inline::Python (so instead of using the perl6 gumbo module just use whatever alternative you like in python). It works just fine.

@Skarsnik
Copy link
Owner

Skarsnik commented Jun 7, 2019

Maybe you can workaround with fork now? But seriously I wish someone more knowledgeable look at this issue to fix it :(

@kazcw
Copy link

kazcw commented Jun 8, 2019

Something's up with the CUnions. I'm still trying to get to the root of it. I implemented a workaround in #10.

kazcw added a commit to kazcw/MoarVM that referenced this issue Jun 8, 2019
Fixes non-deterministic segfaults in anything that non-trivially uses
CStruct/CPPStruct/CUnion reprs.

Also fixed a separate bug in CUnion: it wasn't caching child objects for
attributes that are inlined.

Tested to fix the issue in MoarVM MoarVM#800, Skarsnik/perl6-gumbo#5 and perl6 RT 131003.
Probably also fixes MoarVM MoarVM#751 and MoarVM#1087
@kazcw
Copy link

kazcw commented Jun 8, 2019

I fixed Moar, but the workaround is of course still necessary for Gumbo to be usable on the current release (mvm 2019.05)

@AlexDaniel
Copy link
Author

holy fucking shit!!! I'll try to test this asap…

@AlexDaniel
Copy link
Author

Oh, I forgot to reply. But yes, it does work now!

@Skarsnik
Copy link
Owner

closing I guess?

@AlexDaniel
Copy link
Author

Yep.

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

No branches or pull requests

3 participants