Re: Patch bug: Fix jsonpath .* on Arrays - Mailing list pgsql-hackers

From Stepan Neretin
Subject Re: Patch bug: Fix jsonpath .* on Arrays
Date
Msg-id CAN-sa+DbWw-z8wuACnivbzYLiwjJRRnsADfA2Mip6tJaHNhxDQ@mail.gmail.com
Whole thread Raw
In response to Re: Patch bug: Fix jsonpath .* on Arrays  ("David E. Wheeler" <david@justatheory.com>)
Responses Re: Patch bug: Fix jsonpath .* on Arrays
List pgsql-hackers


On Thu, Jun 27, 2024 at 1:16 AM David E. Wheeler <david@justatheory.com> wrote:
On Jun 25, 2024, at 13:48, David E. Wheeler <david@justatheory.com> wrote:

> I have since realized it’s not a complete fix for the issue, and hacked around it in my Go version. Would be fine to remove that bit, but IIRC this was the only execution function that would return `jperNotFound` when it in fact adds items to the `found` list. The current implementation only looks at one or the other, so it’s not super important, but I found the inconsistency annoying and sometimes confusing.

I’ve removed this change.

>> [1] select jsonb_path_query('[1,2,3,{"b": [3,4,5]}]', 'strict $.*');
>> I propose adding a similar test with explicitly specified lax mode: select jsonb_path_query('[1,2,3,{"b": [3,4,5]}]', 'lax $.*'); to show what lax mode is set by default.
>
> Very few of the other tests do so; I can add it if it’s important for this case, though.

Went ahead and added lax.

> @? suppresses a number of errors. Perhaps I should add a variant of the error-raising query that passes the silent arg, which would also suppress the error.

Added a variant where the silent param suppresses the error, too.

V2 attached and the PR updated:

  https://github.com/theory/postgres/pull/4/files

Best,

David




HI! Now it looks good for me.
Best regards, Stepan Neretin.

pgsql-hackers by date:

Previous
From: shveta malik
Date:
Subject: Re: Conflict Detection and Resolution
Next
From: Masahiko Sawada
Date:
Subject: Re: Track the amount of time waiting due to cost_delay