Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 411597 - Adapt www-servers/tomcat-7 init script to support multiple instances
Summary: Adapt www-servers/tomcat-7 init script to support multiple instances
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Java (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Java team
URL:
Whiteboard:
Keywords:
Depends on: 428002
Blocks:
  Show dependency tree
 
Reported: 2012-04-11 14:44 UTC by Tomas Kadlec
Modified: 2012-09-06 14:32 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tomas Kadlec 2012-04-11 14:44:20 UTC
Init script provided with the \>=www-servers/tomcat-7 package has hardcoded PID file in start-stop-daemon calls. It would be correct to configure PID file per instance, i.e. in appropriate init script config file in /etc/conf.d/.

It is simp;

Reproducible: Always

Steps to Reproduce:
1. Copy /etc/conf.d/tomcat-7 to something else, eg. /etc/conf.d/tomcat-7-second.
2. Edit /etc/conf.d/tomcat-7-second, modify vars CATALINA_BASE to point to your app directory, CATALINA_TMPDIR to point to temp directory.
3. Create a symlink /etc/init.d/tomcat-7-second pointing to /etc/init.d/tomcat-7.
4. Start first tomcat (/etc/init.d/tomcat-7 start).
5. Try to start second (/etc/init.d/tomcat-7-second start) and it will fail because of existing hardcoded PID file in the init script.
Actual Results:  
Init script does not allow to run multiple instances.

Expected Results:  
Init script that allows running multiple instances simultaneously.

It has simple correction:
1. Introduce a new variable with a PID file name in init script configuration.
2. Use this new variable in init script.
Comment 1 Miroslav Šulc gentoo-dev 2012-09-06 14:32:33 UTC
*tomcat-7.0.29-r1 (20 Jul 2012)
*tomcat-6.0.35-r1 (20 Jul 2012)

  20 Jul 2012; Ralph Sennhauser <sera@gentoo.org> +tomcat-6.0.35-r1.ebuild,
  +files/tomcat-6.0.35-build.xml.patch, +tomcat-7.0.29-r1.ebuild,
  +files/tomcat-7.0.29-build.xml.patch, +files/tomcat.conf, +files/tomcat.init,
  +files/tomcat-instance-manager.bash, metadata.xml:
  Full rewrite.
  Add tomcat-instance-manager.bash to convienintly create and remove multiple
  instances.
  Don't symlink jars but use java-config as appropriate.
  Migrate init script to baselayout2 including major cleanup.
  Add use extra-webapps to build and install the docs and examples web apps.
  Use USE=doc for javadocs.
  Major cleanup of the ebuild, like dropping elog massages obsolete for ages.
  Don't copy manager and host-manager to catalina base but use a shared
  instance in catalina home which gets updated with a package
  update.
  Actually install sources if requested.
  Initial Gentoo Prefix support.
  #180519 : don kill ROOT application
  #191611 : init script improvements
  #254526 : emerge --config, implemented with tomcat-instance-manager.bash
  #283273, #363931 : build docs and examples 
  #309211 : handling of manager / host-manager
  #333153 : arbitrary classpath per instance
  #381693 : init fails with non existent CATALINA_TMPDIR
  #406285, #411597 : support multiple instances
  #407979 : fails if /run is tmpfs
  #420383 : forces invalid java compiler