Re: New 9.5.0100 does not work properly

From: Walter Willmertinger <willmis(at)gmail(dot)com>
To: "Inoue, Hiroshi" <h-inoue(at)dream(dot)email(dot)ne(dot)jp>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
Cc: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>, pgsql-odbc(at)postgresql(dot)org
Subject: Re: New 9.5.0100 does not work properly
Date: 2016-01-20 08:39:37
Message-ID: CAHbMG0U+dVBXtjqf6qkffhx4gR4sop780sBc6dntpcDeiaTkeA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

I switched on "Server side prepare" and it is working better.
But in our VBA we programmed "Boolean" as "Char". So we switched this to
"On" in settings.
Now we have no write conflict, but we get this message:

[image: Inline image 1]

For testing purpose, I switched "Bool as Char" to "Off" and it seems to
work with "Server side prepare".

So we will switch back to 9.3, as 9.4 and 9.5 are not working!

Regards
Walter Willmertinger

Inoue, Hiroshi <h-inoue(at)dream(dot)email(dot)ne(dot)jp> schrieb am Mo., 18. Jan. 2016 um
13:38 Uhr:

> Hi Walter and Heikki,
>
> Probably I found the cause.
>
>
> On 2016/01/12 17:36, Walter Willmertinger wrote:
>
> The "Write Conflict" is independent of the setting "row versioning". When
> I strted it was switched off. I switched to "On", but the same result.
>
> *Here is an excerpt from mylog:*
>
>
> *[7.065]conn=000001F55B153090, query='SELECT
> "KundenCode","DatumEreignis","AufnahmeDurchPersonalNr","WeiterAnPersonalNr","Status","Notiz","KdID","Prioritaet","ProgErledigt","update_cs","ZuletztBearbeitetPersonalNr"
> FROM "public"."Notizen" WHERE "KundenCode" = E'1' AND "KdID" = 83' *
>
>
> Doesn't the target table contain boolean items?
> Then the driver has to handle parse and describe message before executing
> the
> update query.
>
>
>
>
>
> *[8.455]ParseAndDescribeWithLibpq: plan_name= query=UPDATE
> "public"."Notizen" SET "Notiz"=$1 WHERE "KundenCode" = $2 AND "KdID" = $3
> AND "DatumEreignis" = $4 AND "AufnahmeDurchPersonalNr" = $5 AND
> "WeiterAnPersonalNr" = $6 AND "Status" = $7 AND "Prioritaet" IS NULL AND
> "ProgErledigt" = $8 AND "update_cs" = $9 AND "ZuletztBearbeitetPersonalNr"
> IS NULL [8.456]conn=000001F55B153090, query='BEGIN' [8.457]ParseWithLibpq:
> plan_name= query=UPDATE "public"."Notizen" SET "Notiz"=$1 WHERE
> "KundenCode" = $2 AND "KdID" = $3 AND "DatumEreignis" = $4 AND
> "AufnahmeDurchPersonalNr" = $5 AND "WeiterAnPersonalNr" = $6 AND "Status" =
> $7 AND "Prioritaet" IS NULL AND "ProgErledigt" = $8 AND "update_cs" = $9
> AND "ZuletztBearbeitetPersonalNr" IS NULL *
>
>
> But a simple query is issued without using extended protocol because the
> *Server side prepare* option is turned off.
>
>
>
> *[8.460]conn=000001F55B153090, query='UPDATE "public"."Notizen" SET
> "Notiz"=E'Test xxx' WHERE "KundenCode" = E'1' AND "KdID" = 83 AND
> "DatumEreignis" = E'2015-09-30 13:48:13'::timestamp AND
> "AufnahmeDurchPersonalNr" = 80 AND "WeiterAnPersonalNr" = 80 AND "Status" =
> E'E' AND "Prioritaet" IS NULL AND "ProgErledigt" = E'0' AND "update_cs" =
> E'2015-09-30 13:48:15'::timestamp AND "ZuletztBearbeitetPersonalNr" IS
> NULL' *
>
>
>
>
>
> *Though this update returns the response 'UPDATE 1', SQLRowCount() doesn't
> work as expected due to SC_set_Result() in prepareParameters(). *
>
> *[8.464]conn=000001F55B153090, query='ROLLBACK'*
>
>
>
>
>
>
>
>
>
>
> *One way to avoid the bug is to turn on the *Server side prepare* option.
> Though an appropriate bug fix is not clear to me, the attached patch is an
> example. regards, Hiroshi Inoue *
>

In response to

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Inoue, Hiroshi 2016-01-20 11:03:56 Re: Re: 9.0.5 issue - duplicate rows returned when using SQL_ATTR_ROW_ARRAY_SIZE attribute
Previous Message Alvaro Herrera 2016-01-19 22:28:04 [Raiford@labware.com: Re: float8 column size defined as 15 instead of 53?]