Re: proposal: row_to_array function

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: proposal: row_to_array function
Дата
Msg-id CAFj8pRChXabKMqD4kMXxdtg2EK4BTGXFw6x5+e+wyEQuW=zYWg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: proposal: row_to_array function  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: proposal: row_to_array function  (Pavel Stehule <pavel.stehule@gmail.com>)
Список pgsql-hackers


2015-03-29 20:27 GMT+02:00 Tom Lane <tgl@sss.pgh.pa.us>:
Pavel Stehule <pavel.stehule@gmail.com> writes:
> here is rebased patch.
> It contains both patches - row_to_array function and foreach array support.

While I don't have a problem with hstore_to_array, I don't think that
row_to_array is a very good idea; it's basically encouraging people to
throw away SQL datatypes altogether and imagine that everything is text.

This is complementation of ARRAY API - we have row_to_json, probably will have row_to_jsonb, row_to_hstore and "row_to_array" is relative logical.  Casting to text is not fast, but on second hand - working with text arrays is fast.

I know so casting to text is a problem, but if you iterate over record's fields, then you have to find common shared type due sharing plans - and text arrays can be simple solution.

Now, with current possibilities I'll do full sql expression SELECT key, value FROM each(hstore(ROW)) or FOREACH ARRAY hstore_to_matrix(hstore(ROW))

row_to_array(ROW) can reduce a hstore overhead

any other solution based on PL/Perl or PL/Python are slower due PL engine start and due same transformation to some form of structured text.


 
They've already bought into that concept if they are using hstore or
json, so smashing elements of those containers to text is not a problem.
But that doesn't make this version a good thing.

(In any case, those who insist can get there through row_to_json, no?)

Also, could we please *not* mix up these two very independent features?
"foreach array" as implemented here may or may not be a good thing, but
it should get its own discussion.

ok, I'll send two patches.
 

                        regards, tom lane

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: compute_index_stats is missing a CHECK_FOR_INTERRUPTS
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Relation extension scalability