Brett Dunstan wrote:

I was trying to get DBD-Informix-1.00.PC2 to work with the Informix Client
SDK 2.80.UC2-1.  I saw in the DBD Tech Note this version is not supported,
and that the esql -V will return a value that cannot be parsed.
I'm working hard (too hard) on getting a version released. I sent someone else a patch on this this morning - but I don't have the patch here at home and won't be in the office till next week.

The gist of the change is in the file DBD/Informix/Configuration.pm; there's a regex that needs to read:

s/.*Informix-\w+\s+Version\s+(\d+\.\d+).*/$1/i;

Or thereabouts. The '-' is critical; it identifies the Informix-ESQL (or INFORMIX-4GL if you happen to be using c4gl instead of ESQL/C) as opposed to the Informix in IBM Informix ClientSDK, the \w+ matches ESQL or 4GL, the \s+ either side of Version matches an arbitrary number of spaces, and the parenthesized expression matches the 9.52 of Informix-ESQL Version 9.52.UC1. And the case insensitivity modifier (i) at the end ensures that both versions of Informix are matched.

The other nasty is ensuring that the local version of DBD::Informix::Configuration is used instead of the pre-installed version. This needs a BEGIN { push ".", @INC; } block to put the current directory at the front of the list of directories - and the syntax needs fixing - I always check the manual for push,pop,splice, and the other two operations for dumping stuff on or off the ends of a list, and I'm pretty sure that's wrong, but I forget what's right.

Ick; I hate having to do this stuff in a hurry.

However once past this I am getting the error at the end of this email,
and was wondering;

A: Has anyone been able to get this version working ?  or

B: Does anyone have a copy of a supported SDK - (the informix archive
appeared to only go back to 2.70.)
CSDK 2.70 is supported and works out of the box.

Extra info:
-----------
* The esqltest worked - so I am sure the install of the 2.80 SDK is
installed correctly and working.

Error:
------
t/t83oconn..........ok
t/t90ius............ok 2/4Null pointer for lvarchar at t/t90ius.t line
103.
t/t90ius............ok
That warning is innocuous but irksome - fixed in the forthcoming version. Try finding an email archive dating back to early 2000 and you should find a patch for it there.

t/t91udts...........ok 6/16DBD::Informix::db do failed: SQL: -9810:
Smart-large-object error.
ISAM: -12053: <<Failed to locate ISAM error message> at
blib/lib/DBD/Informix/TestHarness.pm line 219.
!! Terminating Test !!
t/t91udts...........dubious
        Test returned status 255 (wstat 65280, 0xff00)
Primarily a test error - it assumes you have a smart blobspace (or sbspace) called 'sbspace'. The next version will have two workarounds for this:
DBD_INFORMIX_SBSPACE=sommat_else
DBD_INFORMIX_NO_SBSPACE=absolutely_not
The first gives the name of an sbspace that does exist; the second is used to say 'I do not have any sbspace you can test with'.

You can ignore both errors and use the DBD::Informix as provided.


DIED. FAILED tests 7-16
        Failed 10/16 tests, 37.50% okay
t/t99clean..........ok
....

cheers
-brett :)




--
Jonathan Leffler ([EMAIL PROTECTED], [EMAIL PROTECTED]) #include <disclaimer.h>
Guardian of DBD::Informix 1.00.PC2 -- http://dbi.perl.org/

Reply via email to