Re: [ODBC] Problem with postgres 9.6 ODBC drivers

Поиск
Список
Период
Сортировка
От Pandian, Jegan
Тема Re: [ODBC] Problem with postgres 9.6 ODBC drivers
Дата
Msg-id 6591B4AAC7D5944EBA4E72533AAE274E4F3F5F1B@MX301CL01.corp.emc.com
обсуждение исходный текст
Ответ на [ODBC] Problem with postgres 9.6 ODBC drivers  ("Pandian, Jegan" <Jegan.Pandian@dell.com>)
Ответы Re: [ODBC] Problem with postgres 9.6 ODBC drivers  ("Inoue, Hiroshi" <h-inoue@dream.email.ne.jp>)
Список pgsql-odbc

Team,

 

Can you please help us on this, as we were not able to continue our further testing with 09.06 Windows ODBC drivers.

 

Thanks,
Jegan

 

From: Pandian, Jegan
Sent: Tuesday, April 11, 2017 1:24 PM
To: 'pgsql-odbc-owner@postgresql.org'
Subject: Problem with postgres 9.6 ODBC drivers

 

Hi Postgres ODBC team,

 

Our application is failing with the latest windows odbc (postgres) drivers, because it’s not updating sequence table at al.

So we will always get the same id when we try to create any new object, ending up in unique constraint violation error.

Debugged postgres odbc driver code (https://www.postgresql.org/ftp/odbc/versions/src/) and found the below:

 

File: results.c

Method: static void KeySetSet(const TupleField *tuple, int num_fields, int num_key_fields, KeySet *keyset)

Problematic change: keyset->status = 0;

 

We will execute all queries with status 1024, now for some reason status  has been re-initialized to 0. Because of this, update call itself is not getting invoked (code below)

 

spos_callback function:

#define      CURS_IN_ROWSET             (1L << 10)

             if (0 == (res->keyset[kres_ridx].status & CURS_IN_ROWSET))

                    continue;

 

status: 34

CURS_IN_ROWSET: 1024

34 & 1024 => 0

 

If the status was not reset, then keyset[kres-ridex].status will be 1024+ 34 => 1058 (behavior for 9.4 and 9.5 drivers),  so will do the update properly.

We need your help to find out why this has been changed in the latest drivers? Is there any specific reason behind this? Is this a bug/any workaround to overcome it?

 

Thanks,
Jegan

В списке pgsql-odbc по дате отправления:

Предыдущее
От: Mehmet Keleş
Дата:
Сообщение: [ODBC] Server Closed the connection unexpectedly
Следующее
От: Adrian Klaver
Дата:
Сообщение: Re: [ODBC] Server Closed the connection unexpectedly