[rt-users] Scrip IsApplicable 298 died. - Can't call method "Type" on an undefined value

Ruslan Zakirov ruz at bestpractical.com
Fri Apr 15 18:37:48 EDT 2011


Hi,

In a few words: "a script didn't destroy some tickets in time and now
it's too late to apply batch stage scrips, they just die".

In details. You have a scrip in TransactionBatch stage. You have a
script you run from command line/cron. Scrips in batch stage are
applied when ticket's object is destroyed. Your script changes
ticket(s), however it doesn't destroy object(s) early enough. So batch
stage delayed untill global destruction. During global destruction
code dies as some required objects are destroyed already.

On Fri, Apr 15, 2011 at 5:32 PM, Gerard FENELON <gerard at eve-team.com> wrote:
> Hi
>
> I am using RT 3.8.8.
> From time to time, I see the following errors in rt.log
>
> [Fri Apr 15 07:48:06 2011] [info]: Successful login for xxxxx from
> 00.000.000.00 (/opt/rt3/bin/../lib/RT/Interface/Web.pm:430)
> [Fri Apr 15 07:48:42 2011] [error]: Scrip IsApplicable 298 died. - Can't
> call method "Type" on an undefined value at
> /opt/rt3/bin/../lib/RT/Scrip_Overlay.pm line 399 during global destruction.
> (/opt/rt3/bin/../lib/RT/Scrip_Overlay.pm:417)
> [Fri Apr 15 07:48:42 2011] [error]: Scrip IsApplicable 290 died. - Can't
> call method "Type" on an undefined value at
> /opt/rt3/bin/../lib/RT/Scrip_Overlay.pm line 399 during global destruction.
> (/opt/rt3/bin/../lib/RT/Scrip_Overlay.pm:417)
> [Fri Apr 15 07:48:42 2011] [error]: Scrip IsApplicable 205 died. - Can't
> call method "Type" on an undefined value at
> /opt/rt3/bin/../lib/RT/Scrip_Overlay.pm line 399 during global destruction.
> (/opt/rt3/bin/../lib/RT/Scrip_Overlay.pm:417)
> [Fri Apr 15 07:48:42 2011] [error]: Scrip IsApplicable 282 died. - Can't
> call method "Type" on an undefined value at
> /opt/rt3/bin/../lib/RT/Scrip_Overlay.pm line 399 during global destruction.
> (/opt/rt3/bin/../lib/RT/Scrip_Overlay.pm:417)
> [Fri Apr 15 07:48:42 2011] [error]: Scrip IsApplicable 200 died. - Can't
> call method "Type" on an undefined value at
> /opt/rt3/bin/../lib/RT/Scrip_Overlay.pm line 399 during global destruction.
> (/opt/rt3/bin/../lib/RT/Scrip_Overlay.pm:417)
> [Fri Apr 15 07:48:42 2011] [error]: Scrip IsApplicable 187 died. - Can't
> call method "Type" on an undefined value at
> /opt/rt3/bin/../lib/RT/Scrip_Overlay.pm line 399 during global destruction.
> (/opt/rt3/bin/../lib/RT/Scrip_Overlay.pm:417)
> [Fri Apr 15 07:48:42 2011] [error]: Scrip IsApplicable 178 died. - Can't
> call method "Type" on an undefined value at
> /opt/rt3/bin/../lib/RT/Scrip_Overlay.pm line 399 during global destruction.
> (/opt/rt3/bin/../lib/RT/Scrip_Overlay.pm:417)
> [Fri Apr 15 07:48:42 2011] [error]: Scrip IsApplicable 168 died. - Can't
> call method "Type" on an undefined value at
> /opt/rt3/bin/../lib/RT/Scrip_Overlay.pm line 399 during global destruction.
> (/opt/rt3/bin/../lib/RT/Scrip_Overlay.pm:417)
> [Fri Apr 15 07:48:54 2011] [info]: Successful login for yyyyy from
> 00.000.000.00 (/opt/rt3/bin/../lib/RT/Interface/Web.pm:430)
>
> All these scripts have in common that they are Stage=TransactionBatch
>
> If I look inside Scrip_Overlay.pm, I see
> 397         foreach my $TransactionObj ( @Transactions ) {
> 398             # in TxnBatch stage we can select scrips that are not
> applicable to all txns
> 399             my $txn_type = $TransactionObj->Type;
>
> so it looks as if I have an undefined value in @Transactions !?!?
>
> I log all transactions in rt.log and I have not been able to find any
> triggering condition.
>
> Does anyone understand what is happening ?
> How do I start debugging this ?
>
> Thanks
> Gerard
>
>



-- 
Best regards, Ruslan.



More information about the rt-users mailing list