BTW, I think additional fixes are required in 1.1.1 before claiming support for multiple concurrent server instances from a single installation..

Awhile back I was able to start the server using an external var directory (via -Dorg.apache.geronimo.server.dir). After changing all the ports and trying to start a second instance from the default location, I encountered a startup exception regarding the activemq transaction journal. Suspect code changes are needed to relocate the journal to a location outside the installation directory.

Thanks
-Dave-

John Sisson (JIRA) wrote:
[ http://issues.apache.org/jira/browse/GERONIMO-1638?page=comments#action_12415496 ]
John Sisson commented on GERONIMO-1638:
---------------------------------------

Currently working on scripts as discussed at 
http://www.mail-archive.com/[email protected]/msg22807.html . Have made 
changes but they need to be tested on windows, cygwin and unix, so looks like 
this is going to be for 1.1.1 .



Multiple servers sharing the same repo and config store
-------------------------------------------------------

         Key: GERONIMO-1638
         URL: http://issues.apache.org/jira/browse/GERONIMO-1638
     Project: Geronimo
        Type: New Feature
Security: public(Regular issues) Components: usability
    Versions: 1.0
    Reporter: Gianny Damour
    Assignee: John Sisson
     Fix For: 1.1

David J. sent to the dev mailing list:
Many people have talked on and off about how to set up multiple  servers 
sharing the same repository and config-store, but we haven't  arrived at an 
agreed on way to do it.  We have a prospective customer  for this feature 
(Vincent Massol with Cargo) so I'd like to move  beyond thinking about it in my 
head, discuss it, and have someone  implement it.  I believe any implementation 
will be more or less  trivial, the hard part is figuring out what to do.
I've only thought of ways to extend what we have now, rather than  restructure 
anything or add big new capabilities.  If someone sees a  better way, please 
speak up.
So, we have a ServerInfo gbean that knows where geronimo is located  and can resolve 
absolute locations for other components.  Then we  have things like the repository and 
config store gbeans that  typically are "located" outside the var dir and 
things like the  logging framework,  local attribute manager, derby, and tomcat, that  
typically keep stuff in the var directory.
All or most of these start with the first configuration loaded so  they can't have any 
attributes overridden by config.xml: in fact this  file is read by one of the gbeans that 
we need to "relocate".
I've thought of two related solutions.  Both of them involve giving  ServerInfo 
knowledge of another path and another resolve method.
One would be something like "resolveVar" and would normally resolve  to 
geronimo_home/var.  This would involve all the gbeans currently  looking inside var having the 
"var" trimmed off the front of their  paths and using the new resolveVar method.  In this 
case we'd have  different servers represented as e.g.
var1
var2
var3
...
The other would give ServerInfo something like resolveServer which  would 
normally resolve to geronimo_home.  The gbeans looking inside  var would keep 
their current paths and just call the new resolve  method instead of the old 
one.  In this case we'd have servers like
var
server1/var
server2/var
...
In either case I think starting geronimo with a command line argument  pointing to the 
var directory is the only way to specify which server  you want to run; the default would 
presumably be as now "var".
Several people have suggested putting an additional config-store into  var for 
"private" use by a particular server.  At the moment I think   that providing a 
different config-store class that uses the new  resolve  method on server info would be 
the best way to do this.
I'm not attached to these ideas but this is as far as my thinking has  gone.  
Please comment.
thanks
david jencks

Reply via email to