Thread: Re: 08.00.0002 useless :-)

Re: 08.00.0002 useless :-)

From
"Dave Page"
Date:

> -----Original Message-----
> From: pgsql-odbc-owner@postgresql.org
> [mailto:pgsql-odbc-owner@postgresql.org] On Behalf Of Johann Zuschlag
> Sent: 08 November 2004 17:59
> To: pgsql-odbc@postgresql.org
> Subject: [ODBC] 08.00.0002 useless :-)
>
> Hello,
>
> somebody already mentioned it. I just want to repeat it. As
> long as the driver produces strings like this:
>
> CREATE TABLE FOO (Userid varchar()(10) NOT NULL, Mcode
> varchar()(25)...
>
> it is unfortunately useless. The backend will never accept it.
>
> I'm sure Hiroshi had something different in mind when he
> changed that part of the code.
>
> Does somebody work on that?

When exactly does the ODBC driver generate CREATE TABLE queries?

Regards, Dave

Re: 08.00.0002 useless :-)

From
Johann Zuschlag
Date:
Dave Page wrote:

>
>
>
>
>>-----Original Message-----
>>From: pgsql-odbc-owner@postgresql.org
>>[mailto:pgsql-odbc-owner@postgresql.org] On Behalf Of Johann Zuschlag
>>Sent: 08 November 2004 17:59
>>To: pgsql-odbc@postgresql.org
>>Subject: [ODBC] 08.00.0002 useless :-)
>>
>>Hello,
>>
>>somebody already mentioned it. I just want to repeat it. As
>>long as the driver produces strings like this:
>>
>>CREATE TABLE FOO (Userid varchar()(10) NOT NULL, Mcode
>>varchar()(25)...
>>
>>it is unfortunately useless. The backend will never accept it.
>>
>>I'm sure Hiroshi had something different in mind when he
>>changed that part of the code.
>>
>>Does somebody work on that?
>>
>>
>
>When exactly does the ODBC driver generate CREATE TABLE queries?
>
>Regards, Dave
>
>
>
Hi Dave,

well, my application tries to create the table and the driver adds the
"()". The old legacy driver didn't have that behavior, i.e. didn't
change my query. I don't understand why the driver adds the parenthesis.

Unfortunately I don't know the driver very well. Do you know where the
parenthesis's are added?

Regards,

Johann


Re: 08.00.0002 useless :-)

From
"Dave Page"
Date:

> -----Original Message-----
> From: Johann Zuschlag [mailto:zuschlag2@online.de]
> Sent: 09 November 2004 12:23
> To: Dave Page
> Subject: Re: [ODBC] 08.00.0002 useless :-)
>
> >
> >When exactly does the ODBC driver generate CREATE TABLE queries?
> >
> >Regards, Dave
> >
> >
> >
> Hi Dave,
>
> well, my application tries to create the table and the driver
> adds the "()". The old legacy driver didn't have that
> behavior, i.e. didn't change my query. I don't understand why
> the driver adds the parenthesis.
>
> Unfortunately I don't know the driver very well. Do you know
> where the parenthesis's are added?

Haven't got the foggiest - as far as I'm aware it doesn't even try to
parse such statements when executed the 'normal' way (i.e. with
SQLExecDirect or even SQLExecute). I just tried both here and they
worked fine - how are you executing the query?

Regards, Dave

Re: 08.00.0002 useless :-)

From
"Scot Loach"
Date:
I think I fixed this problem.
See the patch here.
http://gborg.postgresql.org/project/psqlodbc/bugs/bugupdate.php?996

scot.


-----Original Message-----
From: pgsql-odbc-owner@postgresql.org
[mailto:pgsql-odbc-owner@postgresql.org]On Behalf Of Johann Zuschlag
Sent: Tuesday, November 09, 2004 7:37 AM
To: pgsql-odbc@postgresql.org
Subject: Re: [ODBC] 08.00.0002 useless :-)


