[
https://issues.apache.org/jira/browse/GERONIMO-6281?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13212688#comment-13212688
]
Russell E Glaue commented on GERONIMO-6281:
-------------------------------------------
Where this should be done or not, when setting
activemq.data = ${activemq.base}/var/activemq
I receive this error output when I attempt to use ${activemq.base} in
config-substitutions:
WARN [JexlEngine]
org.apache.aries.blueprint.ext.JexlExpressionParser.evaluate@56![0,13]:
'activemq.base;' undefined variable activemq.base
It is similar to the error in GERONIMO-6272
ActiveMQ is not able to find a safe path on its own. Thus Geronimo must
configure a safe path for ActiveMQ.
> Geronimo home.dir is being used when server.dir should be used instead for
> SnapshotConfigXMLBuilder, ActiveMQ, and Karaf
> ------------------------------------------------------------------------------------------------------------------------
>
> Key: GERONIMO-6281
> URL: https://issues.apache.org/jira/browse/GERONIMO-6281
> Project: Geronimo
> Issue Type: Sub-task
> Security Level: public(Regular issues)
> Components: ActiveMQ, javaee6
> Affects Versions: 3.0-beta-1
> Environment: Linux x86, Red Hat Enterprise Linux Server release 5.4
> (Tikanga); Java JDK1.6.0_25
> Reporter: Russell E Glaue
> Assignee: Russell E Glaue
> Priority: Minor
> Labels: geronimo
> Attachments: geronimo-6281-activemq.patch, geronimo-6281-karaf.patch,
> geronimo-6281-snapshot.patch, geronimo-6281-trunk-karaf.patch
>
>
> This issue is related to GERONIMO-6270 , GERONIMO-6175 , GERONIMO-6174 ,
> GERONIMO-5987 , and is being used to specifically track modifications related
> to correctly using the following properties:
> # org.apache.geronimo.home.dir (GERONIMO_HOME)
> # org.apache.geronimo.server.dir (GERONIMO_SERVER - new shell variable
> introduced in GERONIMO-6275)
> # karaf.base
> # karaf.home
> Primary issue to be resolved: The org.apache.geronimo.home.dir property
> (GERONIMO_HOME) is being referenced when the org.apache.geronimo.server.dir
> property (GERONIMO_SERVER) should be instead.
> I have identified three places in Geronimo errors are occurring due to
> improper use of the above java properties:
> # SnapshotConfigXMLBuilder - originally reported in GERONIMO-6270
> # ActiveMQ - is reported in a comment of GERONIMO-5987 , and is being
> reported here as requested.
> # Karaf - is additionally reported in GERONIMO-6174 .
> Note the three issues in startup:
> # Karaf initialization script etc/shell.init.script
> -- Error in initialization script: /opt/geronimo3/etc/shell.init.script (No
> such file or directory)
> -- Reason:
> --- This is because karaf.home/etc/shell.init.script is being accessed when
> instead it should be karaf.base/etc/shell.init.script
> -- Solution:
> --- The {karaf.base} property should be the same value as the
> {org.apache.geronimo.server.dir} property
> -- Affected Code:
> ---
> framework/buildsupport/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/server/RunClientMojo.java
> ---
> framework/buildsupport/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/server/StartServerMojo.java
> ---
> trunk/framework/configs/karaf-framework/src/main/distribution/text/etc/system.properties
> ---
> trunk/framework/features/framework/src/main/distribution/text/etc/system.properties
> ---
> trunk/framework/features/client/src/main/filtered-resources/resources/instances/client/etc/system.properties
> ---
> trunk/framework/features/client/src/main/filtered-resources/resources/instances/client/etc/org.ops4j.pax.url.mvn.cfg
> ---
> trunk/framework/modules/geronimo-shell-base/src/main/java/org/apache/geronimo/shell/geronimo/StartServerCommand.java
> ---
> trunk/framework/modules/geronimo-shell-base/src/main/java/org/apache/geronimo/shell/geronimo/StartClientCommand.java
> ---
> trunk/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/serverinfo/BasicServerInfo.java
> ---
> trunk/framework/modules/geronimo-main/src/main/java/org/apache/geronimo/main/FrameworkLauncher.java
> -- These code files are affected, but in relation to specifying the repository
> ---
> trunk/framework/configs/karaf-framework/src/main/distribution/text/etc/org.ops4j.pax.url.mvn.cfg
> ---
> trunk/framework/features/framework/src/main/distribution/text/etc/org.ops4j.pax.url.mvn.cfg
> # SnapshotConfigXMLBuilder var/monitoring/ directory
> -- (A) ERROR [SnapshotConfigXMLBuilder] Could not make the directory
> /opt/geronimo3/var/monitoring/
> -- (B) ERROR [SnapshotConfigXMLBuilder]
> /opt/geronimo3/var/monitoring/snapshot-config.xml (Not a directory)
> -- Reason:
> --- This is because SnapshotConfigXMLBuilder is looking for
> $PWD/var/monitoring
> -- Solution:
> --- SnapshotConfigXMLBuilder should instead be using a full path to
> var/monitoring, i.e. org.apache.geronimo.server.dir/var/monitoring
> -- Affected code:
> ---
> trunk/plugins/monitoring/agent-ejb/src/main/java/org/apache/geronimo/monitoring/ejb/snapshot/SnapshotProcessor.java
> ---
> trunk/plugins/monitoring/agent-jar/src/main/java/org/apache/geronimo/monitoring/snapshot/SnapshotConfigXMLBuilder.java
> # ActiveMQ var/activemq/ directory and Lock File
> -- WARN [AMQPersistenceAdapter] Waiting to Lock the Store var/activemq
> -- Reason:
> --- This is because the ActiveMQ will create and use a var directory relative
> to the path in which Geronimo was started (Note this may not be the actual
> GERONIMO_HOME or GERONIMO_SERVER directory).
> --- If two Geronimo instances are started from the same directory, they will
> share the same var directory, thus they will both want to use the same
> ActiveMQ lock file. This will conflict in the usage of other files in
> var/activemq too.
> -- Solution:
> --- ActiveMQ should instead be using a full path to var/activemq, i.e.
> org.apache.geronimo.server.dir/var/activemq
> -- Affected code:
> ---
> trunk/plugins/activemq/activemq-portlets/src/main/java/org/apache/geronimo/console/jmsmanager/server/JMSBrokerPortlet.java
> Setup for reproducing the errors:
> Follow the example for running multiple instances within the Geronimo Wiki,
> here:
> #
> https://cwiki.apache.org/confluence/display/GMOxDOC30/Running+multiple+Geronimo+instances
> # Then remove the GERONIMO_HOME/var and GERONIMO_HOME/etc directories
> # Create an empty file $PWD/var/monitoring to prevent
> SnapshotConfigXMLBuilder from creating $PWD/var/monitoring when it discovers
> it does not exist
> The errors can be reproduced setting up Geronimo as directed and using the
> start procedure below, resulting with the startup output given. The patch in
> GERONIMO-6275 was applied which allows the easier start procedure of Geronimo
> instances. However, the patch is not necessary to reproduce the errors. Use
> the start scripts in the above mentioned wiki page for "running multiple
> geronimo instances" as an alternative. The snapshot
> geronimo-tomcat7-javaee6-3.0-SNAPSHOT-20111220 was used for testing.
> Example showing both the issue with Karaf and SnapshotConfigXMLBuilder
> {noformat:borderStyle=solid}
> [ger@server /opt/geronimo3]# /bin/rm -r var
> [ger@server /opt/geronimo3]# mkdir var; touch var/monitoring
> [ger@server /opt/geronimo3]# env JAVA_HOME=/usr/jdk1.6.0
> GERONIMO_SERVER=/opt/geronimo3/gserv1 /opt/geronimo3/bin/geronimo run
> Using GERONIMO_HOME: /opt/geronimo3
> Using GERONIMO_SERVER: /opt/geronimo3/gserv1
> 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)
> geronimo> Booting Geronimo Kernel (in Java 1.6.0_25)...
> Starting Geronimo Application Server v3.0-SNAPSHOT
> [***************************** ] 73% 35s Loading agent-car-jmx
> 2012-02-17 16:30:59,710 ERROR
> [SnapshotConfigXMLBuilder] Could not make the directory
> /opt/geronimo3/var/monitoring/
> 2012-02-17 16:30:59,711 ERROR [SnapshotConfigXMLBuilder]
> /opt/geronimo3/var/monitoring/snapshot-config.xml (Not a directory)
> [****************************************] 100% 45s Startup complete
>
> Listening on Ports:
> 1150 0.0.0.0 CORBA Naming Service
> 1199 0.0.0.0 RMI Naming
> 1627 0.0.0.0 Derby Connector
> 2101 0.0.0.0 OpenEJB SSL ORB Adapter
> 4301 0.0.0.0 OpenEJB Daemon
> 6982 0.0.0.0 OpenEJB ORB Adapter
> 8109 0.0.0.0 Tomcat Connector AJP TomcatAJPConnector
> 8180 0.0.0.0 Tomcat Connector HTTP BIO TomcatWebConnector
> 8543 0.0.0.0 Tomcat Connector HTTPS BIO TomcatWebSSLConnector
> 10099 0.0.0.0 JMX Remoting Connector
> 61716 0.0.0.0 ActiveMQ Transport Connector
> Started Application Modules:
> EAR: org.apache.geronimo.plugins/console-tomcat/3.0-SNAPSHOT/car
> JAR: org.apache.geronimo.configs/mejb/3.0-SNAPSHOT/car
> RAR: org.apache.geronimo.configs/activemq-ra/3.0-SNAPSHOT/car
> RAR: org.apache.geronimo.configs/system-database/3.0-SNAPSHOT/car
> RAR: org.apache.geronimo.plugins.monitoring/agent-ds/3.0-SNAPSHOT/car
> RAR: org.apache.geronimo.plugins.monitoring/mconsole-ds/3.0-SNAPSHOT/car
> RAR: org.apache.geronimo.plugins/uddi-db/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.configs/remote-deploy-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.configs/uddi-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.configs/welcome-tomcat/3.0-SNAPSHOT/car
> WAR:
> org.apache.geronimo.plugins.monitoring/mconsole-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.plugins/activemq-console-tomcat/3.0-SNAPSHOT/car
> WAR:
> org.apache.geronimo.plugins/debugviews-console-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.plugins/openejb-console-tomcat/3.0-SNAPSHOT/car
> WAR:
> org.apache.geronimo.plugins/plancreator-console-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.plugins/plugin-console-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.plugins/sysdb-console-tomcat/3.0-SNAPSHOT/car
> Web Applications:
> /
> /activemq
> /console
> /console-base
> /debug-views
> /juddi
> /monitoring
> /openejb-server
> /plan-creator
> /plugin
> /remote-deploy
> /system-database
> Geronimo Application Server started
> {noformat}
> Example showing ActiveMQ creating var directory relative to the path Geronimo
> was started.
> Obviously if a second Geronimo instance was started, there would be a
> conflict with the ActiveMQ lock file.
> {noformat:borderStyle=solid}
> [ger@server /opt]# pwd
> /opt
> [ger@server /opt]# ls -l var
> ls: var: No such file or directory
> [ger@server /opt]# env JAVA_HOME=/usr/jdk1.6.0
> GERONIMO_SERVER=/opt/geronimo3/gserv1 /opt/geronimo3/bin/geronimo run
> Using GERONIMO_HOME: /opt/geronimo3
> Using GERONIMO_SERVER: /opt/geronimo3/gserv1
> 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.
> geronimo> Booting Geronimo Kernel (in Java 1.6.0_25)...
> Starting Geronimo Application Server v3.0-SNAPSHOT
> [**************** ] 42% 11s Loading openjpa2
> 2012-02-17 16:03:45,759 WARN [aries] Managed
> persistence context support is no longer available for use with the Aries
> Blueprint container
> [****************************************] 100% 47s Startup complete
>
> Listening on Ports:
> 1150 0.0.0.0 CORBA Naming Service
> 1199 0.0.0.0 RMI Naming
> 1627 0.0.0.0 Derby Connector
> 2101 0.0.0.0 OpenEJB SSL ORB Adapter
> 4301 0.0.0.0 OpenEJB Daemon
> 6982 0.0.0.0 OpenEJB ORB Adapter
> 8109 0.0.0.0 Tomcat Connector AJP TomcatAJPConnector
> 8180 0.0.0.0 Tomcat Connector HTTP BIO TomcatWebConnector
> 8543 0.0.0.0 Tomcat Connector HTTPS BIO TomcatWebSSLConnector
> 10099 0.0.0.0 JMX Remoting Connector
> 61716 0.0.0.0 ActiveMQ Transport Connector
> Started Application Modules:
> EAR: org.apache.geronimo.plugins/console-tomcat/3.0-SNAPSHOT/car
> JAR: org.apache.geronimo.configs/mejb/3.0-SNAPSHOT/car
> RAR: org.apache.geronimo.configs/activemq-ra/3.0-SNAPSHOT/car
> RAR: org.apache.geronimo.configs/system-database/3.0-SNAPSHOT/car
> RAR: org.apache.geronimo.plugins.monitoring/agent-ds/3.0-SNAPSHOT/car
> RAR: org.apache.geronimo.plugins.monitoring/mconsole-ds/3.0-SNAPSHOT/car
> RAR: org.apache.geronimo.plugins/uddi-db/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.configs/remote-deploy-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.configs/uddi-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.configs/welcome-tomcat/3.0-SNAPSHOT/car
> WAR:
> org.apache.geronimo.plugins.monitoring/mconsole-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.plugins/activemq-console-tomcat/3.0-SNAPSHOT/car
> WAR:
> org.apache.geronimo.plugins/debugviews-console-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.plugins/openejb-console-tomcat/3.0-SNAPSHOT/car
> WAR:
> org.apache.geronimo.plugins/plancreator-console-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.plugins/plugin-console-tomcat/3.0-SNAPSHOT/car
> WAR: org.apache.geronimo.plugins/sysdb-console-tomcat/3.0-SNAPSHOT/car
> Web Applications:
> /
> /activemq
> /console
> /console-base
> /debug-views
> /juddi
> /monitoring
> /openejb-server
> /plan-creator
> /plugin
> /remote-deploy
> /system-database
> Geronimo Application Server started
> ^D
> 2012-02-17 16:16:26,021 WARN [aries] Managed persistence context support is
> no longer available for use with the Aries Blueprint container
> 2012-02-17 16:16:26,022 WARN [context] The
> TransactionSynchronizationRegistry used to manage persistence contexts is no
> longer available. Managed persistence contexts will no longer be able to
> integrate with JTA transactions, and will behave as if no there is no
> transaction context at all times until a new
> TransactionSynchronizationRegistry is available. Applications using managed
> persistence contexts may not work correctly until a new JTA Transaction
> services implementation is available.
> [ger@server /opt]# ls -l
> total 4
> drwxr-xr-x 17 root root 4096 Feb 17 14:17 geronimo3
> drwxr-xr-x 3 root root 4096 Feb 17 16:04 var
> [ger@server /opt]# tree /opt/var
> /opt/var
> `-- activemq
> |-- journal
> | |-- data-1
> | `-- data-control
> |-- kr-store
> | |-- data
> | | |-- index-container-roots
> | | `-- lock
> | `-- state
> | |-- data-kaha-1
> | |-- data-store-state-1
> | |-- hash-index-store-state_state
> | |-- index-kaha
> | |-- index-store-state
> | |-- index-transactions-state
> | `-- lock
> `-- lock
> 5 directories, 12 files
> {noformat}
--
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