From: | Andrew Dunstan <andrew(at)dunslane(dot)net> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Teodor Sigaev <teodor(at)sigaev(dot)ru>, Pgsql Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: jsonb access operators inefficiency |
Date: | 2014-06-01 23:13:47 |
Message-ID: | 538BB3AB.5070603@dunslane.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 05/30/2014 01:41 PM, Tom Lane wrote:
> Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
>> If we're going to construct varlena objects inside a StringInfo, maybe
>> we need a proper API for it. Isn't there a danger that data member of
>> the StringInfo won't be properly aligned to allow us to do this? In any
>> case, we should get most of the benefit of your patch without this
>> "optimization".
> As noted, the data buffer is maxaligned; but nonetheless I agree that
> this is a serious stylistic abuse, and it's not buying much compared
> to the rest of the patch. I'd stick with the cstring_to_text_with_len
> coding.
>
> At the other end of the process, why are we using PG_GETARG_TEXT_P
> and not PG_GETARG_TEXT_PP to avoid a "detoast" cycle on short-header
> inputs? The function body is using VARDATA_ANY/VARSIZE_ANY_EXHDR,
> so it's already prepared for unaligned input.
>
>
Committed with these changes.
cheers
andrew
From | Date | Subject | |
---|---|---|---|
Next Message | Amit Kapila | 2014-06-02 03:11:40 | Re: pg_sleep() doesn't work well with recovery conflict interrupts. |
Previous Message | Heikki Linnakangas | 2014-06-01 22:33:37 | Re: Extended Prefetching using Asynchronous IO - proposal and patch |