Re: changed behavior in libpq odbc driver - Mailing list pgsql-odbc

From Scot Loach
Subject Re: changed behavior in libpq odbc driver
Date
Msg-id 71837C040963F748B9B94E123A2896785A108D@mailserver.sandvine.com
Whole thread Raw
In response to changed behavior in libpq odbc driver  ("Scot Loach" <sloach@sandvine.com>)
List pgsql-odbc
In LIBPQ_execute_query():

        qres->status = PQresultStatus(pgres);

In the bad primary key case, this returns PGRES_FATAL_ERROR.


Then, in SC_execute():

        /* Check the status of the result */
        if (res)
        {
                was_ok = QR_command_successful(res);
                was_nonfatal = QR_command_nonfatal(res);
                was_fatal = QR_command_fatal(res);

                if (was_ok)
                        SC_set_errornumber(self, STMT_OK);
                else if (was_fatal)
                        SC_set_errornumber(self,STMT_BAD_ERROR);

And STMT_BAD_ERROR is what returns 08S01 when I call SQLGetDiagRec.

I could really use some help with this...



-----Original Message-----
From:    Dave Page [mailto:dpage@vale-housing.co.uk]
Sent:    Wed 9/7/2005 9:02 AM
To:    Scot Loach; Anoop Kumar
Cc:    pgsql-odbc@postgresql.org
Subject:    RE: [ODBC] changed behavior in libpq odbc driver


> -----Original Message-----
> From: Scot Loach [mailto:sloach@sandvine.com]
> Sent: 07 September 2005 13:48
> To: Dave Page; Anoop Kumar
> Cc: pgsql-odbc@postgresql.org
> Subject: RE: [ODBC] changed behavior in libpq odbc driver
>
> so I'm definitely still able to reproduce this problem.
> The test I'm running is somewhat complex, I can work on
> simplifying it.
> Maybe the error code is left around from before and not
> properly cleared?

Well the only time the error code should be set is if libpq reports the
connection as being bad, so if you're definitely seeing it, it must be
coming from somewhere else, or you're not checking the error code when
it actually arrives.

Can you add a mylog line into the relevant part of the fix I posted so
youo can see if the error code is being set somewhen that you don't
otherwise notice?

Regards Dave



pgsql-odbc by date:

Previous
From: Robin Weber
Date:
Subject: Re: ODBC Driver Failure- MS Access- Large record volume
Next
From: "Dave Page"
Date:
Subject: Re: ODBC Driver on Windows 64 bit