Re: feature request - datum_compute_size and datum write_should be public

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: feature request - datum_compute_size and datum write_should be public
Дата
Msg-id 14896.1328152276@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: feature request - datum_compute_size and datum write_should be public  (Alvaro Herrera <alvherre@commandprompt.com>)
Список pgsql-hackers
Alvaro Herrera <alvherre@commandprompt.com> writes:
> Excerpts from Jim Nasby's message of mié feb 01 20:47:05 -0300 2012:
>> I'm not certain this in what  Pavel is referring to, but I have often wished that I could pass something like an
arrayinto a function and have the function tell me exactly how much space that would require on-disk. It's pretty easy
tofigure that out for things like varchar and numeric, but doing so for arrays or composite types requires pretty
detailedknowledge of PG internals.
 

> I think you can just use pg_column_size on a composite datum (such as a
> ROW() construct) and it will give you the right number.

If it's a freshly-computed value, pg_column_size will give you the size
of the "raw" datum.  The actual size on disk might be less due to
compression, but I don't think we give you any way to find that out
short of actually storing it in a table.  Note that the rangetype
internal functions Pavel suggests we should expose won't give you the
latter either.
        regards, tom lane


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Shigeru Hanada
Дата:
Сообщение: Re: pgsql_fdw, FDW for PostgreSQL server
Следующее
От: Tom Lane
Дата:
Сообщение: Re: spgist text_ops and LIKE