SQL/JSON revisited - Mailing list pgsql-hackers

From Amit Langote
Subject SQL/JSON revisited
Date
Msg-id CA+HiwqHROpf9e644D8BRqYvaAPmgBZVup-xKMDPk-nd4EpgzHw@mail.gmail.com
Whole thread Raw
Responses Re: SQL/JSON revisited  (Amit Langote <amitlangote09@gmail.com>)
Re: SQL/JSON revisited  (Elena Indrupskaya <e.indrupskaya@postgrespro.ru>)
Re: SQL/JSON revisited  (Amit Langote <amitlangote09@gmail.com>)
List pgsql-hackers
Hi,

Rebased the SQL/JSON patches over the latest HEAD.  I've decided to
keep the same division of code into individual commits as that
mentioned in the revert commit 2f2b18bd3f, squashing fixup commits in
that list into the appropriate feature commits.

The main difference from the patches as they were committed into v15
is that JsonExpr evaluation no longer needs to use sub-transactions,
thanks to the work done recently to handle type errors softly.  I've
made the new code pass an ErrorSaveContext into the type-conversion
related functions as needed and also added an ExecEvalExprSafe() to
evaluate sub-expressions of JsonExpr that might contain expressions
that call type-conversion functions, such as CoerceViaIO contained in
JsonCoercion nodes.  ExecExprEvalSafe() is based on one of the patches
that Nikita Glukhov had submitted in a previous discussion about
redesigning SQL/JSON expression evaluation [1].  Though, I think that
new interface will become unnecessary after I have finished rebasing
my patches to remove subsidiary ExprStates of JsonExprState that we
had also discussed back in [2].

Adding this to January CF.

-- 
Thanks, Amit Langote
EDB: http://www.enterprisedb.com

[1] https://www.postgresql.org/message-id/c3b315b6-1e9f-6aa4-8708-daa19cf3f1a3%40postgrespro.ru
[2] https://postgr.es/m/20220616233130.rparivafipt6doj3@alap3.anarazel.de

Attachment

pgsql-hackers by date:

Previous
From: Amul Sul
Date:
Subject: Re: Error-safe user functions
Next
From: Amit Langote
Date:
Subject: Re: SQL/JSON revisited