Re: [PATCHES] Eliminate more detoast copies for packed varlenas - Mailing list pgsql-hackers

From Gregory Stark
Subject Re: [PATCHES] Eliminate more detoast copies for packed varlenas
Date
Msg-id 87abrcf8uy.fsf@oxford.xeocode.com
Whole thread Raw
In response to Re: [PATCHES] Eliminate more detoast copies for packed varlenas  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [PATCHES] Eliminate more detoast copies for packed varlenas
List pgsql-hackers
"Tom Lane" <tgl@sss.pgh.pa.us> writes:

> (It might be interesting to make textin produce a packed result when
> possible, just to see what breaks; but I would be afraid to try to do
> that for production...)

Reassuringly all checks pass with a hack like that in place. (attached)

I think the right approach here is to define a new type text_packed * (which
would just be a char* or varattrib_1b* or something like that). Then
PG_GETARG_*_PP would return one of these new pointers.

This does leave us with warnings whenever an old-style function calls a
new-style function but I think there would be relatively few of those since
we'll tackle the higher traffic areas first which will be the lower level
functions.

The benefit is that it will give us a warning if we try to pass a pointer from
a new-style function to an old-style function which isn't prepared to receive
it.


--
  Gregory Stark
  EnterpriseDB          http://www.enterprisedb.com

Attachment

pgsql-hackers by date:

Previous
From: Thea
Date:
Subject: Re: LIKE wildcards escaping problem
Next
From: Tom Lane
Date:
Subject: Re: Bytea as C string in pg_convert?