Incompatibilities Pg 7.3.5/RT 3.2.1 and Pg 7.4.7/RT 3.4.1?

Hello,

Running:

RT 3.4.1
Perl 5.8.6
Postgres 7.4.7
ModFastCGI 2.4.2
Apache 2.0.52

I have imported the Postgres database (former Postgres 7.3.5 and RT 3.2.1)
into the new Postgres 7.4.7, and ran the upgrading scripts in the RT
3.4.1.

I´m getting this error after trying to update a password phrase in the
"Modify the user…" part of RT 3.4.1:

System error

error: Can’t call method “new” without a package or object reference at
/site/rt-3.4.1/lib/RT/Transaction_Overlay.pm line 910, line 331.

context: …
906: }
907:
908: sub Object {
909: my $self = shift;
910: my $Object = $self->__Value(‘ObjectType’)->new($self->CurrentUser);
911: $Object->Load($self->__Value(‘ObjectId’));
912: return($Object);
913: }
914:

code stack: /site/rt-3.4.1/lib/RT/Transaction_Overlay.pm:910
/site/rt-3.4.1/lib/RT/Transaction_Overlay.pm:881
/site/rt-3.4.1/lib/RT/Transaction_Overlay.pm:865
/site/rt-3.4.1/lib/RT/Transaction_Overlay.pm:485
/site/rt-3.4.1/lib/RT/User_Overlay.pm:1623
/site/perl-5.8.6/lib/site_perl/5.8.6/DBIx/SearchBuilder/Record.pm:436
/site/rt-3.4.1/local/lib/RT/User_Local.pm:201
/site/rt-3.4.1/share/html/Admin/Users/Modify.html:356
/site/rt-3.4.1/share/html/Admin/autohandler:47
/site/rt-3.4.1/share/html/autohandler:215

The Apache log says:

