-
Notifications
You must be signed in to change notification settings - Fork 553
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
memory leak in regular expressions (perl > 5.24) #17218
Comments
|
The Can you double-check that information? Was something cut off? Thank you very much. |
|
Okay fixed hopefully. |
|
Bisect points to 02517e3 is the first bad commit |
|
PS: this is a commit after 5.26, 5.24 doesn't leak for me. |
|
5.24 and below does not leak for me to. The bug can be confirmed for 5.28 and 5.30 from my side. Found nobody who could test it with 5.26. Therefore it could make sense that it have something to do with the refactoring of regcomp.c. |
|
Debian Buster, perl 5.28, affected as well |
|
MacOS results: /usr/bin/time -l /opt/local/bin/perl5.24 Desktop/leaktest.pl > /dev/null /usr/bin/time -lp /opt/local/bin/perl5.26 Desktop/leaktest.pl > /dev/null /usr/bin/time -lp /opt/local/bin/perl5.28 Desktop/leaktest.pl > /dev/null /usr/bin/time -lp /opt/local/bin/perl5.30 Desktop/leaktest.pl > /dev/null |
|
The modifier //a can also be used as workaround. |
Seems to be a commit before 5.26 was released. |
|
Yeah, i meant "for 5.26", not "after 5.26". |
|
Now fixed by commit 0463f3a |
|
@khwilliamson any plan to backport this one-line fix to 5.26, 5.28 and 5.30? Currently Debian, Ubuntu, CentOS 8, Gentoo, ArchLinux, openSUSE, FreeBSD, NetBSD, OpenBSD, Homebrew all are affected by this issue. I was bitten when I used GNU Parallel "parallel --pipe --roundrobin" with 5.30.1. |
|
I've added a backport tag so we can see what is recommended for backport? |
anstelle OpenBib::Common::Util wegen aktuellem Memory Leak Perl/perl5#17218
(normalize, normalize_lang) in eigenes Objekt wg. aktuellem regexp Memory Leak in unserer Perl-Version 5.28 Perl/perl5#17218
Description
The following code leads to huge memory leaks for perl versions above 5.24.
no leak (tested): v5.20, v5.22, v5.24
leak (tested): v5.28, v5.30
Steps to Reproduce
Expected behavior
The script fills the whole RAM on my raspberry pi with Perl 5.28 which should never happen.
Workaround: If both leak() function calls within the for loop are replaced by noleak(), the memory leak is gone.
Perl configuration
The text was updated successfully, but these errors were encountered: