From: | Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com> |
---|---|
To: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | PL/Python: Add cursor and execute methods to plan object |
Date: | 2017-02-25 18:27:06 |
Message-ID: | 8b46d680-47ef-f48d-93ff-16aac47f69c9@2ndquadrant.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Something that has been bothering me in PL/Python for a long time is the
non-object-oriented way in which plans are prepared and executed:
plan = plpy.prepare(...)
res = plpy.execute(plan, ...)
where plpy.execute() takes either a plan or a query string.
I think a better style would be
plan = plpy.prepare(...)
res = plan.execute(...)
so that the "plan" is more like a statement handle that one finds in
other APIs.
This ended up being very easy to implement, so I'm proposing to allow
this new syntax as an alternative.
I came across this again as I was developing the background sessions API
for PL/Python. So I'm also wondering here which style people prefer so
I can implement it there.
--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Attachment | Content-Type | Size |
---|---|---|
0001-PL-Python-Add-cursor-and-execute-methods-to-plan-obj.patch | text/x-patch | 9.2 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2017-02-25 18:34:31 | Re: btree_gin and btree_gist for enums |
Previous Message | Tom Lane | 2017-02-25 18:14:07 | I propose killing PL/Tcl's "modules" infrastructure |