Environment variables being set in bin/geronimo does not account for named
server instances
-------------------------------------------------------------------------------------------
Key: GERONIMO-6174
URL: https://issues.apache.org/jira/browse/GERONIMO-6174
Project: Geronimo
Issue Type: Bug
Security Level: public (Regular issues)
Components: startup/shutdown
Affects Versions: 3.0
Environment: Linux x86, Red Hat Enterprise Linux Server release 5.4
(Tikanga)
Reporter: Russell E Glaue
Priority: Trivial
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
{org.apache.geronimo.server.dir}/var/temp (or
$GERONIMO_HOME/{org.apache.geronimo.server.name}/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 {karaf.home}/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.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira