Re: pgsql: SQL/JSON: Avoid initializing unnecessary ON ERROR / ON EMPTY ste
От | Amit Langote |
---|---|
Тема | Re: pgsql: SQL/JSON: Avoid initializing unnecessary ON ERROR / ON EMPTY ste |
Дата | |
Msg-id | CA+HiwqHEFbjS5_dNBo39NmT-j7vTdmZn7HNM1ZN0-NjUfSBxFg@mail.gmail.com обсуждение исходный текст |
Ответ на | pgsql: SQL/JSON: Avoid initializing unnecessary ON ERROR / ON EMPTY ste (Amit Langote <amitlan@postgresql.org>) |
Ответы |
Re: pgsql: SQL/JSON: Avoid initializing unnecessary ON ERROR / ON EMPTY ste
|
Список | pgsql-committers |
On Fri, Sep 6, 2024 at 12:07 PM Amit Langote <amitlan@postgresql.org> wrote: > SQL/JSON: Avoid initializing unnecessary ON ERROR / ON EMPTY steps > > When the ON ERROR / ON EMPTY behavior is to return NULL, returning > NULL directly from ExecEvalJsonExprPath() suffices. Therefore, there's > no need to create separate steps to check the error/empty flag or > those to evaluate the the constant NULL expression. This speeds up > common cases because the default ON ERROR / ON EMPTY behavior for > JSON_QUERY() and JSON_VALUE() is to return NULL. However, these steps > are necessary if the RETURNING type is a domain, as constraints on the > domain may need to be checked. > > Reported-by: Jian He <jian.universality@gmail.com> > Author: Jian He <jian.universality@gmail.com> > Author: Amit Langote <amitlangote09@gmail.com> > Discussion: https://postgr.es/m/CACJufxEo4sUjKCYtda0_qt9tazqqKPmF1cqhW9KBOUeJFqQd2g@mail.gmail.com > Backpatch-through: 17 > > Branch > ------ > master > > Details > ------- > https://git.postgresql.org/pg/commitdiff/3a97460970f344660971ee75d7f5a181bf87f633 > > Modified Files > -------------- > src/backend/executor/execExpr.c | 30 ++++++++++++++++++++++-------- > 1 file changed, 22 insertions(+), 8 deletions(-) This or one of the other of my recent commits have broken some BF animals, so reverting for now. -- Thanks, Amit Langote
В списке pgsql-committers по дате отправления: