Details
-
Bug
-
Status: Resolved
-
Trivial
-
Resolution: Fixed
-
3.0.0
-
Security Level: public (Regular issues)
-
Linux x86, Red Hat Enterprise Linux Server release 5.4 (Tikanga)
Description
I have been able to workaround these two issues by setting properties.
Questions:
1A) But should these properties be dynamically set relative to the named instance directory instead of GERONIMO_HOME?
1B) Or do we require the user to explicitly set these in the environment in order to start a named instance?
2) Does setting karaf.home in GERONIMO_OPTS as relative to the named instance directory instead of GERONIMO_HOME potentially cause any other issues?
To produce these issues follow these steps:
1. Unpack the latest Geronimo javaee6 bundle as /opt/geronimo3
2. Create a Geronimo named instance directory as /opt/geronimo3/gserv1
3. Move the directories var, etc, and repository into /opt/geronimo3/gserv1
4. Use this start script
#!/bin/bash GHOME=/opt/geronimo3 GVIRT=gserv1 # Must change to the server directory in order to work around ActiveMQ lock # file conflict issue reported in GERONIMO-5987. cd ${GHOME}/${GVIRT} # Uncomment for the Workaround of issue #1 #export GERONIMO_TMPDIR=${GHOME}/${GVIRT}/var/temp # # Uncomment for the Workaround of issue #2 #GERONIMO_OPTS="${GERONIMO_OPTS} -Dkaraf.home=${GHOME}/${GVIRT}" # GERONIMO_OPTS="${GERONIMO_OPTS} -Dorg.apache.geronimo.server.name=${GVIRT}" export GERONIMO_OPTS ${GHOME}/bin/geronimo run
1) GERONIMO_TMPDIR
On startup, the `bin/geronimo` startup script sets GERONIMO_TMPDIR explicitly as
$GERONIMO_HOME/var/temp , but the actual temp directory is really
/var/temp (or
$GERONIMO_HOME/
/var/temp)
It does not account for the cases where an instance is being started.
[user@system gserv1]# ./start.sh Using GERONIMO_HOME: /opt/geronimo3 Using GERONIMO_TMPDIR: /opt/geronimo3/var/temp Using JRE_HOME: /usr/jdk1.6.0/jre Error launching framework: java.lang.IllegalArgumentException: Invalid temporary directory. The '/opt/geronimo3/var/temp' path does not exist.
The workaround is to specifically specify GERONIMO_TMPDIR in your environment
before starting the instance.
2) karaf.home
On startup, the `bin/geronimo` script sets karaf.home explicitly as
$GERONIMO_HOME . Karaf expects to use
/etc/shell.init.script each
time a shell session is started (See:
geronimo/server/trunk/framework/configs/karaf-framework/src/main/distribution/text/etc/system.properties).
The setting of the karaf.home property in `bin/geronimo` does not account for
the cases where a Geronimo named instance is being started.
[root@rglaue7 gserv1]# ./start.sh Using GERONIMO_HOME: /opt/geronimo3 Using GERONIMO_TMPDIR: /opt/geronimo3/gserv1/var/temp Using JRE_HOME: /usr/jdk1.6.0/jre ______ _ / ____/___ _________ ____ (_)____ ___ ____ / / __ / _ \/ ___/ __ \/ __ \/ // __ `__ \/ __ \ / /_/ // __/ / / /_/ / / / / // / / / / / /_/ / \____/ \___/_/ \____/_/ /_/_//_/ /_/ /_/\____/ Apache Geronimo (3.0-SNAPSHOT) Hit '<tab>' for a list of available commands and '[cmd] --help' for help on a specific command. Hit '<ctrl-d>' or 'osgi:shutdown' to shutdown Geronimo. Error in initialization script: /opt/geronimo3/etc/shell.init.script (No such file or directory) ... snip ...
The workaround is to set karaf.home in GERONIMO_OPTS before starting the instance.
Attachments
Issue Links
- depends upon
-
GERONIMO-6270 Re-enable multiple instances support in one installation
- Resolved
- relates to
-
GERONIMO-6275 Defining and Using org.apache.geronimo.server.dir versus org.apache.geronimo.home.dir in shell scripts
- Resolved
-
GERONIMO-6281 Geronimo home.dir is being used when server.dir should be used instead for SnapshotConfigXMLBuilder, ActiveMQ, and Karaf
- Resolved