Re: plpython improvements

From: "Sven Suursoho" <sven(at)spam(dot)pri(dot)ee>
To: "Bruce Momjian" <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-patches(at)postgresql(dot)org
Subject: Re: plpython improvements
Date: 2006-05-04 15:21:36
Message-ID: op.s808yazgplgmb3@localhost
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

Hi,

Sun, 30 Apr 2006 19:14:28 +0300, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>:

> "Sven Suursoho" <sven(at)spam(dot)pri(dot)ee> writes:
>> Unfortunately, there is still one problem when using unpatched python,
>> caused by too aggressive assert.
>> http://mail.python.org/pipermail/python-checkins/2005-August/046571.html.
>
> I don't think we are going to be able to accept a patch that causes the
> server to crash when using any but a bleeding-edge copy of Python.

Did complete rewrite for SETOF functions: now accepts any python object
for which iter(object) returns iterable object. In this way we don't have
to deal with specific containers but can use unified python iterator API.
It means that plpython is future-proof -- whenever python introduces new
container, stored procedures already can use those without recompiling
language handler.

Also integrated with regression tests and updated existing tests to use
named parameters.

When using python interpreter with asserts enabled, generators still
crash. But I don't think that we should drop this feature because of that.
Reasons:
1) this is someone else's bug, we are using documented API correctly
2) it doesn't concern majority of users because probably there is no
asserts in production packages (tested with gentoo, ubuntu, suse). This is
true even for older python versions that are not patched.

And after all, we can document using sets, lists, tuples, iterators etc
and explicitly state that returning generator is undefined.

--
Sven Suursoho

Attachment Content-Type Size
plpython.patch text/x-patch 32.3 KB

In response to

Responses

Browse pgsql-patches by date

  From Date Subject
Next Message Jonah H. Harris 2006-05-04 16:23:37 Re: INS/UPD/DEL RETURNING for 8.2
Previous Message Fabien COELHO 2006-05-04 15:10:11 cast bytea to/from bit strings