On 9/27/07, Clive Eisen <[EMAIL PROTECTED]> wrote:
> I seem to have a problem with negative int8 on a 64 bit linux platform
>
> dbaccess gives the correct answer but DBD::Informix does not
>
> [EMAIL PROTECTED]:~> oninit -V
> IBM Informix Dynamic Server Version 10.00.FC6
>
> [EMAIL PROTECTED]:~> esql -V
> IBM Informix CSDK Version 2.90, IBM Informix-ESQL Version 2.90.FC4R1
>
> [EMAIL PROTECTED]:~> perl -v
>
> This is perl, v5.8.8 built for x86_64-linux
>
> [EMAIL PROTECTED]:~> perl -MDBI -e 'print "$DBI::VERSION\n"'
> 1.53
>
> [EMAIL PROTECTED]:~> perl -MDBD::Informix -e 'print 
> "$DBD::Informix::VERSION\n"'
> 2007.0914
>
> [EMAIL PROTECTED]:~> echo 'select pings_remaining from ping_count' |
> dbaccess master_118
>
> Database selected.
>
>
>
>      pings_remaining
>
>              -256512
>
>
>
> [EMAIL PROTECTED]:~> cat test.pl
> #!/usr/local/bin/perl
> use DBI;
>
> my $database="[EMAIL PROTECTED]";
> my $dbh = DBI->connect("dbi:Informix:$database", '', '',
>                                { AutoCommit => 1, PrintError => 1
> ,PrintWarn => 1});
> $sth=$dbh->prepare(qq(select pings_remaining from ping_count));
> $sth->execute;
> ($pings_remaining) = $sth->fetchrow_array;
> print "pings_remaining = $pings_remaining\n";
>
> [EMAIL PROTECTED]:~> perl test.pl
> pings_remaining = 4294710784
>
>
> Any help gratefully received


Dear Clive,

Unfortunately (for you - fortunately for me), Perl 5.8.8 with 64-bit
CSDK 3.00.FC2 on Solaris 10 correctly produces the negative answer.

That means that to some extent, the problem is platform specific.
I'll try to build DBD::Informix with CSDK 2.90.FC1 later - I have to
rig the build environment on my machine to do that.  It might be CSDK
2.90 vs 3.00; it might be Linux x86 vs Solaris SPARC.


-- 
Jonathan Leffler <[EMAIL PROTECTED]>  #include <disclaimer.h>
Guardian of DBD::Informix - v2007.0914 - http://dbi.perl.org
"Blessed are we who can laugh at ourselves, for we shall never cease
to be amused."

Reply via email to