I'm one to blame for the bytea support, so :)

Something is mangling chr(128) somewhere. If you do this one with
DBI_TRACE=2, you'll see: >INSERT INTO test VALUES ('\\37777777600')<

I'm looking what's causing it...
---cut---
I'm getting core dumps when I try to use a BYTEA value with
a byte outside 0..127.

    use DBI qw(SQL_BINARY);
    my $dbh = DBI->connect("dbi:Pg:dbname=merlyntest", "user", "pass",
      { RaiseError => 1 });
    $dbh->do("CREATE TABLE test (a BYTEA)");
    my $insert = $dbh->prepare("INSERT INTO test VALUES (?)");
    $insert->bind_param(1, undef, SQL_BINARY); # necessary for BYTEA
escaping
    $insert->execute("fred"); # works fine
    $insert->execute(pack "C*", 0..127); # works fine
    $insert->execute(pack "C*", 128); # BOMB, core dump

(I'm cutting and pasting this from a perl debugger session, so if
that's not quite it, forgive me.)

DBI version 1.18
DBD::Pg version 1.00
postgresql version 7.1.2
Perl version 5.5.3




Reply via email to