Dave Page wrote:

>
>
>
>
>>-----Original Message-----
>>From: pgsql-odbc-owner@postgresql.org
>>[mailto:pgsql-odbc-owner@postgresql.org] On Behalf Of Johann Zuschlag
>>Sent: 08 November 2004 17:59
>>To: pgsql-odbc@postgresql.org
>>Subject: [ODBC] 08.00.0002 useless :-)
>>
>>Hello,
>>
>>somebody already mentioned it. I just want to repeat it. As
>>long as the driver produces strings like this:
>>
>>CREATE TABLE FOO (Userid varchar()(10) NOT NULL, Mcode
>>varchar()(25)...
>>
>>it is unfortunately useless. The backend will never accept it.
>>
>>I'm sure Hiroshi had something different in mind when he
>>changed that part of the code.
>>
>>Does somebody work on that?
>>
>>
>
>When exactly does the ODBC driver generate CREATE TABLE queries?
>
>Regards, Dave
>
>
>
Hi Dave,

well, my application tries to create the table and the driver adds the
"()". The old legacy driver didn't have that behavior, i.e. didn't
change my query. I don't understand why the driver adds the parenthesis.

Unfortunately I don't know the driver very well. Do you know where the
parenthesis's are added?

Regards,

Johann


---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org

Re: 08.00.0002 useless :-)

From
"Dave Page"
Date:
Ahh, yes,of course. Sorry Scot, that fell off my todo somehow. Patch
applied.

Johann, do you want an updated DLL to test?

Regards, Dave

> -----Original Message-----
> From: pgsql-odbc-owner@postgresql.org
> [mailto:pgsql-odbc-owner@postgresql.org] On Behalf Of Scot Loach
> Sent: 10 November 2004 16:57
> To: Johann Zuschlag; pgsql-odbc@postgresql.org
> Subject: Re: [ODBC] 08.00.0002 useless :-)
>
> I think I fixed this problem.
> See the patch here.
> http://gborg.postgresql.org/project/psqlodbc/bugs/bugupdate.php?996
>
> scot.
>
>
> -----Original Message-----
> From: pgsql-odbc-owner@postgresql.org
> [mailto:pgsql-odbc-owner@postgresql.org]On Behalf Of Johann Zuschlag
> Sent: Tuesday, November 09, 2004 7:37 AM
> To: pgsql-odbc@postgresql.org
> Subject: Re: [ODBC] 08.00.0002 useless :-)
>
>
> Dave Page wrote:
>
> >
> >
> >
> >
> >>-----Original Message-----
> >>From: pgsql-odbc-owner@postgresql.org
> >>[mailto:pgsql-odbc-owner@postgresql.org] On Behalf Of
> Johann Zuschlag
> >>Sent: 08 November 2004 17:59
> >>To: pgsql-odbc@postgresql.org
> >>Subject: [ODBC] 08.00.0002 useless :-)
> >>
> >>Hello,
> >>
> >>somebody already mentioned it. I just want to repeat it. As long as
> >>the driver produces strings like this:
> >>
> >>CREATE TABLE FOO (Userid varchar()(10) NOT NULL, Mcode
> >>varchar()(25)...
> >>
> >>it is unfortunately useless. The backend will never accept it.
> >>
> >>I'm sure Hiroshi had something different in mind when he
> changed that
> >>part of the code.
> >>
> >>Does somebody work on that?
> >>
> >>
> >
> >When exactly does the ODBC driver generate CREATE TABLE queries?
> >
> >Regards, Dave
> >
> >
> >
> Hi Dave,
>
> well, my application tries to create the table and the driver
> adds the "()". The old legacy driver didn't have that
> behavior, i.e. didn't change my query. I don't understand why
> the driver adds the parenthesis.
>
> Unfortunately I don't know the driver very well. Do you know
> where the parenthesis's are added?
>
> Regards,
>
> Johann
>
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to
> majordomo@postgresql.org
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
>                http://archives.postgresql.org
>

Re: 08.00.0002 useless :-)

