Dear Mr. Leffler,
When I saw this Tuesday night, I thought... wow. Thanks so much for
pursuing this bug report. I will feel more confident in using
DBD::Informix, now that you have verified that this bug will not bite
us in our present configuration (no lvarchar not null columns).
I'm sure I speak for all DBD::Informix users: Thank you.
--
Mark Abajian
On Jun 12, 2007, at 11:01 PM, Jonathan Leffler wrote:
Finally, after about 30 hours of hair tearing and hard work, I've
isolated a
pure ESQL/C version of this bug and demonstrated that it primarily
afflicts
32-bit ports of Informix ESQL/C that come with CSDK 2.90 and
2.81 . It does
not afflict most 64-bit ports (though 2.81.FC2 crashed with a core
dump, as
did 2.80.UC2), and it does not affect older ports (2.80.UC1 was
OK). It did
not reproduce on RHEL 4 running on Linux PPC-64 with CSDK
3.00.FC1(actually, a nightly build prior to that release). Finally,
it only affects
LVARCHAR NOT NULL, and only if the table is not a temporary table.
Since I
kept the server constant (IDS 10.00.UC5 running on Solaris 10), the
problem
is most likely in ESQL/C rather than IDS itself; if it is perchance
in IDS,
it is in the code that recognizes different versions of ESQL/C and
somehow
reacts differently.
This bug is now idsdb00139040 in the IBM/Informix CQ database.
Sadly, as yet, I do not have a workaround or fix for this -- that
comes
next.
<snip>
To say that the circumstances under which it fails are obscure is
to be
excessively polite.
I tried to release an update to DBD::Informix, but the release
process goes
through the test suite, and since the test t/t93lvarchar.t was
failing, it
was not possible to make the release automatically, so I haven't
made the
update. I may decide to cheat and make the release using a 64-bit
Perl and
64-bit ESQL/C, like I did with the DBD::Informix 2007.0226 (though
that was
released completely unaware of the issue - this one would be released
despite knowing the test fails). The temptation to modify the test
(eg to
use a temp table instead of a permanent one) is also quite
considerable.
--
Jonathan Leffler <[EMAIL PROTECTED]> #include <disclaimer.h>
Guardian of DBD::Informix - v2007.0226 - http://dbi.perl.org
"Blessed are we who can laugh at ourselves, for we shall never
cease to be
amused."