Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF » [CDO] Model repository in-process with client
[CDO] Model repository in-process with client [message #426589] Thu, 15 January 2009 06:16 Go to next message
Anders Forsell is currently offline Anders ForsellFriend
Messages: 127
Registered: July 2009
Senior Member
Hello,

Is it possible to reconfigure the CDO server (Model repository) to run
in-process with the CDO client accessing the repository? (I am planning to
use the Apache Derby DB)

Any thoughts on if this is a bad/good idea with respects to performance or
other aspects are also very welcome!

---
Anders
Re: [CDO] Model repository in-process with client [message #426593 is a reply to message #426589] Thu, 15 January 2009 12:12 Go to previous messageGo to next message
Stefan Winkler is currently offline Stefan WinklerFriend
Messages: 307
Registered: July 2009
Location: Germany
Senior Member
Hi Anders,
> Is it possible to reconfigure the CDO server (Model repository) to run
> in-process with the CDO client accessing the repository? (I am
> planning to use the Apache Derby DB)
Sure, this is no problem. You can use the basic structure from
http://wiki.eclipse.org/Run_a_CDO_container_inside_eclipse_r untime
(depending on the version of CDO you are using, some method signatures
may be different).

The basic principle is to use the builtin container and a JVM
acceptor/connector pair.

IManagedContainer container = IPluginContainer.INSTANCE;

if (acceptor == null)
acceptor = JVMUtil.getAcceptor(container, "default");

if (connector == null)
connector = JVMUtil.getConnector(container, "default");



Then configure the repository and you are ready to go.


>
> Any thoughts on if this is a bad/good idea with respects to
> performance or other aspects are also very welcome!
I use this as the default in my project. In particular if you want to
use only the model-repository feature of CDO (and not the multi-client
feature), this is the best solution, because the JVM connector uses a
direct communication protocol instead of TCP connections.

Regarding performance, you should think about using HSQLDB instead of
Derby, as Derby is slower than HSQLDB is most cases.

If you have problems, please do not hesitate to ask ;-)

Cheers,
Stefan
Re: [CDO] Model repository in-process with client [message #426596 is a reply to message #426593] Thu, 15 January 2009 12:18 Go to previous messageGo to next message
Simon Mc Duff is currently offline Simon Mc DuffFriend
Messages: 596
Registered: July 2009
Senior Member
What Stefan said is true but I would like to add something.

We are currently in the process to made it quicker. At the moment (for
version M4), JVM connector still needs to write/read in a stream ...
and this will change. Eike did some work in a separate stream to change
CDO Design....

Simon


Stefan Winkler wrote:
> Hi Anders,
>> Is it possible to reconfigure the CDO server (Model repository) to run
>> in-process with the CDO client accessing the repository? (I am
>> planning to use the Apache Derby DB)
> Sure, this is no problem. You can use the basic structure from
> http://wiki.eclipse.org/Run_a_CDO_container_inside_eclipse_r untime
> (depending on the version of CDO you are using, some method signatures
> may be different).
>
> The basic principle is to use the builtin container and a JVM
> acceptor/connector pair.
>
> IManagedContainer container = IPluginContainer.INSTANCE;
>
> if (acceptor == null)
> acceptor = JVMUtil.getAcceptor(container, "default");
>
> if (connector == null)
> connector = JVMUtil.getConnector(container, "default");
>
>
>
> Then configure the repository and you are ready to go.
>
>
>>
>> Any thoughts on if this is a bad/good idea with respects to
>> performance or other aspects are also very welcome!
> I use this as the default in my project. In particular if you want to
> use only the model-repository feature of CDO (and not the multi-client
> feature), this is the best solution, because the JVM connector uses a
> direct communication protocol instead of TCP connections.
>
> Regarding performance, you should think about using HSQLDB instead of
> Derby, as Derby is slower than HSQLDB is most cases.
>
> If you have problems, please do not hesitate to ask ;-)
>
> Cheers,
> Stefan
Re: [CDO] Model repository in-process with client [message #426627 is a reply to message #426593] Thu, 15 January 2009 19:30 Go to previous messageGo to next message
Anders Forsell is currently offline Anders ForsellFriend
Messages: 127
Registered: July 2009
Senior Member
Thanks Stefan, that's the answer I was hoping to get.

Regarding performance I will take a look at HSQLDB.

---
Anders

"Stefan Winkler" <stefan.winkler-et@fernuni-hagen.de> skrev i meddelandet
news:gkn96l$kkd$1@build.eclipse.org...
> Hi Anders,
>> Is it possible to reconfigure the CDO server (Model repository) to run
>> in-process with the CDO client accessing the repository? (I am planning
>> to use the Apache Derby DB)
> Sure, this is no problem. You can use the basic structure from
> http://wiki.eclipse.org/Run_a_CDO_container_inside_eclipse_r untime
> (depending on the version of CDO you are using, some method signatures may
> be different).
>
> The basic principle is to use the builtin container and a JVM
> acceptor/connector pair.
>
> IManagedContainer container = IPluginContainer.INSTANCE;
>
> if (acceptor == null)
> acceptor = JVMUtil.getAcceptor(container, "default");
>
> if (connector == null)
> connector = JVMUtil.getConnector(container, "default");
>
>
>
> Then configure the repository and you are ready to go.
>
>
>>
>> Any thoughts on if this is a bad/good idea with respects to performance
>> or other aspects are also very welcome!
> I use this as the default in my project. In particular if you want to use
> only the model-repository feature of CDO (and not the multi-client
> feature), this is the best solution, because the JVM connector uses a
> direct communication protocol instead of TCP connections.
>
> Regarding performance, you should think about using HSQLDB instead of
> Derby, as Derby is slower than HSQLDB is most cases.
>
> If you have problems, please do not hesitate to ask ;-)
>
> Cheers,
> Stefan
Re: [CDO] Model repository in-process with client [message #426628 is a reply to message #426596] Thu, 15 January 2009 19:37 Go to previous messageGo to next message
Anders Forsell is currently offline Anders ForsellFriend
Messages: 127
Registered: July 2009
Senior Member
That sounds great! I hope his work will make it into the final 2.0 release
in June.

---
Anders

"Simon McDuff" <smcduff@hotmail.com> skrev i meddelandet
news:gkn9m0$q1g$1@build.eclipse.org...
> What Stefan said is true but I would like to add something.
>
> We are currently in the process to made it quicker. At the moment (for
> version M4), JVM connector still needs to write/read in a stream ... and
> this will change. Eike did some work in a separate stream to change CDO
> Design....
>
> Simon
>
>
> Stefan Winkler wrote:
>> Hi Anders,
>>> Is it possible to reconfigure the CDO server (Model repository) to run
>>> in-process with the CDO client accessing the repository? (I am planning
>>> to use the Apache Derby DB)
>> Sure, this is no problem. You can use the basic structure from
>> http://wiki.eclipse.org/Run_a_CDO_container_inside_eclipse_r untime
>> (depending on the version of CDO you are using, some method signatures
>> may be different).
>>
>> The basic principle is to use the builtin container and a JVM
>> acceptor/connector pair.
>>
>> IManagedContainer container = IPluginContainer.INSTANCE;
>>
>> if (acceptor == null)
>> acceptor = JVMUtil.getAcceptor(container, "default");
>>
>> if (connector == null)
>> connector = JVMUtil.getConnector(container, "default");
>>
>>
>>
>> Then configure the repository and you are ready to go.
>>
>>
>>>
>>> Any thoughts on if this is a bad/good idea with respects to performance
>>> or other aspects are also very welcome!
>> I use this as the default in my project. In particular if you want to use
>> only the model-repository feature of CDO (and not the multi-client
>> feature), this is the best solution, because the JVM connector uses a
>> direct communication protocol instead of TCP connections.
>>
>> Regarding performance, you should think about using HSQLDB instead of
>> Derby, as Derby is slower than HSQLDB is most cases.
>>
>> If you have problems, please do not hesitate to ask ;-)
>>
>> Cheers,
>> Stefan
Re: [CDO] Model repository in-process with client [message #426862 is a reply to message #426628] Thu, 22 January 2009 19:24 Go to previous message
Eike Stepper is currently offline Eike StepperFriend
Messages: 6682
Registered: July 2009
Senior Member
Anders,

I'm working on a separation of CDO from Net4j to make it easy to develop
own transports for CDO but Net4j will stay the default signalling
technology of CDO. The same new SPI could also be used to make the CDO
client communicate with the server through direct Java method calls.
Please note that this feature is currently not on the plan but please
feel free to file a bugzilla for it ;-)

Cheers
/Eike

----
http://thegordian.blogspot.com



Anders Forsell schrieb:
> That sounds great! I hope his work will make it into the final 2.0
> release in June.
>
> ---
> Anders
>
> "Simon McDuff" <smcduff@hotmail.com> skrev i meddelandet
> news:gkn9m0$q1g$1@build.eclipse.org...
>> What Stefan said is true but I would like to add something.
>>
>> We are currently in the process to made it quicker. At the moment
>> (for version M4), JVM connector still needs to write/read in a
>> stream ... and this will change. Eike did some work in a separate
>> stream to change CDO Design....
>>
>> Simon
>>
>>
>> Stefan Winkler wrote:
>>> Hi Anders,
>>>> Is it possible to reconfigure the CDO server (Model repository) to
>>>> run in-process with the CDO client accessing the repository? (I am
>>>> planning to use the Apache Derby DB)
>>> Sure, this is no problem. You can use the basic structure from
>>> http://wiki.eclipse.org/Run_a_CDO_container_inside_eclipse_r untime
>>> (depending on the version of CDO you are using, some method
>>> signatures may be different).
>>>
>>> The basic principle is to use the builtin container and a JVM
>>> acceptor/connector pair.
>>>
>>> IManagedContainer container = IPluginContainer.INSTANCE;
>>>
>>> if (acceptor == null)
>>> acceptor = JVMUtil.getAcceptor(container, "default");
>>>
>>> if (connector == null)
>>> connector = JVMUtil.getConnector(container, "default");
>>>
>>>
>>>
>>> Then configure the repository and you are ready to go.
>>>
>>>
>>>>
>>>> Any thoughts on if this is a bad/good idea with respects to
>>>> performance or other aspects are also very welcome!
>>> I use this as the default in my project. In particular if you want
>>> to use only the model-repository feature of CDO (and not the
>>> multi-client feature), this is the best solution, because the JVM
>>> connector uses a direct communication protocol instead of TCP
>>> connections.
>>>
>>> Regarding performance, you should think about using HSQLDB instead
>>> of Derby, as Derby is slower than HSQLDB is most cases.
>>>
>>> If you have problems, please do not hesitate to ask ;-)
>>>
>>> Cheers,
>>> Stefan
>


Previous Topic:Strange EMF Behavior
Next Topic:Derby Client Adapter load problem for CDO Server using teneo/hibernate
Goto Forum:
  


Current Time: Thu Apr 25 11:54:14 GMT 2024

Powered by FUDForum. Page generated in 0.03549 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top