Re: Making jsonb_agg() faster
От | jian he |
---|---|
Тема | Re: Making jsonb_agg() faster |
Дата | |
Msg-id | CACJufxGFzbRDnyG-=WZ3RgkVUwOZexUobGDrA3n5bj8MxrAZvQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Making jsonb_agg() faster (jian he <jian.universality@gmail.com>) |
Список | pgsql-hackers |
On Thu, Aug 14, 2025 at 4:59 PM jian he <jian.universality@gmail.com> wrote: > > > 0001 is a somewhat invasive refactoring of the API for > > pushJsonbValue and friends. in pushJsonbValue: /* * pushJsonbValueScalar handles all cases not involving pushing a * container object as an ELEM or VALUE. */ if (!jbval || (seq != WJB_ELEM && seq != WJB_VALUE)) { pushJsonbValueScalar(pstate, seq, jbval); return; } /* If it's not a jbvBinary value, again it goes to pushJsonbValueScalar */ if (jbval->type != jbvBinary) { pushJsonbValueScalar(pstate, seq, jbval); return; } we can combine above these two into if (!jbval || (seq != WJB_ELEM && seq != WJB_VALUE) || IsAJsonbScalar(jbval)) { pushJsonbValueScalar(pstate, seq, jbval); return; } and put it in the earlier position of pushJsonbValue.
В списке pgsql-hackers по дате отправления: