aboutsummaryrefslogtreecommitdiff
path: root/src/pl/plpython/sql/plpython_function.sql
Commit message (Collapse)AuthorAge
* Split the plpython regression test into test cases arranged by topic, insteadPeter Eisentraut2009-08-12
| | | | | | 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.
* Defend against possible crash if a plpython function does not specify namesTom Lane2009-04-03
| | | | | | | | 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
* Fix plpython to not get totally confused by OUT arguments. (It still doesn'tTom Lane2008-05-03
| | | | | | support multiple OUT arguments, though.) Hannu Krosing
* Remove use of whrandom module, which was removed in Python 2.5.Peter Eisentraut2006-10-16
|
* Allow PL/python to return composite types and result setsBruce Momjian2006-09-02
| | | | Sven Suursoho
* Looks like the new plpython regression test fails on older pythons. See if ↵Andrew Dunstan2006-05-27
| | | | this works.
* Add table_name and table_schema to plpython trigger data, plus docs and ↵Andrew Dunstan2006-05-26
| | | | regression test.
* Adjust plpython for escape_string_warning.Bruce Momjian2006-03-08
|
* Adjust PL regression tests for escape_string_warning.Bruce Momjian2006-03-08
|
* Allow PL/Python functions to return void, per gripe from James RobinsonNeil Conway2006-02-28
| | | | | | | (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.
* This patch addresses the problem mentioned in the "process crashBruce Momjian2005-07-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Remove read_file/write_file tests. These were originally intended toTom Lane2005-06-20
| | | | | | | | | *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.
* Convert the existing regression test scripts for the various optionalTom Lane2005-05-14
PLs to use the standard pg_regress infrastructure. No changes in the tests themselves. Andrew Dunstan