Re: Bug in jsonb_in function (14 & 15 version are affected) - Mailing list pgsql-hackers

From Yura Sokolov
Subject Re: Bug in jsonb_in function (14 & 15 version are affected)
Date
Msg-id 23d202968dfbc84468cc9cf384819fc31eb10788.camel@postgrespro.ru
Whole thread Raw
In response to Re: Bug in jsonb_in function (14 & 15 version are affected)  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
В Пн, 13/03/2023 в 13:58 -0400, Tom Lane пишет:
> Nikolay Shaplov <dhyan@nataraj.su> writes:
> > I found a bug in jsonb_in function (it converts json from sting representation
> >  into jsonb internal representation).
>
> Yeah.  Looks like json_lex_string is failing to honor the invariant
> that it needs to set token_terminator ... although the documentation
> of the function certainly isn't helping.  I think we need the attached.
>
> A nice side benefit is that the error context reports get a lot more
> useful --- somebody should have inquired before as to why they were
> so bogus.
>
>                         regards, tom lane
>

Good day, Tom and all.

Merged patch looks like start of refactoring.

Colleague (Nikita Glukhov) propose further refactoring of jsonapi.c:
- use of inline functions instead of macroses,
- more uniform their usage in token success or error reporting,
- simplify json_lex_number and its usage a bit.
Also he added tests for fixed bug.


-----

Regards,
Yura Sokolov.

Attachment

pgsql-hackers by date:

Previous
From: Bharath Rupireddy
Date:
Subject: Re: Add macros for ReorderBufferTXN toptxn
Next
From: Amit Kapila
Date:
Subject: Re: Add macros for ReorderBufferTXN toptxn