[rt-users] RT 3.4.4 Links Error

Ruslan Zakirov ruslan.zakirov at gmail.com
Fri May 26 20:48:13 EDT 2006


Torsten, I've uploaded Shredder-0.04 that has fix for this bug. Really
in your description step 3) should be omited as RT doesn't show links
to deleted tickets and do it very deep in the core and shredder was
biten by this. So in result you had a ticket with a link to an object
that doesn't exist.

On 5/24/06, Frank Pater <fpater at dca.net> wrote:
> Hi Torsten,
>
> I ran into this last week (RT 3.4.5), and wasn't able to find much on Google or the list archives about it. It does seem to come up when people are trying to do different things.
>
> In our situation, it was the result of the following:
>
> 1) Two tickets were created for the same issue (customer double-submitted it)
> 2) A link was created between them ("Depends on/Depended on by")
> 3) The link was removed
> 4) One was deleted, and subsequently purged from the database with RTx::Shredder
>
> With the database in this state, trying to load the ticket that hadn't been deleted resulted in the error you describe. My solution was to restore the deleted ticket using the dumpfile created by rtx-shredder's --sqldump switch, and set its status to "rejected" so that it isn't automatically purged by our nightly rtx-shredder job.
>
> I'm not sure if we could've done anything else (removed the link transaction(s) from the database perhaps? I didn't try this because I'd rather add unnecessary data than delete anything), or if this is a bug or an unavoidable consequence of using RTx::Shredder to purge our database of spam (there is plenty). The bottom line, for us, was that the two tickets should've been merged, as they were both from a legitimate customer. Deleting one was the incorrect solution.
>
> Sincerely,
> Frank Pater
> DCANet
> http://www.dca.net
> voice: 888-4-DCANET (888-432-2638)
> fax: 302-426-6386
>
> On Wed, May 24, 2006 at 03:05:58PM +0200, Torsten Brumm wrote:
> > Hi RT Users,
> >
> > I get a very strange error at the Links Section of a ticket (and also if i
> > use the links Tab)
> >
> > This Ticket has a Refered by Link from RTFM and it was merged into another
> > ticket. I have tried to reproduce this error, but no luck... It only occurs
> > from time to time.
> >
> > Torsten
> >
> > The error:
> >
> > System error
> > error:        Can't call method "IsLocal" on an undefined value at
> > /opt/rt3/lib/RT/URI.pm line 247.
> > context:
> > ...
> > 243:          =cut
> > 244:
> > 245:          sub IsLocal {
> > 246:          my $self = shift;
> > 247:          return $self->Resolver->IsLocal;
> > 248:          }
> > 249:
> > 250:
> > 251:          # }}}
> > ...
> > code stack:   /opt/rt3/lib/RT/URI.pm:247
> > /opt/rt3/lib/RT/Links_Overlay.pm:159
> > /opt/rt3/share/html/Elements/EditLinks:109
> > /opt/rt3/share/html/Ticket/ModifyLinks.html:58
> > /opt/rt3/share/html/autohandler:215
> > raw error
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > Can't call method "IsLocal" on an undefined value at /opt/rt3/lib/RT/URI.pm
> > line 247.
> >
> >
> > Trace begun at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Exceptions.pm line
> > 131
> > HTML::Mason::Exceptions::rethrow_exception('Can\'t call method "IsLocal" on
> > an undefined value at /opt/rt3/lib/RT/URI.pm line 247.^J') called at
> > /opt/rt3/lib/RT/URI.pm line 247
> > RT::URI::IsLocal('RT::URI=HASH(0xa6e8d5c)') called at
> > /opt/rt3/lib/RT/Links_Overlay.pm line 159
> > RT::Links::Next('RT::Links=HASH(0xa601900)') called at
> > /opt/rt3/share/html/Elements/EditLinks line 109
> > HTML::Mason::Commands::__ANON__('Object', 'RT::Ticket=HASH(0xa3d43d8)',
> > 'Merge', 1) called at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Component.pm
> > line 136
> > HTML::Mason::Component::run('HTML::Mason::Component::FileBased=HASH(0xa297bc
> > 4)', 'Object', 'RT::Ticket=HASH(0xa3d43d8)', 'Merge', 1) called at
> > /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Request.pm line 1074
> > eval {...} at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Request.pm line 1068
> > HTML::Mason::Request::comp(undef, undef, 'Object',
> > 'RT::Ticket=HASH(0xa3d43d8)', 'Merge', 1) called at
> > /opt/rt3/share/html/Ticket/ModifyLinks.html line 58
> > HTML::Mason::Commands::__ANON__('id', 287349, 'id', 287349) called at
> > /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Component.pm line 136
> > HTML::Mason::Component::run('HTML::Mason::Component::FileBased=HASH(0xa6a918
> > 4)', 'id', 287349, 'id', 287349) called at
> > /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Request.pm line 1074
> > eval {...} at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Request.pm line 1068
> > HTML::Mason::Request::comp(undef, undef, 'id', 287349, 'id', 287349) called
> > at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Request.pm line 760
> > HTML::Mason::Request::call_next('HTML::Mason::Request::CGI=HASH(0xa3bc678)',
> > 'id', 287349) called at /opt/rt3/share/html/autohandler line 215
> > HTML::Mason::Commands::__ANON__('id', 287349) called at
> > /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Component.pm line 136
> > HTML::Mason::Component::run('HTML::Mason::Component::FileBased=HASH(0x9d6baa
> > 0)', 'id', 287349) called at
> > /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Request.pm line 1069
> > eval {...} at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Request.pm line 1068
> > HTML::Mason::Request::comp(undef, undef, undef, 'id', 287349) called at
> > /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Request.pm line 338
> > eval {...} at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Request.pm line 338
> > eval {...} at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Request.pm line 297
> > HTML::Mason::Request::exec('HTML::Mason::Request::CGI=HASH(0xa3bc678)')
> > called at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/CGIHandler.pm line 197
> > eval {...} at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/CGIHandler.pm line
> > 197
> > HTML::Mason::Request::CGI::exec('HTML::Mason::Request::CGI=HASH(0xa3bc678)')
> > called at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/Interp.pm line 216
> > HTML::Mason::Interp::exec(undef, undef, 'id', 287349) called at
> > /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/CGIHandler.pm line 127
> > eval {...} at /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/CGIHandler.pm line
> > 127
> > HTML::Mason::CGIHandler::_handler('HTML::Mason::CGIHandler=HASH(0x99af8c8)',
> > 'HASH(0xa2769dc)') called at
> > /usr/lib/perl5/site_perl/5.8.5/HTML/Mason/CGIHandler.pm line 76
> > HTML::Mason::CGIHandler::handle_cgi_object('HTML::Mason::CGIHandler=HASH(0x9
> > 9af8c8)', 'CGI::Fast=HASH(0xa1cd504)') called at
> > /opt/rt3/bin/mason_handler.fcgi line 76
> > eval {...} at /opt/rt3/bin/mason_handler.fcgi line 76
> >
> > _______________________________________________
> > http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
> >
> > Community help: http://wiki.bestpractical.com
> > Commercial support: sales at bestpractical.com
> >
> >
> > Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
> > Buy a copy at http://rtbook.bestpractical.com
> >
> >
> > We're hiring! Come hack Perl for Best Practical: http://bestpractical.com/about/jobs.html
>
>
> _______________________________________________
> http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
>
> Community help: http://wiki.bestpractical.com
> Commercial support: sales at bestpractical.com
>
>
> Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
> Buy a copy at http://rtbook.bestpractical.com
>
>
> We're hiring! Come hack Perl for Best Practical: http://bestpractical.com/about/jobs.html
>
>
>


-- 
Best regards, Ruslan.


More information about the rt-users mailing list