From
Johann Zuschlag
Date:
Dave Page wrote:

>
>>Yes, please send me the updated DLL. I will test it.
>>
>>
>
>Attached.
>
>Regards, Dave
>
>
Hi Dave,

unfortunately same behavior. Are you sure you sent me the right DLL with
the patch?

regards,

Johann


Re: 08.00.0002 useless :-)

From
"Dave Page"
Date:

> -----Original Message-----
> From: Johann Zuschlag [mailto:zuschlag2@online.de]
> Sent: 11 November 2004 15:47
> To: Dave Page; pgsql-odbc@postgresql.org
> Subject: Re: [ODBC] 08.00.0002 useless :-)
>
> Johann Zuschlag wrote:
>
> Dave,
>
> I think you sent the correct DLL. The more I'm thinking about
> the problem it seems that my application is doing that. So


Ahh, I was just looking at that. If it has todays date as it's
modification time, then it definitely is the right one (as the one in my
sent items folder does). Are you sure you don't have another copy
somewhere else - maybe from the Win32 PostgreSQL?

> the old driver must have filtered the additional "()"
> somehow. But that is allmost two years ago. I wonder which
> part of the driver did that. Maybe parse.c?

I *think* that code is only used if you have the parse statemnents
option turned on. Could be wrong though.

Regards, Dave

Re: 08.00.0002 useless :-)

From
Johann Zuschlag
Date:
Johann Zuschlag wrote:

> Dave Page wrote:
>
>>
>>> Yes, please send me the updated DLL. I will test it.
>>>
>>
>>
>> Attached.
>>
>> Regards, Dave
>>
>>
> Hi Dave,
>
> unfortunately same behavior. Are you sure you sent me the right DLL
> with the patch?
>
> regards,
>
> Johann
>
>
Dave,

I think you sent the correct DLL. The more I'm thinking about the
problem it seems that my application is doing that. So the old driver
must have filtered the additional "()" somehow. But that is allmost two
years ago. I wonder which part of the driver did that. Maybe parse.c?

Anybody can help?

regards

Johann


Re: 08.00.0002 useless :-)

From
Johann Zuschlag
Date:
Dave Page wrote:

>Ahh, yes,of course. Sorry Scot, that fell off my todo somehow. Patch
>applied.
>
>Johann, do you want an updated DLL to test?
>
>Regards, Dave
>
>
>
Yes, please send me the updated DLL. I will test it.

Regards,

Johann


Re: 08.00.0002 useless :-)

From
"Scot Loach"
Date:
This behavior was added in a patch between the last released version of 7.03.0200, which was about a year ago, and the
newdriver.  So the old released driver doesn't have this problem. 

It only occurs for certain rare operations, such as the one you are doing, and the one I was doing when I ran into it
(usingserver-side prepared queries), which is why most people don't have an issue. 

Your application was never filtering the brackets, the old driver was correct.

scot.

-----Original Message-----
From: pgsql-odbc-owner@postgresql.org
[mailto:pgsql-odbc-owner@postgresql.org]On Behalf Of Johann Zuschlag
Sent: Thursday, November 11, 2004 10:47 AM
To: dpage@vale-housing.co.uk; pgsql-odbc@postgresql.org
Subject: Re: [ODBC] 08.00.0002 useless :-)


Johann Zuschlag wrote:

> Dave Page wrote:
>
>>
>>> Yes, please send me the updated DLL. I will test it.
>>>
>>
>>
>> Attached.
>>
>> Regards, Dave
>>
>>
> Hi Dave,
>
> unfortunately same behavior. Are you sure you sent me the right DLL
> with the patch?
>
> regards,
>
> Johann
>
>
Dave,

