Thread: Regression with no results returned from query between 9.01.01 and 9.01.02
Hello, Our code doing some relatively simple SELECT queries has stopped working after upgrading from 9.01.01 to 9.01.02. After some debugging and bisecting I found that: 1. The original bug was introduced by a seemingly nonsensical change to the SC_forget_unnamed() macro in statement.h in https://github.com/hlinnaka/psqlodbc/commit/5f35a04c498c4af02a3d2ac4cd84a0610562c2a4 2. The symptoms we're seeing have been corrected by the apparently unrelated change in a yet unreleased commit https://github.com/hlinnaka/psqlodbc/commit/79fa21bd5c52157cf9a2296b06aa7ad6cb9c8b9c I don't know this code at all so it's very difficult for me to day whether the latter commit really fixes the problem or just works around/hides it, but it seems pretty strange to have "FALSE && ..." condition as it's, of course, always false, so why bother with testing it at all? Considering that the commit of (1) also was clearly not tested much as it even broke the code compilation (missing closing quote in the change to version.h), I am not inclined to trust this change. But this is just a gut feeling and it would be great if someone who really understands this code could look at it. More generally, it would be very nice to have 9.01.03 release fixing this bug as it's pretty annoying that we need to tell our users to download the one but last release of the ODBC driver instead of the latest one. Thanks in advance, VZ P.S. Does anybody know why the CVS repository at http://pgfoundry.org/scm/?group_id=1000125 doesn't work? Is the Github hlinnaka/psqlodbc repository the official place for psqlodbc sources or is there some other place to get them from?
Re: Regression with no results returned from query between 9.01.01 and 9.01.02
From
"Inoue, Hiroshi"
Date:
Hi Vadim, (2013/04/12 21:58), Vadim Zeitlin wrote: > Hello, > > Our code doing some relatively simple SELECT queries has stopped working > after upgrading from 9.01.01 to 9.01.02. After some debugging and bisecting > I found that: > > 1. The original bug was introduced by a seemingly nonsensical change to > the SC_forget_unnamed() macro in statement.h in > https://github.com/hlinnaka/psqlodbc/commit/5f35a04c498c4af02a3d2ac4cd84a0610562c2a4 > > 2. The symptoms we're seeing have been corrected by the apparently > unrelated change in a yet unreleased commit > https://github.com/hlinnaka/psqlodbc/commit/79fa21bd5c52157cf9a2296b06aa7ad6cb9c8b9c > > I don't know this code at all so it's very difficult for me to day whether > the latter commit really fixes the problem or just works around/hides it, > but it seems pretty strange to have "FALSE && ..." condition as it's, of > course, always false, so why bother with testing it at all? Considering > that the commit of (1) also was clearly not tested much as it even broke > the code compilation (missing closing quote in the change to version.h), I > am not inclined to trust this change. But this is just a gut feeling and it > would be great if someone who really understands this code could look at > it. > > More generally, it would be very nice to have 9.01.03 release fixing this > bug as it's pretty annoying that we need to tell our users to download the > one but last release of the ODBC driver instead of the latest one. Unfortunately we don't have much time and there are some issues (Git migration or pending patches etc). Please wait for a while. As for Windows, I can provide the binaries on my home page which fixes the bug you pointed out if it's preferable. regards, Hiroshi Inoue > Thanks in advance, > VZ > > P.S. Does anybody know why the CVS repository at > http://pgfoundry.org/scm/?group_id=1000125 doesn't work? Is the Github > hlinnaka/psqlodbc repository the official place for psqlodbc sources > or is there some other place to get them from?
Re: Regression with no results returned from query between 9.01.01 and 9.01.02
From
Vadim Zeitlin
Date:
On Tue, 16 Apr 2013 12:57:13 +0900 "Inoue, Hiroshi" <inoue@tpf.co.jp> wrote: IH> > More generally, it would be very nice to have 9.01.03 release fixing this IH> > bug as it's pretty annoying that we need to tell our users to download the IH> > one but last release of the ODBC driver instead of the latest one. IH> IH> Unfortunately we don't have much time and there are some issues (Git IH> migration or pending patches etc). Please wait for a while. Thank you for your reply! I've already realized that this is probably not the best moment to do any changes due to the CVS-to-Git migration, sorry for encountering this problem just at the wrong moment :-/ IH> As for Windows, I can provide the binaries on my home page which fixes IH> the bug you pointed out if it's preferable. For us this is not necessary as we can just use 9.01.01 driver (I don't see any changes in 9.01.02 which would be relevant to us) but I wonder if it wouldn't be better to pull the 9.01.02 release off the main site (http://www.postgresql.org/ftp/odbc/versions/) to avoid any future problems with it? Of course, a 9.01.03 with the real fix after the migration to Git is complete wouldn't be a bad idea if only to verify that the release procedures still work with the new repository. Thanks in advance and good luck! VZ P.S. Thanks Geoff for confirming that I'm not the only one seeing, I've doubted my sanity for quite some time as I couldn't believe something as bad as this could have slipped through the cracks. But apparently not many people use PostgreSQL via ODBC...
Re: Regression with no results returned from query between 9.01.01 and 9.01.02
From
Heikki Linnakangas
Date:
On 12.04.2013 15:58, Vadim Zeitlin wrote: > Hello, > > Our code doing some relatively simple SELECT queries has stopped working > after upgrading from 9.01.01 to 9.01.02. After some debugging and bisecting > I found that: > > 1. The original bug was introduced by a seemingly nonsensical change to > the SC_forget_unnamed() macro in statement.h in > https://github.com/hlinnaka/psqlodbc/commit/5f35a04c498c4af02a3d2ac4cd84a0610562c2a4 That was indeed a mishap, and as Hiroshi said it should be trivial to fix. We now have the git migration out of the way, too. But before Hiroshi or I go and fix that, could you write a small self-contained test case that triggers the problem, please? I tried to create one myself, but failed. It would be nice to have one, so that we can verify that the fix works, and to add that to the regression test suite as that codepath is clearly not exercised at the moment. > P.S. Does anybody know why the CVS repository at > http://pgfoundry.org/scm/?group_id=1000125 doesn't work? Is the Github > hlinnaka/psqlodbc repository the official place for psqlodbc sources > or is there some other place to get them from? The official repository is now at http://git.postgresql.org/gitweb/?p=psqlodbc.git. Thanks! - Heikki