Re: Bug in clear_error in SQLExecute? - Mailing list pgsql-odbc

From 'Ludek Finstrle'
Subject Re: Bug in clear_error in SQLExecute?
Date
Msg-id 20040110141236.GA19067@soptik.pzkagis.cz
Whole thread Raw
In response to Re: Bug in clear_error in SQLExecute?  ("Hiroshi Inoue" <inoue@tpf.co.jp>)
List pgsql-odbc
> Hiroshi Inoue
>
> > Ludek Finstrle
> >
> >   I think I found a bug in SQLExecute. IMHO SC_clean_error should be
> > called there only sometimes as you can see from my patch created
> > againist fresh CVS snapshot.
> >
> > Without this patch application fail becouse error is produced in Fetch
> > instead of in Execute.
>
> Could you explain the examples ?

I can. I attach part of mylog output where the problem is described.
I try explain it in english and I hope you can understand.

Application call select on non-exists table. It's allocate stmt then
it prepare stmt. Then it call NumResultCols. Error raise in this
function but it return SQL_SUCCESS (I think this is right) and set
stmt status to STMT_PREMATURE. Then it call Execute. There is
clean_error so it return SQL_SUCCES and I think this is wrong>.
After it app call Fetch and it fail.

Application doesn't expect failure in Fetch after success execute.
I don't have source for app because it's commercial one. So I can't
change it's behaviour. I tried create table but app fails later.

When I patch psqlodbc it's doing what I expect. But I'm not sure
if it's good for all situations. I don't see so far.

The opposite one situation which I think about is execute twice or
more times with different binding parameters. So I add test status
to STMT_FINISHED. As I said I'm not sure if it's correct.

Best regards

Luf

Attachment

pgsql-odbc by date:

Previous
From: "Hiroshi Inoue"
Date:
Subject: Re: Bug in clear_error in SQLExecute?
Next
From: Ludek Finstrle
Date:
Subject: schema and win1250 support + misc