Amazon Linux Tomcat Upgrade Issue
Matillion updates via yum and uses the standard Amazon repositories for all dependencies not distributed via the Matillion yum repository, including tomcat. Amazon recently took the decision to package tomcat-8.5 in place of tomcat-8.0. However, both versions are packaged under the same name: tomcat8. Upgrading from one to the other is not currently possible.
While this is not a major problem for new installations, upgrading an older instance using a full yum update gives the following:
$ sudo yum update ... Error: tomcat80-el-3.0-api conflicts with tomcat8-el-3.0-api-8.5.23-1.75.amzn1.noarch Error: tomcat80-lib conflicts with tomcat8-lib-8.5.23-1.75.amzn1.noarch Error: tomcat80-jsp-2.3-api conflicts with tomcat8-jsp-2.3-api-8.5.23-1.75.amzn1.noarch Error: tomcat80 conflicts with tomcat8-8.5.23-1.75.amzn1.noarch Error: tomcat80-servlet-3.1-api conflicts with tomcat8-servlet-3.1-api-8.5.23-1.75.amzn1.noarch You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest
Matillion upgrades via the UI work as expected, since they only update packages matching matillion-*. So, this only affects you if you launched your copy of Matillion ETL prior to 1.29, and have upgraded in-place since, and want to update all of the system package.
Follow these steps to get back to a working state - after taking a backup of the instance, of course.
Remove the existing Tomcat8 packages, but don’t remove any dependencies like Matillion - we’ll want those packages again in a moment and don’t want to remove and re-install Matillion:
$ sudo rpm -e --nodeps tomcat8 tomcat8-el-3.0-api tomcat8-jsp-2.3-api tomcat8-lib tomcat8-servlet-3.1-api
Reinstall the base package - this will pull all those packages back in, but with correct versions
$ sudo yum install tomcat8
The uninstall removed the server configuration, but backed up the important files. Restore them:
$ sudo sh -c 'for CONFFILE in tomcat8.conf tomcat-users.xml server.xml context.xml; do cp /etc/tomcat8/$CONFFILE.rpmsave /etc/tomcat8/$CONFFILE; done'
Ensure we restore access to key configuration files:
$ sudo /usr/local/bin/matillion_ensure.sh
Ensure the Tomcat service starts correctly on reboot:
$ sudo chkconfig --level 234 tomcat8 on
And finally restart Tomcat:
$ sudo service tomcat8 restart
For further assistance with this issue, do not hesitate to Contact Matillion Support.