[PATCH] Automatic fetching of refcursors

From: Adrian Grucza <adrian(dot)grucza(at)iress(dot)com>
To: pgsql-odbc(at)lists(dot)postgresql(dot)org
Subject: [PATCH] Automatic fetching of refcursors
Date: 2021-05-17 02:20:54
Message-ID: CADF4wWrq1Oex-=eqS5-Wsb83oOPW1z3NFa3wUKzDwzicrip3yQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Hi all,

I've created a patch that enables automatic fetching of refcursors from a
function/procedure. Functions/procedures can return one or more refcursors,
and the client application can then consume them the way multiple result
sets are normally consumed via ODBC.

Below is a summary of the attached patches:

0001 (`regress.ps1` changes unrelated to refcursors)
* Allow installation and testing of a debug build of the driver (useful
for debugging)
* Fixed a bug in `regress.ps1` where accepting the default password of
`postgres` did not work

0002
* Added a FetchRefcursors setting
* When FetchRefcursors is enabled, executes some refcursor code in
`statement.c` that already existed but was not compiled in due to
REFCUR_SUPPORT not being #defined

0003
* Enhanced refcursor code to support multiple refcursors
* Fixed an issue where output parameter bindings were not processed when
using refcursors
* Added a `fetch-refcursors` regression test

Notes:
* Client application must execute the statement in a transaction to avoid
cursors being closed prematurely (i.e. turn auto-commit off)
* Works with both ODBC CALL and PostgreSQL CALL syntaxes
* A search through the mailing list archive shows that refcursor support
is a feature that multiple people have wanted

Regards,

Adrian Grucza
Technical Lead
Tel: +61390185800
adrian(dot)grucza(at)iress(dot)com
www.iress.com
Level 16, 385 Bourke Street,
Melbourne, Victoria, 3000
The contents of this email originated from Iress. For this purpose Iress includes Iress Limited and/or any of its subsidiaries, holding companies and trading entities. ​If you have received this email in error please notify the sender immediately and delete this email.
nosig

Attachment Content-Type Size
0001-Add-DriverConfiguration-param-fix-default-passwd.patch application/octet-stream 2.0 KB
0002-Remove-REFCUR_SUPPORT-add-FetchRefcursors-setting.patch application/octet-stream 9.9 KB
0003-Support-fetching-results-from-multiple-refcursors.patch application/octet-stream 11.2 KB

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Inoue,Hiroshi 2021-05-17 06:35:47 Re: [PATCH] Automatic fetching of refcursors
Previous Message David Parenteau 2021-05-12 13:35:01 Re: ODBC Calling Fill - Unexptected closed connection after 2 hours