How to fix psqlODBC driver regression to get error message details

From: "Andrus" <kobruleht2(at)hot(dot)ee>
To: <pgsql-odbc(at)postgresql(dot)org>
Subject: How to fix psqlODBC driver regression to get error message details
Date: 2020-02-22 22:43:46
Message-ID: 00B7D82CD18C4FF2B2F462BA277CADED@dell2
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Hi!

I'm looking for a way to fix psqlODBC driver regression.

Starting at psqlODBC 09.05.0100 when psqlODBC driver uses libpq for all
operations (earlier versions used libpg only for authentication) ODBC client
does not show error message details.

For example, users got only generic error message like

Connectivity error: ERROR: insert or update on table "mytable" violates
foreign key constraint "mytable_myfield_fkey

Error message details like

Key (myfield)=(mykeyvalue) is not present in table "mymastertable".;

are no more returned.

How to detailed error message or at least only bad key value "mykeyvalue"
which is returned in error message details ?

Some ideas:

1. First versions of libpq based ODBC drivers returned same error message
"no resource found" for all errors. Hiroshi has fixed it it later versions.
Maybe psqlODBC code can fixed to restore pre-libpq behaviour.

2. Maybe analyzing odbc logs from pre and after 09.05.0100 drivers may
provide solution. I can provide ODBC log files.

3. psqlODBC allows to pass parameters to libpq from connection string. Maybe
some libpq parameter can fix this.

4. Maybe some Postgres query, postgres extension or direct odbc or libpq
call can used to return last error message details like Windows API
GetLastError() or Unix global errno.

5. Maybe it is possible to to create method which returns error message
detals from postgres log file.

Postgres 12.2 and latest psqlODBC driver 12.01.0000 are used.
psqlODBC is called from Visual FoxPro

Andrus.

Posted also in

https://stackoverflow.com/questions/60357505/how-to-fix-psqlodbc-driver-regression-to-get-error-message-details

and in pgsql-general mailist list.

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Clemens Ladisch 2020-02-23 17:13:59 Re: Error on install ODBC driver
Previous Message Luiz Alano 2020-02-21 13:42:38 Error on install ODBC driver