Re: PCRE JIT stack size limit
| From: | David Zuelke | Date: | Sun, 20 Mar 2016 21:09:35 +0000 |
| Subject: | Re: PCRE JIT stack size limit | ||
| References: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-91792@lists.php.net to get a copy of this message | ||
> On 17.03.2016, at 05:22, David Zuelke <dz@heroku.com> wrote:
>
>> On 16.03.2016, at 21:38, Anatol Belski <anatol.php@belski.net> wrote:
>>
>> Hi,
>>
>>> -----Original Message-----
>>> From: David Zuelke [mailto:dz@heroku.com]
>>> Sent: Tuesday, March 15, 2016 11:58 PM
>>> To: Anatol Belski <anatol.php@belski.net>
>>> Cc: Christoph Becker <cmbecker69@gmx.de>; Pierre Joye
>>> <pierre.php@gmail.com>; PHP internals <internals@lists.php.net>
>>> Subject: Re: [PHP-DEV] PCRE JIT stack size limit
>>>
>>> Sure. So composer creates patterns to parse a file dynamically; I have not
>>> figured out why it only happens for some composer.json files (or maybe it
>>> happens for all of them and I just have not noticed), but this example here I
>>> extracted from a reproducibly failing "composer require" run; it runs into
>>> the JIT
>>> stack size limit on PHP 7 while it works fine on 5.x:
>>>
>>> https://gist.github.com/dzuelke/cc64a630c14416eda3e9
>>>
>> I've just tried this on Debian Jessie and on Windows with the latest 7.0.x builds, in
>> both cases the error is PREG_BACKTRACK_LIMIT_ERROR. I'd be next asking you to check the
>> configuration. Runtime like system or ini, or build config can affect this. Anyway, I don't see
>> an issue with PCRE JIT at the moment.
>
> Sorry, I simplified the example too far. Updated it again to throw a JIT stack limit error
> again (but works fine with "php -dpcre.jit=0"):
>
>
> https://gist.github.com/dzuelke/cc64a630c14416eda3e9/de7b7293798ac57b4f75d822dc22a625be0fe9df
Were you able to reproduce this? :)
David