ODBC - defect IC76613 - 32vs64 bit SQLLEN
Posted in 2012
Topics: Connectivity: ODBC / JDBC / .NET
"ON 64 BIT UNIX PLATFORMS INFORMIX ODBC SHOULD HAVE SQLLEN CHANGED FROM 4 BYTES TO 8 BYTES." Does anyone know when this is going to be fixed? -- Ian The Hotmail address is my spam-bin. Real mail address is iang at austonley org uk
AFAIK it is not scheduled for a release candidate yet. You can call IBM support and ask them. Meanwhile, you can try the Universal Data Driver (ie the DB2 ODBC driver) it may have already had this fix incorporated. You will just have to add a DRDA connection type to your server to support it. Art Art S. Kagel Advanced DataTools (www.advancedatatools.com) Blog: http://informix-myview.blogspot.com/ Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on my employer, Advanced DataTools, the IIUG, nor any other organization with which I am associated either explicitly, implicitly, or by inference. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves. On Fri, Mar 16, 2012 at 8:11 AM, Ian Goddard <goddai01@hotmail.co.uk> wrote: > "ON 64 BIT UNIX PLATFORMS INFORMIX ODBC SHOULD HAVE SQLLEN CHANGED FROM > 4 BYTES TO 8 BYTES." > > Does anyone know when this is going to be fixed? > > -- > Ian > > The Hotmail address is my spam-bin. Real mail address is iang > at austonley org uk > _______________________________________________ > Informix-list mailing list > Informix-list@iiug.org > http://www.iiug.org/mailman/listinfo/informix-list >
On Fri, Mar 16, 2012 at 05:11, Ian Goddard <goddai01@hotmail.co.uk> wrote: > "ON 64 BIT UNIX PLATFORMS INFORMIX ODBC SHOULD HAVE SQLLEN CHANGED FROM > 4 BYTES TO 8 BYTES." > > Does anyone know when this is going to be fixed? Because it breaks binary compatibility (programs would have to be recompiled), this change will be released at the next major release. The ODBC Driver Manager vendors also need to be able to detect whether the Informix ODBC driver they're working with has 4-byte or 8-byte SQLLEN and SQLULEN. The coding has been done, but the compatibility issues currently mean it is on hold, waiting for the next main release. -- Jonathan Leffler <jonathan.leffler@gmail.com> #include <disclaimer.h> Guardian of DBD::Informix - v2011.0612 - http://dbi.perl.org "Blessed are we who can laugh at ourselves, for we shall never cease to be amused."
Jonathan Leffler wrote: > > On Fri, Mar 16, 2012 at 05:11, Ian Goddard <goddai01@hotmail.co.uk > <mailto:goddai01@hotmail.co.uk>> wrote: > > "ON 64 BIT UNIX PLATFORMS INFORMIX ODBC SHOULD HAVE SQLLEN CHANGED FROM > 4 BYTES TO 8 BYTES." > > Does anyone know when this is going to be fixed? > > > > Because it breaks binary compatibility (programs would have to be > recompiled), this change will be released at the next major release. > The ODBC Driver Manager vendors also need to be able to detect whether > the Informix ODBC driver they're working with has 4-byte or 8-byte > SQLLEN and SQLULEN. > > The coding has been done, but the compatibility issues currently mean it > is on hold, waiting for the next main release. Wouldn't it be feasible - and advisable - to distribute both versions, differently named, & let the user specify the appropriate library in the .ini files? unixODBC for one doesn't attempt to detect, it just assumes 8 bytes. I get the impression from its maintainer that Informix is already in a minority position. If most (?all) vendors also assume that then they'll need to be able to detect the 4-byte case in order to work with Informix as things stand now. -- Ian The Hotmail address is my spam-bin. Real mail address is iang at austonley org uk
Art Kagel wrote: > AFAIK it is not scheduled for a release candidate yet. You can call IBM > support and ask them. Meanwhile, you can try the Universal Data Driver > (ie the DB2 ODBC driver) it may have already had this fix incorporated. > You will just have to add a DRDA connection type to your server to > support it. > Apparently there is a version that supports 64-bit SQLLEN. I wish I could find it in the IBM maze. It's possible to build a retro version of unixODBC by compiling with the flag -DBUILD_LEGACY_64_BIT_MODE. I hoped that might be easier than finding the DB2 driver but it's only part of the solution. In consequence of unixODBC's using 64 bits so does the Free Pascal Compiler's ODBC SQL unit (which is what I'm trying to use) and, I'd guess, most if not all other consumers of ODBC connections. 64-bit has been the default unixODBC version since Nov 2008. You'd think 3 1/2 years would be ample time for Informix to catch up with the rest of the world. -- Ian The Hotmail address is my spam-bin. Real mail address is iang at austonley org uk