db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Van Couvering <David.Vancouver...@Sun.COM>
Subject Re: Multiple engines in same JVM
Date Wed, 20 Jul 2005 20:33:45 GMT

Jeremy Boynes wrote:

> I would like to explore the possibility of running multiple Derby 
> instances in the same JVM, probably in different classloaders.

You use the term "Derby instance" but I'm not sure what you mean here.

Based on a discussion I had with Dan, a Derby "system" is the union of 
all databases running under the same classloader.  Is that what you 
mean?  Each system is supposed to have its own configuration.  But I had 
trouble figuring out how to do this with multiple classloaders (see your 
system properties discussion below), and nowhere do I see this tested 

I thought Dag, with Kathey's help, was able to configure things such 
that you could have different Derby properties set for different 
databases in the same VM.  Dag, how did that work again?

> One use for that is an application server configuration where different 
> applications may require different versions of Derby or where different 
> instances may have different requirements e.g. for security.
> Two big issues come to mind:
> 1) use of system properties
>    I would like to explore ways in which these can be replaced with a
>    per-instance configuration mechanism where each instance can have
>    separate properties. This could be as simple as a per-classloader
>    static property map but ideally something a little more flexible
>    would be useful

Well, I would love us moving to JMX.  It would solve a lot of problems 
around configuration for us, and it would also enable management by nice 
pretty GUIs, integration into larger systems managed by JMX (e.g. most 
app servers), etc.

I recognize this a change with system-wide impact which can not be taken 
upon lightly.  We'd also have to do it in a way that is pluggable, JMX 
is not something I expect is part of J2ME...

> 2) common touch point in DriverManager, especially for use within
>    stored procedures.
>    I think we can do something here with a special Driver implementation
>    that could handle multiple engine instances which I think makes this
>    related to David Van Couvering's common jar discussion.

I don't understand this point, could you explain further?

That said, I do agree if what you are discussing involves multiple 
classloaders, then I think there is some crossover here and we should 
talk to make sure I don't design something that will require rework 
later on to support what you are envisioning here.


> Thoughts?
> -- 
> Jeremy

View raw message