I think you sent the correct DLL. The more I'm thinking about the
problem it seems that my application is doing that. So the old driver
must have filtered the additional "()" somehow. But that is allmost two
years ago. I wonder which part of the driver did that. Maybe parse.c?

Anybody can help?

regards

Johann


---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faqs/FAQ.html

Re: 08.00.0002 useless :-)

From
Johann Zuschlag
Date:
Hi Scot,

Thanks for the information. I just verified that. You are right, the
change occured between 7.03.0200 and 7.03.0209.

Do you now where the change occured?

regards,

Johann

Scot Loach wrote:

>This behavior was added in a patch between the last released version of 7.03.0200, which was about a year ago, and the
newdriver.  So the old released driver doesn't have this problem. 
>
>It only occurs for certain rare operations, such as the one you are doing, and the one I was doing when I ran into it
(usingserver-side prepared queries), which is why most people don't have an issue. 
>
>Your application was never filtering the brackets, the old driver was correct.
>
>scot.
>
>-----Original Message-----
>From: pgsql-odbc-owner@postgresql.org
>[mailto:pgsql-odbc-owner@postgresql.org]On Behalf Of Johann Zuschlag
>Sent: Thursday, November 11, 2004 10:47 AM
>To: dpage@vale-housing.co.uk; pgsql-odbc@postgresql.org
>Subject: Re: [ODBC] 08.00.0002 useless :-)
>
>
>Johann Zuschlag wrote:
>
>
>
>>Dave Page wrote:
>>
>>
>>
>>>>Yes, please send me the updated DLL. I will test it.
>>>>
>>>>
>>>>
>>>Attached.
>>>
>>>Regards, Dave
>>>
>>>
>>>
>>>
>>Hi Dave,
>>
>>unfortunately same behavior. Are you sure you sent me the right DLL
>>with the patch?
>>
>>regards,
>>
>>Johann
>>
>>
>>
>>
>Dave,
>
>I think you sent the correct DLL. The more I'm thinking about the
>problem it seems that my application is doing that. So the old driver
>must have filtered the additional "()" somehow. But that is allmost two
>years ago. I wonder which part of the driver did that. Maybe parse.c?
>
>Anybody can help?
>
>regards
>
>Johann
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 5: Have you checked our extensive FAQ?
>
>               http://www.postgresql.org/docs/faqs/FAQ.html
>
>---------------------------(end of broadcast)---------------------------
>TIP 4: Don't 'kill -9' the postmaster
>
>
>


Re: 08.00.0002 useless :-)

From
"Scot Loach"
Date:
see the bug I entered, it has the patch against the affected file, you can look at that file in the CVS web interface
andfind out when it was changed. 
http://gborg.postgresql.org/project/psqlodbc/bugs/bugupdate.php?996

-----Original Message-----
From: Johann Zuschlag [mailto:zuschlag2@online.de]
Sent: Friday, November 12, 2004 6:37 AM
To: Scot Loach; pgsql-odbc@postgresql.org
Subject: Re: [ODBC] 08.00.0002 useless :-)


Hi Scot,

Thanks for the information. I just verified that. You are right, the
change occured between 7.03.0200 and 7.03.0209.

Do you now where the change occured?

regards,

Johann

Scot Loach wrote:

