Search broken with RT 4.4.2 and RTIR 4.0.0

Hello,
After upgrading from RT 4.4.1 to 4.4.2, it appears that RTIR searches are broken.

RTIR menu -> New search gives the following output:

An internal RT error has occurred. Your administrator can find more details in RT’s log files.

From the log:

RT: [2447] Use of uninitialized value $args{“Type”} in string ne at /opt/rt4/sbin/…/lib/RT/Lifecycle.pm line 152.
RT: [2447] Use of uninitialized value $args{“Type”} in concatenation (.) or string at /opt/rt4/sbin/…/lib/RT/Lifecycle.pm line 152.
RT: [2447] Found type of ticket ne at /opt/rt4/sbin/…/lib/RT/Lifecycle.pm line 152.
RT: [2447] Use of uninitialized value $args{“Type”} in ucfirst at /opt/rt4/sbin/…/lib/RT/Lifecycle.pm line 160.
RT: [2447] invalid module name ‘RT::Lifecycle::’ at /opt/rt4/sbin/…/lib/RT/Lifecycle.pm line 161.#012#012Stack:#012 [/usr/share/perl/5.20/Carp.pm:166]#012 [/usr/share/perl5/UNIVERSAL/require.pm:85]#012 [/opt/rt4/sbin/…/lib/RT/Lifecycle.pm:161]#012 [/opt/rt4/sbin/…/lib/RT/Lifecycle.pm:134]#012 [/opt/rt4/share/html/Elements/SelectStatus:97]#012 [/opt/rt4/share/html/Search/Elements/ConditionRow:74]#012 [/opt/rt4/share/html/Search/Elements/PickBasics:49]#012 [/opt/rt4/share/html/Search/Elements/PickCriteria:54]#012 [/opt/rt4/share/html/Widgets/TitleBox:61]#012 [/opt/rt4/share/html/Search/Elements/PickCriteria:70]#012 [/opt/rt4/local/plugins/RT-IR/html/RTIR/Search/Elements/BuildQuery:71]#012 [/opt/rt4/local/plugins/RT-IR/html/RTIR/Search/index.html:51]#012 [/opt/rt4/sbin/…/lib/RT/Interface/Web.pm:696]#012 [/opt/rt4/sbin/…/lib/RT/Interface/Web.pm:375]#012 [/opt/rt4/share/html/autohandler:53]

Any help would be much appreciated. Anyone seen this yet?

Hello,

We have the same issue. The RTIR search is broken and output the same error with the latest version of RT and RTIR. What is strange is that we can still use the RT search function and search for tickets in the RTIR queues. However, the RTIR chart plotting page is quite buggy and doesn’t allow to save charts anymore.

Could an RTIR wizard look into this issue ?

Would be very much appreciated :slight_smile:

Hi Chris, Henri,

Do either of you have the ability to test the RTIR 4.0.1 release candidate (RTIR 4.0.1 release candidate 1)? We made some fixes with search and charting, so we’d like to hear whether they work for you.

Best,
Shawn

Hi Shawn,
I was able to test RT-IR-4.0.1rc1 on a dev server, and unfortunately it does not seem to make a difference.

The error message and logs are the same.

As a workaround, I commented lines 152, 160, and 161 of /opt/rt4/lib/RT/Lifecycle.pm. The search function in RTIR works as expected with this modification.

Chris

Hi,

The new release candidate have fixed the issues with the RTIR search function and also fixed the charting.

Thanks a lot Shawn !

Henri

Strange that it only worked for one of us. I tried moving the /opt/rt4/local/plugins/RT-IR dir and installing all files fresh and got the same error.

I’m having the same problem. Fresh install with RT 4.4.2 and RTIR 4.0.0.

The error only happens from within RTIR. Search works in RT.

The error stack is:

[3206] [Tue Oct 17 15:37:47 2017] [warning]: Use of uninitialized value $args{“Type”} in string ne at /opt/rt4/sbin/…/lib/RT/Lifecycle.pm line 152. (/opt/rt4/sbin/…/lib/RT/Lifecycle.pm:152)
[3206] [Tue Oct 17 15:37:47 2017] [warning]: Use of uninitialized value $args{“Type”} in concatenation (.) or string at /opt/rt4/sbin/…/lib/RT/Lifecycle.pm line 152. (/opt/rt4/sbin/…/lib/RT/Lifecycle.pm:152)
[3206] [Tue Oct 17 15:37:47 2017] [warning]: Found type of ticket ne at /opt/rt4/sbin/…/lib/RT/Lifecycle.pm line 152. (/opt/rt4/sbin/…/lib/RT/Lifecycle.pm:152)
[3206] [Tue Oct 17 15:37:47 2017] [warning]: Use of uninitialized value $args{“Type”} in ucfirst at /opt/rt4/sbin/…/lib/RT/Lifecycle.pm line 160. (/opt/rt4/sbin/…/lib/RT/Lifecycle.pm:160)
[3206] [Tue Oct 17 15:37:47 2017] [error]: invalid module name ‘RT::Lifecycle::’ at /opt/rt4/sbin/…/lib/RT/Lifecycle.pm line 161.

Stack:
[/usr/share/perl5/vendor_perl/Carp.pm:100]
[/usr/local/share/perl5/UNIVERSAL/require.pm:84]
[/opt/rt4/sbin/…/lib/RT/Lifecycle.pm:161]
[/opt/rt4/sbin/…/lib/RT/Lifecycle.pm:134]
[/opt/rt4/share/html/Elements/SelectStatus:97]
[/opt/rt4/share/html/Search/Elements/ConditionRow:74]
[/opt/rt4/share/html/Search/Elements/PickBasics:49]
[/opt/rt4/share/html/Search/Elements/PickCriteria:54]
[/opt/rt4/share/html/Widgets/TitleBox:61]
[/opt/rt4/share/html/Search/Elements/PickCriteria:70]
[/opt/rt4/local/plugins/RT-IR/html/RTIR/Search/Elements/BuildQuery:71]
[/opt/rt4/local/plugins/RT-IR/html/RTIR/Search/index.html:51]
[/opt/rt4/sbin/…/lib/RT/Interface/Web.pm:696]
[/opt/rt4/sbin/…/lib/RT/Interface/Web.pm:375]
[/opt/rt4/share/html/autohandler:53] (/opt/rt4/sbin/…/lib/RT/Interface/Web/Handler.pm:208)

Any feedback from other users?

Hi,

I don’t know if it’ll be useful, I have changed my $class = “RT::Lifecycle::”.ucfirst($args{Type}); by my $class = “RT::Lifecycle”.ucfirst($args{Type}); in /opt/rt4/lib/RT/Lifecycle.pm and it works.

Hmm, to me that looks more like $args{Type} is empty. If late or on some other installation it isn’t, that change would create a class that isn’t valid. How about replacing that line with these two lines:

my $class = “RT::Lifecycle::”.ucfirst($args{Type});
$class = 'RT::Lifecycle' if(!$args{Type});
1 Like

Hi @GreenJimll

RT:4.4.3 and RTIR 4.0.1

Those lines solve the error that was presented, now RTIR search template to be presented correctly like this. TKS

search_RTIR

This works for me. Thanks!