summaryrefslogtreecommitdiff
path: root/src/pl/plpython/sql/plpython_function.sql
AgeCommit message (Collapse)Author
2009-08-12Split the plpython regression test into test cases arranged by topic, insteadPeter Eisentraut
of the previous monolithic setup-create-run sequence, that was apparently inherited from a previous test infrastructure, but makes working with the tests and adding new ones weird.
2009-04-03Defend against possible crash if a plpython function does not specify namesTom Lane
for its arguments. Also add a regression test, since someone apparently changed every single plpython test case to use only named parameters; else we'd have noticed this sooner. Euler Taveira de Oliveira, per a report from Alvaro
2008-05-03Fix plpython to not get totally confused by OUT arguments. (It still doesn'tTom Lane
support multiple OUT arguments, though.) Hannu Krosing
2006-10-16Remove use of whrandom module, which was removed in Python 2.5.Peter Eisentraut
2006-09-02Allow PL/python to return composite types and result setsBruce Momjian
Sven Suursoho
2006-05-27Looks like the new plpython regression test fails on older pythons. See if ↵Andrew Dunstan
this works.
2006-05-26Add table_name and table_schema to plpython trigger data, plus docs and ↵Andrew Dunstan
regression test.
2006-03-08Adjust plpython for escape_string_warning.Bruce Momjian
2006-03-08Adjust PL regression tests for escape_string_warning.Bruce Momjian
2006-02-28Allow PL/Python functions to return void, per gripe from James RobinsonNeil Conway
(I didn't use his patch, however). A void-returning PL/Python function must return None (from Python), which is translated into a void datum (and *not* NULL) for Postgres. I also added some regression tests for this functionality.
2005-07-10This patch addresses the problem mentioned in the "process crashBruce Momjian
when a plpython function returns unicode" thread: http://archives.postgresql.org/pgsql-bugs/2005-06/msg00105.php In several places PL/Python was calling PyObject_Str() and then PyString_AsString() without checking if the former had returned NULL to indicate an error. PyString_AsString() doesn't expect a NULL argument, so passing one causes a segmentation fault. This patch adds checks for NULL and raises errors via PLy_elog(), which prints details of the underlying Python exception. The patch also adds regression tests for these checks. All tests pass on my Solaris 9 box running HEAD and Python 2.4.1. In one place the patch doesn't call PLy_elog() because that could cause infinite recursion; see the comment I added. I'm not sure how to test that particular case or whether it's even possible to get an error there: the value that the code should check is the Python exception type, so I wonder if a NULL value "shouldn't happen." This patch converts NULL to "Unknown Exception" but I wonder if an Assert() would be appropriate. The patch is against HEAD but the same changes should be applied to earlier versions because they have the same problem. The patch might not apply cleanly against earlier versions -- will the committer take care of little differences or should I submit different versions of the patch? Michael Fuhr
2005-06-20Remove read_file/write_file tests. These were originally intended toTom Lane
*fail*, to test that plpython didn't allow untrusted operations. When we changed plpython to plpythonu because python didn't actually have a secure sandbox mode, someone (probably me :-() misinterpreted the tests as checking whether Python's file I/O works. Which is a stupid thing for us to be testing. Remove it so we don't clutter the filesystem with random temporary files.
2005-05-14Convert the existing regression test scripts for the various optionalTom Lane
PLs to use the standard pg_regress infrastructure. No changes in the tests themselves. Andrew Dunstan