>This behavior was added in a patch between the last released version of 7.03.0200, which was about a year ago, and the
newdriver.  So the old released driver doesn't have this problem. 
>
>It only occurs for certain rare operations, such as the one you are doing, and the one I was doing when I ran into it
(usingserver-side prepared queries), which is why most people don't have an issue. 
>
>Your application was never filtering the brackets, the old driver was correct.
>
>scot.
>
>-----Original Message-----
>From: pgsql-odbc-owner@postgresql.org
>[mailto:pgsql-odbc-owner@postgresql.org]On Behalf Of Johann Zuschlag
>Sent: Thursday, November 11, 2004 10:47 AM
>To: dpage@vale-housing.co.uk; pgsql-odbc@postgresql.org
>Subject: Re: [ODBC] 08.00.0002 useless :-)
>
>
>Johann Zuschlag wrote:
>
>
>
>>Dave Page wrote:
>>
>>
>>
>>>>Yes, please send me the updated DLL. I will test it.
>>>>
>>>>
>>>>
>>>Attached.
>>>
>>>Regards, Dave
>>>
>>>
>>>
>>>
>>Hi Dave,
>>
>>unfortunately same behavior. Are you sure you sent me the right DLL
>>with the patch?
>>
>>regards,
>>
>>Johann
>>
>>
>>
>>
>Dave,
>
>I think you sent the correct DLL. The more I'm thinking about the
>problem it seems that my application is doing that. So the old driver
>must have filtered the additional "()" somehow. But that is allmost two
>years ago. I wonder which part of the driver did that. Maybe parse.c?
>
>Anybody can help?
>
>regards
>
>Johann
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 5: Have you checked our extensive FAQ?
>
>               http://www.postgresql.org/docs/faqs/FAQ.html
>
>---------------------------(end of broadcast)---------------------------
>TIP 4: Don't 'kill -9' the postmaster
>
>
>


Re: 08.00.0002 useless :-)

From
"Dave Page"
Date:

> -----Original Message-----
> From: pgsql-odbc-owner@postgresql.org
> [mailto:pgsql-odbc-owner@postgresql.org] On Behalf Of Scot Loach
> Sent: 12 November 2004 14:00
> To: Johann Zuschlag; pgsql-odbc@postgresql.org
> Subject: Re: [ODBC] 08.00.0002 useless :-)
>
> see the bug I entered, it has the patch against the affected
> file, you can look at that file in the CVS web interface and
> find out when it was changed.
> http://gborg.postgresql.org/project/psqlodbc/bugs/bugupdate.php?996

That patch is in the updated DLL I sent to Johann. It's also in CVS now.

Regards Dave

Re: 08.00.0002 useless :-)

From
Johann Zuschlag
Date:
Dave Page wrote:

>
>
>
>
>>-----Original Message-----
>>From: pgsql-odbc-owner@postgresql.org
>>[mailto:pgsql-odbc-owner@postgresql.org] On Behalf Of Scot Loach
>>Sent: 12 November 2004 14:00
>>To: Johann Zuschlag; pgsql-odbc@postgresql.org
>>Subject: Re: [ODBC] 08.00.0002 useless :-)
>>
>>see the bug I entered, it has the patch against the affected
>>file, you can look at that file in the CVS web interface and
>>find out when it was changed.
>>http://gborg.postgresql.org/project/psqlodbc/bugs/bugupdate.php?996
>>
>>
>
>That patch is in the updated DLL I sent to Johann. It's also in CVS now.
>
>Regards Dave
>
>
>
Dave,

I'm still wondering what is going on. I checked the diff's on GBorg.
(GBorg is really slow.) The change was done by Hiroshi at CVS-Version
1.63. I definitely used the new DLL. Why didn't I see a change in
behavior when you changed it back?

I'm puzzled.

Regards,

Johann


Re: 08.00.0002 useless :-)

From
"Dave Page"
Date:

> -----Original Message-----
> From: Johann Zuschlag [mailto:zuschlag2@online.de]
> Sent: 12 November 2004 17:23
> To: Dave Page
> Cc: pgsql-odbc@postgresql.org
> Subject: Re: [ODBC] 08.00.0002 useless :-)
>
>
> I'm still wondering what is going on. I checked the diff's on GBorg.
> (GBorg is really slow.) The change was done by Hiroshi at
> CVS-Version 1.63. I definitely used the new DLL. Why didn't I
> see a change in behavior when you changed it back?
>
> I'm puzzled.

Did you check for other copies of the dll on your system? Does the
registry value
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL\Driver point at
the new DLL?

Regards, Dave.