[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: DBD::Pg::st execute
failed: ERROR: column “lastupdated” is of type timestamp without time
zone but expression is of type character varying, referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: HINT: You will need to
rewrite or cast the expression., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: RT::Handle=HASH(0xa308808)
couldn’t execute the query 'UPDATE Users SET LastUpdated=? WHERE id=? ’ at
/site/perl-5.8.6/lib/site_perl/5.8.6/DBIx/SearchBuilder/Handle.pm line
494, line 331., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: DBD::Pg::st execute
failed: ERROR: column “lastupdatedby” is of type integer but expression
is of type character varying, referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: HINT: You will need to
rewrite or cast the expression., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: RT::Handle=HASH(0xa308808)
couldn’t execute the query 'UPDATE Users SET LastUpdatedBy=? WHERE id=? '
at /site/perl-5.8.6/lib/site_perl/5.8.6/DBIx/SearchBuilder/Handle.pm line
494, line 331., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: DBD::Pg::st execute
failed: ERROR: column “newreference” is of type integer but expression is
of type character varying, referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: HINT: You will need to
rewrite or cast the expression., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: RT::Handle=HASH(0xa308808)
couldn’t execute the query ‘INSERT INTO Transactions (OldValue,
NewReference, OldReference, NewValue, Creator, ObjectId, Type, Field,
ReferenceType, Created, Data, ObjectType) VALUES (?, ?, ?, ?, ?, ?, ?, ?,
?, ?, ?, ?)’ at
/site/perl-5.8.6/lib/site_perl/5.8.6/DBIx/SearchBuilder/Handle.pm line
494, line 331., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: DBD::Pg::st execute
failed: ERROR: column “lastupdated” is of type timestamp without time
zone but expression is of type character varying, referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: HINT: You will need to
rewrite or cast the expression., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: RT::Handle=HASH(0xa308808)
couldn’t execute the query 'UPDATE Users SET LastUpdated=? WHERE id=? ’ at
/site/perl-5.8.6/lib/site_perl/5.8.6/DBIx/SearchBuilder/Handle.pm line
494, line 331., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: DBD::Pg::st execute
failed: ERROR: column “lastupdatedby” is of type integer but expression
is of type character varying, referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: HINT: You will need to
rewrite or cast the expression., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: RT::Handle=HASH(0xa308808)
couldn’t execute the query 'UPDATE Users SET LastUpdatedBy=? WHERE id=? '
at /site/perl-5.8.6/lib/site_perl/5.8.6/DBIx/SearchBuilder/Handle.pm line
494, line 331., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: DBD::Pg::st execute
failed: ERROR: column “lastupdated” is of type timestamp without time
zone but expression is of type character varying, referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: HINT: You will need to
rewrite or cast the expression., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: RT::Handle=HASH(0xa308808)
couldn’t execute the query 'UPDATE Users SET LastUpdated=? WHERE id=? ’ at
/site/perl-5.8.6/lib/site_perl/5.8.6/DBIx/SearchBuilder/Handle.pm line
494, line 331., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: DBD::Pg::st execute
failed: ERROR: column “lastupdatedby” is of type integer but expression
is of type character varying, referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: HINT: You will need to
rewrite or cast the expression., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: RT::Handle=HASH(0xa308808)
couldn’t execute the query 'UPDATE Users SET LastUpdatedBy=? WHERE id=? '
at /site/perl-5.8.6/lib/site_perl/5.8.6/DBIx/SearchBuilder/Handle.pm line
494, line 331., referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12
[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: DBD::Pg::st execute
failed: ERROR: column “newreference” is of type integer but expression is
of type character varying, referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12

Tomas A. P. Olaj, email: tomas.olaj@usit.uio.no, web: folk.uio.no/tomaso
University of Oslo / USIT (Center for Information Technology Services)
System- and Application Management / Applications Management Group

Running:

RT 3.4.1
Perl 5.8.6
Postgres 7.4.7
ModFastCGI 2.4.2
Apache 2.0.52

I have imported the Postgres database (former Postgres 7.3.5 and RT 3.2.1)
into the new Postgres 7.4.7, and ran the upgrading scripts in the RT
3.4.1.

I�m getting this error after trying to update a password phrase in the
"Modify the user…" part of RT 3.4.1:

System error

error: Can’t call method “new” without a package or object reference at
/site/rt-3.4.1/lib/RT/Transaction_Overlay.pm line 910, line 331.

The Apache log says:

[Sat Mar 12 16:50:19 2005] [error] [client 81.191.11.111] FastCGI: server
"/site/rt-3.4.1/bin/mason_handler.fcgi" stderr: DBD::Pg::st execute
failed: ERROR: column “lastupdated” is of type timestamp without time
zone but expression is of type character varying, referer:
https://rt-test.uio.no/Admin/Users/Modify.html?id=12

Downgrade your DBD::Pg to 1.32; see if that fixes your problem.

Note that this is currently the canonical answer for “it doesn’t work
with PostGres”; there’s a (stupid; I agree with Jesse) change in 1.40
that breaks it’s compatibility with DBIx:SearchBuilder.

Cheers,
– jra
Jay R. Ashworth jra@baylink.com
Designer Baylink RFC 2100
Ashworth & Associates The Things I Think '87 e24
St Petersburg FL USA http://baylink.pitas.com +1 727 647 1274

  If you can read this... thank a system adminstrator.  Or two.  --me

Downgrade your DBD::Pg to 1.32; see if that fixes your problem.

Note that this is currently the canonical answer for “it doesn’t work
with PostGres”; there’s a (stupid; I agree with Jesse) change in 1.40
that breaks it’s compatibility with DBIx:SearchBuilder.

And the issue has been reported back up to the DBD::Pg folks who seem to
agree that it’s a bug.

Jesse

Downgrade your DBD::Pg to 1.32; see if that fixes your problem.

Note that this is currently the canonical answer for “it doesn’t work
with PostGres”; there’s a (stupid; I agree with Jesse) change in 1.40
that breaks it’s compatibility with DBIx:SearchBuilder.

And the issue has been reported back up to the DBD::Pg folks who seem to
agree that it’s a bug.

Ah; missed that. They don’t say, then, that it was a purposeful
change? Good; that suggests the next release will solve it. Did they
posit a timeline?

Cheers,
– jra
Jay R. Ashworth jra@baylink.com
Designer Baylink RFC 2100
Ashworth & Associates The Things I Think '87 e24
St Petersburg FL USA http://baylink.pitas.com +1 727 647 1274

  If you can read this... thank a system adminstrator.  Or two.  --me

Downgrade your DBD::Pg to 1.32; see if that fixes your problem.

Please forgive the Perl newbie question, but how does one go about
downgrading a Perl module?

-Tim

Timothy Wilson
Technology Integration Specialist
Hopkins ISD #270, Hopkins, MN, USA (44š56.013’N 93š24.736’W)
ph: 952.988.4103 fax: 952.988.4311 AIM: tis270

Downgrade your DBD::Pg to 1.32; see if that fixes your problem.

Please forgive the Perl newbie question, but how does one go about
downgrading a Perl module?

I had to go to search.cpan.org, find the specific version, download it
to an appropriate place (I put it where CPAN would have), and do

perl Makefile.pl
make install

by hand.

Cheers,
– jra
Jay R. Ashworth jra@baylink.com
Designer Baylink RFC 2100
Ashworth & Associates The Things I Think '87 e24
St Petersburg FL USA http://baylink.pitas.com +1 727 647 1274

  If you can read this... thank a system adminstrator.  Or two.  --me