On 3/26/19 12:36 PM, Andrew Dunstan wrote:
> On 3/26/19 11:22 AM, Alvaro Herrera wrote:
>> On 2019-Mar-26, Andrew Dunstan wrote:
>>
>>> On 3/25/19 8:44 AM, Alexander Korotkov wrote:
>>>> Get rid of backtracking in jsonpath_scan.l
>>>>
>>>> Non-backtracking flex parsers work faster than backtracking ones.  So, this
>>>> commit gets rid of backtracking in jsonpath_scan.l.  That required explicit
>>>> handling of some cases as well as manual backtracking for some cases.  More
>>>> regression tests for numerics are added.
>>> jacana appears to be having trouble with this:
>>>
>>>
>>> 2019-03-26 00:49:02.208 EDT [5c99ae9e.20cc:6] LOG:  server process (PID 
>>> 8368) was terminated by exception 0xC0000028
>> 0xC0000028 is STATUS_BAD_STACK, per
>> https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-erref/596a1078-e883-4972-9bbc-49e60bebca55
>> Not sure how credible/useful a stack trace is going to be.
>>
>
> Right, and getting stack traces isn't easy in any case. There is a
> gadget from Google that is supposed to trap exceptions and produce a
> stack trace on the fly in mingw. I'm going to take a look at it,
> although loading it might be ... interesting.
>
>

Still working on this. However, I have another data point. On a shiny
new Msys2/WS2019 system (on AWS/EC2) this does not reproduce, even
though jacana seems to be producing it quite reliably.


To get the backtrace gadget working I think I'm going to have to add
some code like:


    #if defined(WIN32) && defined(LOAD_BACKTRACE)

        LoadLibraryA("backtrace.dll");

    #endif


cheers


andrew

-- 
Andrew Dunstan                https://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



Reply via email to