Hi,
I am testing the upgrade from RT 4.0.19 + RTIR 3.0.2 → RT 4.2.7 + RTIR
3.2.0rc1, and I found a problem when updating RTIR.
The install is based on Debian packages for RT and postgresql 9.1.14. My
procedure was:
- Upgrade distro from stable to testing (to get 4.2.7 packages)
- Upgrade RT packages to 4.2.7 → package update ok, but the automatic
dbconfig-common update process was not successful. I fixed config files
manually.
- Upgrade database (rt-setup-database --action upgrade). → result OK
- Disable RTIR and delete its directory
- Download RTIR 3.2.0rc1
- perl Makefile.PL → I had to install Parse::Boolean from CPAN manually
- make
- make upgrade-database → this does not work if you use peer
authentication for postgres user. However, I copy the command and execute
it with the proper parameters for authentication (including the --package
parameter)
- it asks for the RT::IR version I’m upgrading from.
- it shows all the RT versions later than RT 3.0, up to 4.2.7, instead
of RTIR versions. When I continue (either specifying a target version or
not), it gives the following error:
[critical]: DBD::Pg::st execute failed: ERROR: relation
“attributes_id_seq” already exists at
/usr/share/request-tracker4/lib/RT/Handle.pm line 528.
(/usr/share/request-tracker4/lib/RT.pm:389)
I guess it’s trying to re-apply RT upgrades instead of RTIR’s, and failing
because they are already applied.
Is there a manual database upgrade progress that I can use? Shoud I use the
scripts in $RTIR-HOME/etc/upgrade? In that case how?
If I ignore the errors and enable RTIR, there are several errors:
- When trying to Edit an RTIR ticket:
[19654] [Thu Oct 23 18:12:38 2014] [error]: Can’t call method “Name” on an
undefined value at
/usr/local/share/request-tracker4/plugins/RT-IR/lib/RT/IR.pm line 642.
Stack:
[/usr/local/share/request-tracker4/plugins/RT-IR/lib/RT/IR.pm:642]
[/usr/local/share/request-tracker4/plugins/RT-IR/html/RTIR/Elements/EditConstituency:83]
[/usr/share/request-tracker4/html/Elements/EditCustomField:111]
[/usr/local/share/request-tracker4/plugins/RT-IR/html/RTIR/Elements/EditRTIRField:48]
[/usr/local/share/request-tracker4/plugins/RT-IR/html/RTIR/Edit.html:119]
[/usr/share/request-tracker4/html/Widgets/TitleBox:56]
[/usr/local/share/request-tracker4/plugins/RT-IR/html/RTIR/Edit.html:130]
[/usr/share/request-tracker4/lib/RT/Interface/Web.pm:681]
[/usr/share/request-tracker4/lib/RT/Interface/Web.pm:369]
[/usr/share/request-tracker4/html/autohandler:53]
(/usr/share/request-tracker4/lib/RT/Interface/Web/Handler.pm:209)
I have found that this is due to the Constituency CustomField type set to
“Select multiple values” instead of the default “Select one value”. This
used to work in RTIR 3.0.2.
If you reset it back to “Select one value”, Edit works.
Note: our constituencies are created from the web gui, not using the cli
tool, since we don’t need the advanced ACL features.
- When displaying Incident Report, when loading the History area:
[19654] [Thu Oct 23 18:12:45 2014] [error]: Wide character in subroutine
entry at
/usr/local/share/request-tracker4/plugins/RT-IR/html/Callbacks/RTIR/Elements/MakeClicky/Default
line 252.
Stack:
[/usr/local/share/request-tracker4/plugins/RT-IR/html/Callbacks/RTIR/Elements/MakeClicky/Default:252]
[/usr/share/request-tracker4/html/Elements/ShowTransactionAttachments:205]
[/usr/share/request-tracker4/html/Elements/ShowTransactionAttachments:81]
[/usr/share/request-tracker4/html/Elements/ShowTransaction:72]
[/usr/share/request-tracker4/html/Elements/ShowHistory:121]
[/usr/share/request-tracker4/html/Helpers/TicketHistory:48]
[/usr/share/request-tracker4/html/Helpers/autohandler:51]
[/usr/share/request-tracker4/lib/RT/Interface/Web.pm:681]
[/usr/share/request-tracker4/lib/RT/Interface/Web.pm:369]
[/usr/share/request-tracker4/html/autohandler:53]
(/usr/share/request-tracker4/lib/RT/Interface/Web/Handler.pm:209)
I have tried leaving MakeClicky options as default with no luck.
Thank you in advance for any hints about the problem!
Kind regards,
Marcos.2014-10-06 23:13 GMT+02:00 Kevin Falcone falcone@bestpractical.com:
RTIR 3.2.0rc1 is the first release candidate of RTIR compatible with RT
4.2.
It is only compatible with RT 4.2.7 and later and will refuse to install
on earlier versions of RT 4.2.
You should be sure to review both core RT’s UPGRADING-4.2 as well as
RTIR’s UPGRADING-3.2 documentation.
http://download.bestpractical.com/pub/rt/devel/RT-IR-3.2.0rc1.tar.gz
http://download.bestpractical.com/pub/rt/devel/RT-IR-3.2.0rc1.tar.gz.asc
SHA1 sums
02e3afef82636a1474b01fdd41dbf277868f5cd1 RT-IR-3.2.0rc1.tar.gz
d1fe337868c7edad5a65ff9821c19805de147319 RT-IR-3.2.0rc1.tar.gz.asc
Numerous internal updates have been made for compatibility with RT 4.2.
If you have local modifications to RTIR you will want to ensure that you
update them for compatibility. RT 4.2 renamed many components and
introduced a new /static/ root for CSS/JS etc. As a result, many
components and callbacks in RTIR have also been modified to align with
core renames. You should be sure to review UPGRADING-4.2 in core RT.
RTIR makes use of RT’s Custom Field Grouping feature, you can read more
about it in RTIR_Config.pm and make use of it to organize both RTIR’s
core Custom Fields as well as your site-specific fields.
RTIR’s Constituencies have been refactored and will now provide better
error messages and will make better use of caching and other performance
enhancements. This release also includes recent bugfixes from 3.0 to
ensure that Constituency does not lose state during ticket creation and
editing.
RTIR’s linkification of ticket histories will be cached by default on
4.2 which will assist with ticket history rendering on second load.
RTIR now also uses RT’s delayed-load for history, causing history to be
loaded via JavaScript after the rest of the page is rendered, improving
page load times.
When linking an Incident Report to an Incident after Incident Creation,
the IR IP Custom Fields will be automatically copied. Framework now
exists to easily add new Scrips to copy other Custom Fields.
Particularly useful if you link IRs to Incidents using the API.
When splitting a ticket, you can now change Due and Starts. In addition,
you can now manually change an Incident’s Due Date.
RTIR now uses core’s Forward functionality, allowing a message to be
included with a forward, as well as forwarding of a full ticket in
addition to transactions. Forwards are recorded in the history of a
ticket.
RTIR now has access to core’s improved charting, allowing grouping by
multiple attributes and calculation of some ticket statistics.
The $RTIR_OldestRelatedTickets will now apply to tickets updated in the
last n days for any Lookup search.
In addition to GnuPG support, RTIR can now leverage RT’s S/MIME
integration. See the core RT documentation for specifics and
configuration.
Users who are members of a DutyTeam will now be redirected to the RTIR
Homepage on login.
Additionally many bugs were squashed, performance enhancements made,
doc cleaned up and new callbacks added.
A complete changelog is available from git by running:
git log 3.0.2…3.2.0rc1
or visiting
Comparing 3.0.2...3.2.0rc1 · bestpractical/rtir · GitHub
–
RT Training - November 4-5 Los Angeles
http://bestpractical.com/training