Re: Jsonb transform for pl/python

Поиск
Список
Период
Сортировка
Искать
От
Anthony Bykov
Тема
Re: Jsonb transform for pl/python
Дата
Msg-id
20171211112206.3b4ea92f@anthony-24-g082ur
Ответ на
Список
Дерево обсуждения
[HACKERS] Jsonb transform for pl/python Anthony Bykov <a.bykov@postgrespro.ru>
Re: [HACKERS] Jsonb transform for pl/python David Fetter <david@fetter.org>
Re: [HACKERS] Jsonb transform for pl/python Anthony Bykov <a.bykov@postgrespro.ru>
Re: [HACKERS] Jsonb transform for pl/python David Fetter <david@fetter.org>
Re: [HACKERS] Jsonb transform for pl/python Aleksander Alekseev <a.alekseev@postgrespro.ru>
Re: [HACKERS] Jsonb transform for pl/python Anthony Bykov <a.bykov@postgrespro.ru>
Re: Jsonb transform for pl/python Aleksander Alekseev <a.alekseev@postgrespro.ru>
Re: Jsonb transform for pl/python Anthony Bykov <a.bykov@postgrespro.ru>
Re: Jsonb transform for pl/python Aleksander Alekseev <a.alekseev@postgrespro.ru>
Re: Jsonb transform for pl/python Anthony Bykov <a.bykov@postgrespro.ru>
Re: Jsonb transform for pl/python Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Re: Jsonb transform for pl/python Anthony Bykov <a.bykov@postgrespro.ru>
Re: Jsonb transform for pl/python Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Re: Jsonb transform for pl/python Tom Lane <tgl@sss.pgh.pa.us>
Re: Jsonb transform for pl/python Thomas Munro <thomas.munro@enterprisedb.com>
Re: Jsonb transform for pl/python Anthony Bykov <a.bykov@postgrespro.ru>
Re: Jsonb transform for pl/python Aleksander Alekseev <a.alekseev@postgrespro.ru>
Re: Jsonb transform for pl/python Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Re: Jsonb transform for pl/python Nikita Glukhov <n.gluhov@postgrespro.ru>
Re: Jsonb transform for pl/python Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Re: Jsonb transform for pl/python Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Re: Jsonb transform for pl/python Nikita Glukhov <n.gluhov@postgrespro.ru>
Re: Jsonb transform for pl/python Alexander Korotkov <a.korotkov@postgrespro.ru>
Re: Jsonb transform for pl/python Nikita Glukhov <n.gluhov@postgrespro.ru>
Re: Jsonb transform for pl/python Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Re: Jsonb transform for pl/python Tom Lane <tgl@sss.pgh.pa.us>
Re: Jsonb transform for pl/python Alexander Korotkov <a.korotkov@postgrespro.ru>
Re: Jsonb transform for pl/python Nikita Glukhov <n.gluhov@postgrespro.ru>
Re: Jsonb transform for pl/python Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Re: Jsonb transform for pl/python Michael Paquier <michael.paquier@gmail.com>
On Sat, 9 Dec 2017 16:57:05 -0500
Peter Eisentraut  wrote:

> On 12/6/17 06:40, Anthony Bykov wrote:
> > Hello,
> > fixed the issues:
> > 1. Rising errors when invalid object being transformed.
> > 2. We don't rise the exception when transforming range(3) only in
> > python 2. In third one it is an error.
> > 
> > Please, find the 4-th version of the patch in attachments to this
> > message.  
> 
> Why not make this part of the plpythonu extension?  It doesn't have to
> be a separate contrib module.
> 

Hello,
I thought about that, but the problem is that there will be no
possibilities to create custom transform if we create this extension by
default. For example, it is easy to check if we install this extension
and try to create new transform:

# create extension jsonb_plperl cascade;
NOTICE:  installing required extension "plperl"
CREATE EXTENSION

# CREATE TRANSFORM FOR jsonb LANGUAGE plperl (
#     FROM SQL WITH FUNCTION jsonb_to_plperl(internal),
#     TO SQL WITH FUNCTION plperl_to_jsonb(internal)
# );
2017-12-11 10:23:07.507 MSK [19149] ERROR:  transform for type jsonb
language "plperl" already exists 2017-12-11 10:23:07.507 MSK [19149]
STATEMENT:  CREATE TRANSFORM FOR jsonb LANGUAGE plperl ( FROM SQL WITH
FUNCTION jsonb_to_plperl(internal), TO SQL WITH FUNCTION
plperl_to_jsonb(internal) );
ERROR:  transform for type jsonb language "plperl" already exists

Other types of transforms may be interesting for people when they want
to transform the jsonb to certain structures. For example, what if the
user wants the parameter to be always array inside the function, while
this extension can return integers or strings in some cases.

--
Anthony Bykov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

В списке pgsql-hackers по дате отправления
От: Ashutosh Bapat
Дата:
От: Ashutosh Bapat
Дата:
FAQ