Re: How to get error message details from libpq based psqlODBC driver(regression) - Mailing list pgsql-general

From Adrian Klaver
Subject Re: How to get error message details from libpq based psqlODBC driver(regression)
Date
Msg-id a4546360-1fa0-b6e5-b2ad-f99b84f352f0@aklaver.com
Whole thread Raw
In response to How to get error message details from libpq based psqlODBC driver (regression)  ("Andrus" <kobruleht2@hot.ee>)
Responses Re: How to get error message details from libpq based psqlODBC driver(regression)  (Ron <ronljohnsonjr@gmail.com>)
Re: How to get error message details from libpq based psqlODBC driver (regression)  ("Andrus" <kobruleht2@hot.ee>)
List pgsql-general
On 2/22/20 2:37 PM, Andrus wrote:
> 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


What does the log_error_verbosity setting in postgresql.conf show?

> 
> Andrus.
> 
> 


-- 
Adrian Klaver
adrian.klaver@aklaver.com



pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: How to fix 0xC0000005 exception in Postgres 9.0
Next
From: Ron
Date:
Subject: Re: How to get error message details from libpq based psqlODBC driver(regression)