Rt-3.0.9, Perl 5.8.3, FastCGI + Oracle ... all binary attachments truncated?

Folks,

I’ve been trying to move to RT3 for a few weeks now. One last obstacle
stands in my way, but I fear it’s going to be the worst one yet!

I took heed of the predictions of doom and upgraded to perl 5.8.3 a few
weeks ago (many full stop/start cycles in the past now), but I’m still
seeing broken binary attachments. Text and HTML seem to attach and decode
fine, but when I try
to attach a 127k PDF to a ticket, either by email or using the web
interface, I get a 5.7k attachment.

The only errors I see in the apache log are:

[Sun Mar 7 20:32:22 2004] [error] [client 209.166.32.60] FastCGI: server
"/usr/local/rt3/bin/mason_handler.fcgi" stderr: Use of uninitialized value
in length at /usr/lib/perl5/site_perl/5.8.3/Text/Quoted.pm line 228,
line 258.

which although worrying, don’t seem related to the binary attachment issue.

Poking into this from the Oracle side of things, I see the following
attachment size:

SQL> select DBMS_LOB.GETLENGTH(CONTENT) from “RT3_IFAX”.“ATTACHMENTS” WHERE
"ID" = 22747;
DBMS_LOB.GETLENGTH(CONTENT)
176541
SQL>

That size (176541) looks about reasonable for an encoded 127k binary file,
if you ask me! And yet here’s what the web interface reports on the lower
right-hand corner of the transaction:

      Download webinar.pdf 5.7k

That’s also the size of the attachment the requestor received by email,
incidentally.

I attached another larger (400k) PDF to the ticket. The length of the CLOB
was about right, and yet again, the web interface showed:

      Download passport.pdf 5.7k

This just has to be a bug with the Oracle port. I hope!? Anyone running
3.0.9 with Oracle?

-Darren

Folks,

Yet another email for the benefit of the archives …

We managed to trace the problem to an Oracle-specific limit that was being
set in SearchBuilder’s Handle/Oracle.pm:

$self->dbh->{LongTruncOk}=1;
$self->dbh->{LongReadLen}=8000;

This effectively limited the CLOB data fetch to 8 bytes. Although the
attachments were being stored properly, it would not be possible to fetch
any but the smallest of them from RT under any circumstances, if you were
using Oracle.

We’ve been in touch with Jesse, and a fix will be included in the next
pre-release, apparently.

-DarrenFrom: “Darren Nickerson” darren@dazza.org
To: rt-users@lists.fsck.com
Sent: Monday, March 08, 2004 1:44 AM
Subject: [rt-users] rt-3.0.9, Perl 5.8.3,FastCGI + Oracle … all binary
attachments truncated?

Folks,

I’ve been trying to move to RT3 for a few weeks now. One last obstacle
stands in my way, but I fear it’s going to be the worst one yet!

I took heed of the predictions of doom and upgraded to perl 5.8.3 a few
weeks ago (many full stop/start cycles in the past now), but I’m still
seeing broken binary attachments. Text and HTML seem to attach and decode
fine, but when I try
to attach a 127k PDF to a ticket, either by email or using the web
interface, I get a 5.7k attachment.

The only errors I see in the apache log are:

[Sun Mar 7 20:32:22 2004] [error] [client 209.166.32.60] FastCGI: server
"/usr/local/rt3/bin/mason_handler.fcgi" stderr: Use of uninitialized value
in length at /usr/lib/perl5/site_perl/5.8.3/Text/Quoted.pm line 228,
line 258.

which although worrying, don’t seem related to the binary attachment
issue.

Poking into this from the Oracle side of things, I see the following
attachment size:

SQL> select DBMS_LOB.GETLENGTH(CONTENT) from “RT3_IFAX”.“ATTACHMENTS"
WHERE
"ID” = 22747;
DBMS_LOB.GETLENGTH(CONTENT)

176541
SQL>

That size (176541) looks about reasonable for an encoded 127k binary file,
if you ask me! And yet here’s what the web interface reports on the lower
right-hand corner of the transaction:

      Download webinar.pdf 5.7k

That’s also the size of the attachment the requestor received by email,
incidentally.

I attached another larger (400k) PDF to the ticket. The length of the CLOB
was about right, and yet again, the web interface showed:

      Download passport.pdf 5.7k

This just has to be a bug with the Oracle port. I hope!? Anyone running
3.0.9 with Oracle?

-Darren


rt-users mailing list
rt-users@lists.bestpractical.com
http://lists.bestpractical.com/mailman/listinfo/rt-users

Have you read the FAQ? The RT FAQ Manager lives at http://fsck.com/rtfm