** Description changed: == Begin SRU Template == - [Impact] + [Impact] - * On upgrade of tomcat7 package, if a user has updated their JAVA_OPTS variable to include a '%' an upgrade will fail. The sed command in the postinst uses the '%' character to act as a delimiter, previous versions used '/' however it was updated to '%' in hopes it was far less common. - * This SRU updates it to a character that should not be found in the JAVA_ARGS value, namely '\001'. - * This is the same solution Debian and tomcat maintainers are now using for Tomcat8. + * On upgrade of tomcat7 package, if a user has updated their JAVA_OPTS variable to include a '%' an upgrade will fail. The sed command in the postinst uses the '%' character to act as a delimiter, previous versions used '/' however it was updated to '%' in hopes it was far less common. + * This SRU updates it to a character that should not be found in the JAVA_ARGS value, namely '\001'. + * This is the same solution Debian and tomcat maintainers are now using for Tomcat8. + [Test Case] - Install the version from the trusty pocket. Modify JAVA_OPTS and then - install the version from security/updates to reproduce the issue. + An example to test Tomcat7 on Trusty. The same instructions can apply to + Tomcat8 on the other releases. - * lxc launch ubuntu-daily:trusty terusty - * lxc exec trusty bash - * apt install tomcat7=7.0.52-1 - * Edit /etc/defaults/tomcat7, set JAVA_OPTS="-Djava.awt.headless=true -XX:ErrorFile=/var/log/tomcat7/java_error%p.log -XX:+DisableExplicitGC -XX:+UseG1GC" - * Enable proposed or use version from ppa (ppa:powersj/tomcat7-1666570) - * apt update - * apt install tomcat7 - * Keep the local version currently installed - * With the fix, install will complete - * Without the fix, post-installation script will return a sed -e expression #1 error. + Overview: Install the version from the current release. Modify JAVA_OPTS + and then install the version from proposed to validate it upgrades + successfully. + + * lxc launch ubuntu-daily:trusty trusty + * lxc exec trusty bash + * apt install tomcat7 + * Edit /etc/defaults/tomcat7, set JAVA_OPTS="-Djava.awt.headless=true -XX:ErrorFile=/var/log/tomcat7/java_error%p.log -XX:+DisableExplicitGC -XX:+UseG1GC" + * # Enable proposed + * apt update + * apt install tomcat7 + * When asked, 'Keep the local version currently installed' + * With the fix, install will complete + * Without the fix, the error as described under "Other Info" will appear + [Regression Potential] - * Using a new delimiter that is far less likely to be in someone's path. This is not the first time the delimiter has changed, as it originally as '/' which is obviously going to show up as soon as someone adds a path. - * Upstream change to tomcat8: https://anonscm.debian.org/cgit/pkg-java/tomcat8.git/patch/?id=7664221d66701e2c31a31fe3b4f22e8bea4158dc + * Users currently experiencing this issue would be expecting a SRU fix to come from us. Working around it would require changing their JAVA_OPTS temporarily, accepting the maintainers version of the defaults script, or modifying the package's postinst script directly. + * In either case the proposed fix will over write any changes an end user may have made to the postinst, and all for correctly working expected behavior. + * There is the slight, albeit incredibly low chance, that someone actually has the '\001' character in their JAVA_OPTS. In which, case the upgrade would fail as this bug describes. + [Other Info] - * Error message on failure: + * Using a new delimiter that is far less likely to be in someone's path. This is not the first time the delimiter has changed, as it originally as '/' which is obviously going to show up as soon as someone adds a path. + * Upstream change to tomcat8: https://anonscm.debian.org/cgit/pkg-java/tomcat8.git/patch/?id=7664221d66701e2c31a31fe3b4f22e8bea4158dc + * Error message on failure: Setting up tomcat7 (7.0.52-1ubuntu0.10) ... sed: -e expression #1, char 97: unknown option to `s' dpkg: error processing package tomcat7 (--configure): subprocess installed post-installation script returned error exit status 1 Errors were encountered while processing: tomcat7 E: Sub-process /usr/bin/dpkg returned an error code (1) - + == End SRU Template ==
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1666570 Title: Post install script has error in RegEx To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/tomcat7/+bug/1666570/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
