Re: Patch bug: Fix jsonpath .* on Arrays

From: "David E(dot) Wheeler" <david(at)justatheory(dot)com>
To: Степан Неретин <fenixrnd(at)mail(dot)ru>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
Subject: Re: Patch bug: Fix jsonpath .* on Arrays
Date: 2024-06-26 18:16:05
Message-ID: E862A9FB-E09A-428C-B27E-6671B05A845A@justatheory.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Jun 25, 2024, at 13:48, David E. Wheeler <david(at)justatheory(dot)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

Attachment Content-Type Size
v2-0001-Add-tests-for-jsonpath-.-on-arrays.patch application/octet-stream 4.1 KB
unknown_filename text/plain 2 bytes

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Ranier Vilela 2024-06-26 18:28:33 Re: JIT causes core dump during error recovery
Previous Message Tom Lane 2024-06-26 18:09:28 JIT causes core dump during error recovery