Re: jsonpath - Mailing list pgsql-hackers

From Alexander Korotkov
Subject Re: jsonpath
Date
Msg-id CAPpHfdtRC8CfnXA-a4f5vidVdMSveVMVa904qfO6tevqeZQDag@mail.gmail.com
Whole thread Raw
In response to Re: jsonpath  (Andres Freund <andres@anarazel.de>)
Responses Re: jsonpath  (Alexander Korotkov <a.korotkov@postgrespro.ru>)
Re: jsonpath  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Tue, Jan 29, 2019 at 4:03 AM Andres Freund <andres@anarazel.de> wrote:
> On 2019-01-29 04:00:19 +0300, Alexander Korotkov wrote:
> > +     /*
> > +      * It is safe to use here PG_TRY/PG_CATCH without subtransaction because
> > +      * no function called inside performs data modification.
> > +      */
> > +     PG_TRY();
> > +     {
> > +             res = DirectFunctionCall2(func, ldatum, rdatum);
> > +     }
> > +     PG_CATCH();
> > +     {
> > +             int                     errcode = geterrcode();
> > +
> > +             if (jspThrowErrors(cxt) ||
> > +                     ERRCODE_TO_CATEGORY(errcode) != ERRCODE_DATA_EXCEPTION)
> > +                     PG_RE_THROW();
> > +
> > +             MemoryContextSwitchTo(mcxt);
> > +             FlushErrorState();
> > +
> > +             return jperError;
> > +     }
> > +     PG_END_TRY();

BTW, this code also looks... useless.  I can't see whole numeric.c
throwing ERRCODE_DATA_EXCEPTION.   Nikita, what do we mean here?

------
Alexander Korotkov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Header checking failures on LLVM-less machines
Next
From: Andres Freund
Date:
Subject: Re: jsonpath