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
Pathological performance problem with RegExp engine #12360
Comments
From malch@malch.comCreated by malch@malch.comThis problem has also been reproduced on * ActivePerl 5.14.2 on Windows 7 64-bit * Perl 5.8.8 built for i686-linux The following RegExp does not match and indeed it should not. $string=q~ Malcolm Hoar Perl Info
|
From malch@malch.comCreated by malch@malch.comThis problem has also been reproduced on * ActivePerl 5.14.2 on Windows 7 64-bit * Perl 5.8.8 built for i686-linux The following RegExp does not match and indeed it should not. $string=q~ Malcolm Hoar Perl Info
|
From @jkeenanOn Tue Aug 28 00:52:27 2012, malch@malch.com wrote:
/#20Char#20Char1/Span/#20Char#20Char2/Span/#20Char#20Char3/Span/#20Char#20Char4/Span/#20Char#20Char5/Span/#20Char#20Char6/Span/Table#20of#20Figures/P/InlineShape/Figure/Default/P/References#20Char/Span/HeadTOC/P/DropCap/Figure/CM66/P/CM67#20Char/Span/Outline/Span/Subscript/Span/Superscript/Span/TableTitle#20Char/Span/Figure#20Heading#20Char/Span/Albany2/P/CM17/P/Caption/P/TOA/TOC/Page#20Number/Span/TOF/TOC/Emphasis/Span/Strikeout/Span/Body#20Char/Span/TextBox/Div/Heading#201/H1/heading#201/P/Heading#202/H2/heading#202/P/Heading#203/H3/Normal/P/h
Confirmed on 5.16.0 on Linux/i386. Observed that the big difference is $pdf='\s*(/\S+\s*){0,5}/xxx'; and either: $pdf='\s*(/\S+\s*){0,1}/xxx'; or: $pdf='\s*(/\S+\s*)?/xxx'; Thank you very much. |
The RT System itself - Status changed from 'new' to 'open' |
From @demerphqOn 30 August 2012 02:51, James E Keenan via RT
I think this a bug in super-linear cache. Yves |
From @hvdsdemerphq <demerphq@gmail.com> wrote: Note that this is a pathological regexp; it may be that we can execute The issue here is that (without special optimizations) matches are fast, I suggest therefore that the primary bug here is the regexp pattern I suspect the original poster might actually rather want: By writing the pattern so that '/x/y' no longer has the option to match It may be we can find new optimizations or fix existing ones that would (As to which optimization: this particular test could be failed fastest Hugo |
From @demerphqOn 30 August 2012 09:34, <hv@crypt.org> wrote:
Ah, I though it might have been an accidental thing.
Yeah true. This is a pattern that could probably be improved also by
Hmm. -- |
Migrated from rt.perl.org#114636 (status was 'open')
Searchable as RT114636$
The text was updated successfully, but these errors were encountered: