Home » Modeling » EMF » Generating editors for CDO(What is that feasibility of generating EMF like editors for CDO?)
Generating editors for CDO [message #504445] |
Sat, 19 December 2009 12:02 |
|
Hi,
Has anyone modified the JET templates for generating EMF editors so that they create CDO aware editors? Has anyone considered if this is even a feasible approach?
I am considering looking into this soon, but figured I would ask before I leaped
Thanks,
Joel
|
|
| |
Re: Generating editors for CDO [message #504545 is a reply to message #504448] |
Mon, 21 December 2009 12:04 |
Victor Roldan Betancort Messages: 524 Registered: July 2009 |
Senior Member |
|
|
Joel,
[UI] CDO Enhanced Editor Generator
https://bugs.eclipse.org/bugs/show_bug.cgi?id=245836
This may be what you were looking for. The templates are probably
out-of-date, but shouldn't be difficult to update. I would assist you if
necessary.
Cheers,
Víctor.
Eike Stepper escribió:
> Hi Joel,
>
> Vik is our UI responsible, so maybe he can give more insights.
>
> IIRC, you only need to create an EditingDomain with the ResourceSet of
> your CDOTransaction. Be sure to either
> transaction.options()addChangeSubscriptionPolicy(CDOAdapterP olicy.ALL)
> or use the CDOEventHandler to react to remote changes.
>
> Cheers
> /Eike
>
> ----
> http://thegordian.blogspot.com
> http://twitter.com/eikestepper
>
>
>
> Joel Rosi-Schwartz schrieb:
>> Hi,
>>
>> Has anyone modified the JET templates for generating EMF editors so
>> that they create CDO aware editors? Has anyone considered if this is
>> even a feasible approach?
>>
>> I am considering looking into this soon, but figured I would ask
>> before I leaped ;)
>>
>> Thanks,
>> Joel
|
|
|
Re: Generating editors for CDO [message #504555 is a reply to message #504545] |
Mon, 21 December 2009 09:06 |
|
Yes Victor that is exactly what i am looking for, thanks. I will dig into these this week and let you know how I fare.
I am also interested in the CDO Definition (Launcher) stuff that is discussed in Bug 246623. Is there any documentation on how to use this feature available?
Cheers,
Joel
Victor Roldan Betancort wrote on Mon, 21 December 2009 12:04 | Joel,
[UI] CDO Enhanced Editor Generator
https://bugs.eclipse.org/bugs/show_bug.cgi?id=245836
This may be what you were looking for. The templates are probably
out-of-date, but shouldn't be difficult to update. I would assist you if
necessary.
Cheers,
Víctor.
|
|
|
| | |
Minimalistic tutorial to the cdo- and net4j-defs [message #504593 is a reply to message #504568] |
Mon, 21 December 2009 17:00 |
Andre Dietisheim Messages: 131 Registered: July 2009 |
Senior Member |
|
|
Hi Joel
sure I can jump in!. I'm unfortunately far too busy but I'm here ;-)
Unfortunately there's no documentation at all, mea culpa. As Vik already
said, the defs are quite simple to understand.
The defs are factories for the various components you have to create in
order to have a client and a server up and running. The defs are
ecore-objects and may therefore be easyly persited to files and deliver
various file based configurations.
The way to get a working def instance (an xmi-file) follows this scheme:
Suppose you want to create a file-based configuration for a transaction.
Open up "org.eclipse.emf.cdo.defs.ecore" in the ecore-editor. Pick
CDOTransactionDef and pick "Create dynamic instance" in the context-menu
of the ecore editor. You may then create an xmi file: let's call it
TerriblyImportantCDOTransaction.xmi. The xmi file contains a instance of
a factory, that will create a CDOTransaction for you. If you load
TerriblyImportantCDOTransaction.xmi in the ecore editor, you'll discover
that it contains a CDO Session Def instance. The properties view shows
you the properties that may be configured. It asks for CDO Session Def.
The factory for cdo transactions TerriblyImportantCDOTransaction.xmi
contains needs a def for a cdo session. So you get back to
"org.eclipse.emf.cdo.defs.ecore" and create a dynamic instance for
CDOSessionDef. Get back to your editor for
TerriblyImportantCDOTransaction.xmi and load your CDO Session Def :
Choose "Load Resource" and indicate the xmi file you create in the
former step. The CDOSessionDef instance is now selectable as value for
the CDO Session Def property. Of course the cdo session def also needs
various properties in order to be able to create a cdo session. The
CDOSessionDef factory needs instances of ConnectorDef,
EPackageRegistryDef and FailoverStrategyDef. That's where you have to
proceed in the same way: Create dynamic instances and load them as
resources. The remaining properties may be filled in directly: you have
a boolean value to indicate if legacy support's enabled and you may
provide the name of the repository your session's bound to.
Technically spoken, the most comprehensive source to understand the defs
are the tests. There are tests for all defs in both projects:
- org.eclipse.emf.cdo.tests:
* EGlobalPackageDefImplTest
* CDOPackageRegistryDefImplTest
* CDOSessionDefImplTest
* CDOViewDefImplTest
* CDOAuditDefImplTest
* CDOTransactionDefImplTest
* CDOViewDefImplTest
* CDOResourceDefImplTest
- org.eclipse.net4j.tests:
* TestDefTest
* TCPAcceptorDefImplTest
* TCPConnectorDefImplTest
* JVMAcceptorDefImplTest
* JVMConnectorDefImplTest
I'd suggest you check with CDOTransactionDefImplTest. This is the most
complete scenario that plugs various (net4j and cdo) defs that are
needed to get a transaction. It shows the dependency graph fairly well.
I hope this helps for your first step. I'd of course be more than glad
to assist you!
Cheers
André
Víctor Roldán Betancort wrote:
> Joel,
>
>> I am also interested in the CDO Definition (Launcher) stuff that is
>> discussed in https://bugs.eclipse.org/bugs/show_bug.cgi?id=246623 Is
>> there any documentation on how to use this feature available?
>
> I believe there isn't any documentation on the CDO Definitions feature,
> but it's actually quite simple to understand, the models and the code
> should be enough self-explanatory. Furthermore, these are a good way to
> get to know about most of the CDO/Net4j core concepts :D
>
> There are several models for different concepts of the CDO/Net4j
> framework that can be easily wired-up by using convenient generated API.
>
> - org.eclipse.emf.cdo.defs
> - org.eclipse.emf.cdo.ui.defs
> - org.eclipse.net4j.ui.defs
> - org.eclipse.net4j.defs
> - org.eclipse.net4j.util.defs
>
> André developed this feature, hopefully he can jump in :)
>
> Cheers,
> Víctor.
|
|
| |
Re: Generating editors for CDO [message #504605 is a reply to message #504555] |
Mon, 21 December 2009 18:05 |
|
Hi Victor,
Okay so far so good. The code builds fine under CDO 3.0 and I have been able to generate the enhanced editor for my model. Well at least partially as I have four packages in the genmodel definition, one each for the four ecore models that are its inputs. This generates one set of projects (model, edit, editor, test) each of which contains four packages. What I want to do now is modify the CDO Enhanced Editor Generator to loop over all of the packages in the project and enhance each one. Can you point me at a logical place in the code to start looking at this?
Thanks,
Joel
Joel Rosi-Schwartz wrote on Mon, 21 December 2009 09:06 | Yes Victor that is exactly what i am looking for, thanks. I will dig into these this week and let you know how I fare.
...
Cheers,
Joel
Victor Roldan Betancort wrote on Mon, 21 December 2009 12:04 | Joel,
[UI] CDO Enhanced Editor Generator
https://bugs.eclipse.org/bugs/show_bug.cgi?id=245836
This may be what you were looking for. The templates are probably
out-of-date, but shouldn't be difficult to update. I would assist you if
necessary.
Cheers,
Víctor.
|
|
|
|
|
Re: Minimalistic tutorial to the cdo- and net4j-defs [message #504614 is a reply to message #504598] |
Mon, 21 December 2009 18:47 |
|
Hi Joel,
That's an excellent idea. We're looking forward to give you feedback on
a draft ;-)
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
Joel Rosi-Schwartz schrieb:
> Thanks for taking the time to go over that. Tell you what: I have been
> looking to assist a bit and this is probably as good a place as any to
> pitch in a bit. I'll put together a short tutorial on using this
> perhaps you could find a few minutes to check it over before putting
> it on the Wiki. It not that any of this this is particularly
> difficult, but there is a lot to get ones head around with CDO, so
> every time one has to start digging into code and test it simply slows
> down the process. So lets see if I cannot save the next punter a small
> bit pain ;)
>
> Many thanks again,
> Joel
>
> André Dietisheim wrote on Mon, 21 December 2009 17:00
>> Hi Joel
>>
>> sure I can jump in!. I'm unfortunately far too busy but I'm here ;)
>>
>> Unfortunately there's no documentation at all, mea culpa. As Vik already
>> said, the defs are quite simple to understand.
>> The defs are factories for the various components you have to create in
>> order to have a client and a server up and running. The defs are
>> ecore-objects and may therefore be easyly persited to files and deliver
>> various file based configurations.
>>
>> ...
>>
>> > Cheers,
>> > Víctor.
>
>
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Generating editors for CDO [message #504622 is a reply to message #504605] |
Mon, 21 December 2009 19:48 |
Victor Roldan Betancort Messages: 524 Registered: July 2009 |
Senior Member |
|
|
Hi Joel,
the right place for the modification would be:
org.eclipse.emf.cdo.generator.templates.jet2/templates/edito rEnhance.jet
The generator looks for org.eclipse.ui.editors contributions in
plugin.xml to obtain information of the source editor to enhance. It's a
matter of iterating over all those contributions.
BTW, I'm almost finishing to update the templates to the changes
introduced in 3.0.0.
Cheers,
Víctor.
Joel Rosi-Schwartz escribió:
> Hi Victor,
>
> Okay so far so good. The code builds fine under CDO 3.0 and I have been
> able to generate the enhanced editor for my model. Well at least
> partially as I have four packages in the genmodel definition, one each
> for the four ecore models that are its inputs. This generates one set of
> projects (model, edit, editor, test) each of which contains four
> packages. What I want to do now is modify the CDO Enhanced Editor
> Generator to loop over all of the packages in the project and enhance
> each one. Can you point me at a logical place in the code to start
> looking at this?
>
> Thanks,
> Joel
>
> Joel Rosi-Schwartz wrote on Mon, 21 December 2009 09:06
>> Yes Victor that is exactly what i am looking for, thanks. I will dig
>> into these this week and let you know how I fare. ...
>> Cheers,
>> Joel
>>
>> Victor Roldan Betancort wrote on Mon, 21 December 2009 12:04
>> > Joel,
>> > > [UI] CDO Enhanced Editor Generator
>> > https://bugs.eclipse.org/bugs/show_bug.cgi?id=245836
>> > > This may be what you were looking for. The templates are probably
>> > out-of-date, but shouldn't be difficult to update. I would assist
>> you if > necessary.
>> > > Cheers,
>> > Víctor.
>
>
|
|
|
Re: Generating editors for CDO [message #504632 is a reply to message #504622] |
Mon, 21 December 2009 20:44 |
|
Thanks. That's great that you are updating for 3.0, many thanks again. Best I wait till you complete your update, then I will add the code to iterate. Is this of interest for me to contribute back a patch?
Cheers,
Joel
Victor Roldan Betancort wrote on Mon, 21 December 2009 19:48 | Hi Joel,
the right place for the modification would be:
org.eclipse.emf.cdo.generator.templates.jet2/templates/edito rEnhance.jet
The generator looks for org.eclipse.ui.editors contributions in
plugin.xml to obtain information of the source editor to enhance. It's a
matter of iterating over all those contributions.
BTW, I'm almost finishing to update the templates to the changes
introduced in 3.0.0.
Cheers,
Víctor.
|
|
|
|
Re: Generating editors for CDO [message #504634 is a reply to message #504605] |
Mon, 21 December 2009 20:35 |
Victor Roldan Betancort Messages: 524 Registered: July 2009 |
Senior Member |
|
|
I've submitted the updated generator at:
245836: [UI] CDO Enhanced Editor Generator
https://bugs.eclipse.org/bugs/show_bug.cgi?id=245836
Also included the multi-package support, which was quite easy to implement.
I've tested it with the ORMF model and seems to work. Let me know if it
works for you!
Cheers,
Víctor.
Joel Rosi-Schwartz escribió:
> Hi Victor,
>
> Okay so far so good. The code builds fine under CDO 3.0 and I have been
> able to generate the enhanced editor for my model. Well at least
> partially as I have four packages in the genmodel definition, one each
> for the four ecore models that are its inputs. This generates one set of
> projects (model, edit, editor, test) each of which contains four
> packages. What I want to do now is modify the CDO Enhanced Editor
> Generator to loop over all of the packages in the project and enhance
> each one. Can you point me at a logical place in the code to start
> looking at this?
>
> Thanks,
> Joel
>
> Joel Rosi-Schwartz wrote on Mon, 21 December 2009 09:06
>> Yes Victor that is exactly what i am looking for, thanks. I will dig
>> into these this week and let you know how I fare. ...
>> Cheers,
>> Joel
>>
>> Victor Roldan Betancort wrote on Mon, 21 December 2009 12:04
>> > Joel,
>> > > [UI] CDO Enhanced Editor Generator
>> > https://bugs.eclipse.org/bugs/show_bug.cgi?id=245836
>> > > This may be what you were looking for. The templates are probably
>> > out-of-date, but shouldn't be difficult to update. I would assist
>> you if > necessary.
>> > > Cheers,
>> > Víctor.
>
>
|
|
|
Re: Generating editors for CDO [message #504635 is a reply to message #504632] |
Mon, 21 December 2009 20:48 |
|
Hi again,
Just looked at Bugzilla and I see that you have competed the update and ALSO added muti-package support Your star ***** Victor, thanks
Cheers,
Joel
Joel Rosi-Schwartz wrote on Mon, 21 December 2009 20:44 | Thanks. That's great that you are updating for 3.0, many thanks again. Best I wait till you complete your update, then I will add the code to iterate. Is this of interest for me to contribute back a patch?
Cheers,
Joel
Victor Roldan Betancort wrote on Mon, 21 December 2009 19:48 | Hi Joel,
the right place for the modification would be:
org.eclipse.emf.cdo.generator.templates.jet2/templates/edito rEnhance.jet
The generator looks for org.eclipse.ui.editors contributions in
plugin.xml to obtain information of the source editor to enhance. It's a
matter of iterating over all those contributions.
BTW, I'm almost finishing to update the templates to the changes
introduced in 3.0.0.
Cheers,
Víctor.
|
|
|
|
|
Re: Generating editors for CDO (Minimalistic tutorial to the cdo- and net4j-defs) [message #505051 is a reply to message #504593] |
Fri, 25 December 2009 09:29 |
|
Hi Folks,
I now understand how to wire together the defs and save a set of XMI files. A bit boring going from from one ecore editor to the next but not difficult to get the hang of.
Now I am wondering what to do with these beasts. While the test do not demonstrate it, I gather these could be read in programmatically to create a CDO Transaction object or whatever was defined. But my goal was to use this in conjunction with the Enhanced Generated Editors. It was my impression from newsgroup/forum/bugzilla that the defs could be used to open models from the server from the Navigator. I ran across the "CDO Resource Launcher" (now defunct) that I gathered the defs replaced. What I am missing now is:
1. How to create a model instance and have it show up in the Navigator
2. How to use the def to open that model in the editor
Perhaps I been reading too much between the lines, but I keep on running into comments that allude to this being possible.
Many thanks,
Joel
André Dietisheim wrote on Mon, 21 December 2009 17:00 | Hi Joel
sure I can jump in!. I'm unfortunately far too busy but I'm here
Unfortunately there's no documentation at all, mea culpa. As Vik already
said, the defs are quite simple to understand.
The defs are factories for the various components you have to create in
order to have a client and a server up and running. The defs are
ecore-objects and may therefore be easyly persited to files and deliver
various file based configurations.
The way to get a working def instance (an xmi-file) follows this scheme:
Suppose you want to create a file-based configuration for a transaction.
Open up "org.eclipse.emf.cdo.defs.ecore" in the ecore-editor. Pick
CDOTransactionDef and pick "Create dynamic instance" in the context-menu
of the ecore editor. You may then create an xmi file: let's call it
TerriblyImportantCDOTransaction.xmi. The xmi file contains a instance of
a factory, that will create a CDOTransaction for you. If you load
TerriblyImportantCDOTransaction.xmi in the ecore editor, you'll discover
that it contains a CDO Session Def instance. The properties view shows
you the properties that may be configured. It asks for CDO Session Def.
The factory for cdo transactions TerriblyImportantCDOTransaction.xmi
contains needs a def for a cdo session. So you get back to
"org.eclipse.emf.cdo.defs.ecore" and create a dynamic instance for
CDOSessionDef. Get back to your editor for
TerriblyImportantCDOTransaction.xmi and load your CDO Session Def :
Choose "Load Resource" and indicate the xmi file you create in the
former step. The CDOSessionDef instance is now selectable as value for
the CDO Session Def property. Of course the cdo session def also needs
various properties in order to be able to create a cdo session. The
CDOSessionDef factory needs instances of ConnectorDef,
EPackageRegistryDef and FailoverStrategyDef. That's where you have to
proceed in the same way: Create dynamic instances and load them as
resources. The remaining properties may be filled in directly: you have
a boolean value to indicate if legacy support's enabled and you may
provide the name of the repository your session's bound to.
Technically spoken, the most comprehensive source to understand the defs
are the tests. There are tests for all defs in both projects:
- org.eclipse.emf.cdo.tests:
* EGlobalPackageDefImplTest
* CDOPackageRegistryDefImplTest
* CDOSessionDefImplTest
* CDOViewDefImplTest
* CDOAuditDefImplTest
* CDOTransactionDefImplTest
* CDOViewDefImplTest
* CDOResourceDefImplTest
- org.eclipse.net4j.tests:
* TestDefTest
* TCPAcceptorDefImplTest
* TCPConnectorDefImplTest
* JVMAcceptorDefImplTest
* JVMConnectorDefImplTest
I'd suggest you check with CDOTransactionDefImplTest. This is the most
complete scenario that plugs various (net4j and cdo) defs that are
needed to get a transaction. It shows the dependency graph fairly well.
I hope this helps for your first step. I'd of course be more than glad
to assist you!
Cheers
André
Víctor Roldán Betancort wrote:
> Joel,
>
>> I am also interested in the CDO Definition (Launcher) stuff that is
>> discussed in https://bugs.eclipse.org/bugs/show_bug.cgi?id=246623 Is
>> there any documentation on how to use this feature available?
>
> I believe there isn't any documentation on the CDO Definitions feature,
> but it's actually quite simple to understand, the models and the code
> should be enough self-explanatory. Furthermore, these are a good way to
> get to know about most of the CDO/Net4j core concepts
>
> There are several models for different concepts of the CDO/Net4j
> framework that can be easily wired-up by using convenient generated API.
>
> - org.eclipse.emf.cdo.defs
> - org.eclipse.emf.cdo.ui.defs
> - org.eclipse.net4j.ui.defs
> - org.eclipse.net4j.defs
> - org.eclipse.net4j.util.defs
>
> André developed this feature, hopefully he can jump in
>
> Cheers,
> Víctor.
|
|
|
|
Re: Generating editors for CDO (Minimalistic tutorial to the cdo- and net4j-defs) [message #505069 is a reply to message #505051] |
Sat, 26 December 2009 09:58 |
|
Vik, André,
Comments?
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
Joel Rosi-Schwartz schrieb:
> Hi Folks,
>
> I now understand how to wire together the defs and save a set of XMI
> files. A bit boring going from from one ecore editor to the next ;)
> but not difficult to get the hang of.
> Now I am wondering what to do with these beasts. While the test do not
> demonstrate it, I gather these could be read in programmatically to
> create a CDO Transaction object or whatever was defined. But my goal
> was to use this in conjunction with the Enhanced Generated Editors. It
> was my impression from newsgroup/forum/bugzilla that the defs could be
> used to open models from the server from the Navigator. I ran across
> the "CDO Resource Launcher" (now defunct) that I gathered the defs
> replaced. What I am missing now is:
>
> 1. How to create a model instance and have it show up in the Navigator
> 2. How to use the def to open that model in the editor
>
> Perhaps I been reading too much between the lines, but I keep on
> running into comments that allude to this being possible.
>
> Many thanks,
> Joel
>
> André Dietisheim wrote on Mon, 21 December 2009 17:00
>> Hi Joel
>>
>> sure I can jump in!. I'm unfortunately far too busy but I'm here ;)
>>
>> Unfortunately there's no documentation at all, mea culpa. As Vik already
>> said, the defs are quite simple to understand.
>> The defs are factories for the various components you have to create in
>> order to have a client and a server up and running. The defs are
>> ecore-objects and may therefore be easyly persited to files and deliver
>> various file based configurations.
>>
>> The way to get a working def instance (an xmi-file) follows this scheme:
>>
>> Suppose you want to create a file-based configuration for a transaction.
>> Open up "org.eclipse.emf.cdo.defs.ecore" in the ecore-editor. Pick
>> CDOTransactionDef and pick "Create dynamic instance" in the context-menu
>> of the ecore editor. You may then create an xmi file: let's call it
>> TerriblyImportantCDOTransaction.xmi. The xmi file contains a instance of
>> a factory, that will create a CDOTransaction for you. If you load
>> TerriblyImportantCDOTransaction.xmi in the ecore editor, you'll discover
>> that it contains a CDO Session Def instance. The properties view shows
>> you the properties that may be configured. It asks for CDO Session Def.
>> The factory for cdo transactions TerriblyImportantCDOTransaction.xmi
>> contains needs a def for a cdo session. So you get back to
>> "org.eclipse.emf.cdo.defs.ecore" and create a dynamic instance for
>> CDOSessionDef. Get back to your editor for
>> TerriblyImportantCDOTransaction.xmi and load your CDO Session Def :
>> Choose "Load Resource" and indicate the xmi file you create in the
>> former step. The CDOSessionDef instance is now selectable as value for
>> the CDO Session Def property. Of course the cdo session def also needs
>> various properties in order to be able to create a cdo session. The
>> CDOSessionDef factory needs instances of ConnectorDef,
>> EPackageRegistryDef and FailoverStrategyDef. That's where you have to
>> proceed in the same way: Create dynamic instances and load them as
>> resources. The remaining properties may be filled in directly: you have
>> a boolean value to indicate if legacy support's enabled and you may
>> provide the name of the repository your session's bound to.
>>
>> Technically spoken, the most comprehensive source to understand the defs
>> are the tests. There are tests for all defs in both projects:
>>
>> - org.eclipse.emf.cdo.tests:
>>
>> * EGlobalPackageDefImplTest
>> * CDOPackageRegistryDefImplTest
>> * CDOSessionDefImplTest
>> * CDOViewDefImplTest
>> * CDOAuditDefImplTest
>> * CDOTransactionDefImplTest
>> * CDOViewDefImplTest
>> * CDOResourceDefImplTest
>>
>> - org.eclipse.net4j.tests:
>>
>> * TestDefTest
>> * TCPAcceptorDefImplTest
>> * TCPConnectorDefImplTest
>> * JVMAcceptorDefImplTest
>> * JVMConnectorDefImplTest
>>
>> I'd suggest you check with CDOTransactionDefImplTest. This is the most
>> complete scenario that plugs various (net4j and cdo) defs that are
>> needed to get a transaction. It shows the dependency graph fairly well.
>>
>> I hope this helps for your first step. I'd of course be more than glad
>> to assist you!
>>
>> Cheers
>> André
>>
>> Víctor Roldán Betancort wrote:
>> > Joel,
>> > >> I am also interested in the CDO Definition (Launcher) stuff that is
>> >> discussed in https://bugs.eclipse.org/bugs/show_bug.cgi?id=246623 Is
>> >> there any documentation on how to use this feature available?
>> > > I believe there isn't any documentation on the CDO Definitions
>> feature,
>> > but it's actually quite simple to understand, the models and the code
>> > should be enough self-explanatory. Furthermore, these are a good
>> way to
>> > get to know about most of the CDO/Net4j core concepts :d
>> > > There are several models for different concepts of the CDO/Net4j
>> > framework that can be easily wired-up by using convenient generated
>> API.
>> > > - org.eclipse.emf.cdo.defs
>> > - org.eclipse.emf.cdo.ui.defs
>> > - org.eclipse.net4j.ui.defs
>> > - org.eclipse.net4j.defs
>> > - org.eclipse.net4j.util.defs
>> > > André developed this feature, hopefully he can jump in :)
>> > > Cheers,
>> > Víctor.
>
>
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Generating editors for CDO (Minimalistic tutorial to the cdo- and net4j-defs) [message #505070 is a reply to message #505069] |
Sat, 26 December 2009 05:52 |
Andre Dietisheim Messages: 131 Registered: July 2009 |
Senior Member |
|
|
Hi Joel
(Eike, thanks for forwarding! I'd be tracking the list more often, mea
culpa).
>> I now understand how to wire together the defs and save a set of XMI
>> files. A bit boring going from from one ecore editor to the next ;)
>> but not difficult to get the hang of.
Great that you managed your first steps! We planned to provide a
dedicated editor but being a low priority, it unfortunately got pushed
behind other duties.
>> Now I am wondering what to do with these beasts. While the test do not
>> demonstrate it, I gather these could be read in programmatically to
>> create a CDO Transaction object or whatever was defined. But my goal
>> was to use this in conjunction with the Enhanced Generated Editors. It
>> was my impression from newsgroup/forum/bugzilla that the defs could be
>> used to open models from the server from the Navigator. I ran across
>> the "CDO Resource Launcher" (now defunct) that I gathered the defs
>> replaced. What I am missing now is:
>>
>> 1. How to create a model instance and have it show up in the Navigator
>> 2. How to use the def to open that model in the editor
>>
>> Perhaps I been reading too much between the lines, but I keep on
>> running into comments that allude to this being possible.
you are absolutely right, this should be possible. We intended to use
the defs as a set of meaningful and configurable defaults. The usecase
we had in mind was to provide a set of them in the preferences and allow
the user to choose among them / edit them. Unfortunately the comfortable
user interfaces were never implemented because of other higher priorities.
I am currently not 100% aware of the state of all functionalities. I'll
check with your needs after the weekend and get back to you.
Cheers + have good fiestas!
André
>>
>> Many thanks,
>> Joel
>>
>> André Dietisheim wrote on Mon, 21 December 2009 17:00
>>> Hi Joel
>>>
>>> sure I can jump in!. I'm unfortunately far too busy but I'm here ;)
>>>
>>> Unfortunately there's no documentation at all, mea culpa. As Vik already
>>> said, the defs are quite simple to understand.
>>> The defs are factories for the various components you have to create in
>>> order to have a client and a server up and running. The defs are
>>> ecore-objects and may therefore be easyly persited to files and deliver
>>> various file based configurations.
>>>
>>> The way to get a working def instance (an xmi-file) follows this scheme:
>>>
>>> Suppose you want to create a file-based configuration for a transaction.
>>> Open up "org.eclipse.emf.cdo.defs.ecore" in the ecore-editor. Pick
>>> CDOTransactionDef and pick "Create dynamic instance" in the context-menu
>>> of the ecore editor. You may then create an xmi file: let's call it
>>> TerriblyImportantCDOTransaction.xmi. The xmi file contains a instance of
>>> a factory, that will create a CDOTransaction for you. If you load
>>> TerriblyImportantCDOTransaction.xmi in the ecore editor, you'll discover
>>> that it contains a CDO Session Def instance. The properties view shows
>>> you the properties that may be configured. It asks for CDO Session Def.
>>> The factory for cdo transactions TerriblyImportantCDOTransaction.xmi
>>> contains needs a def for a cdo session. So you get back to
>>> "org.eclipse.emf.cdo.defs.ecore" and create a dynamic instance for
>>> CDOSessionDef. Get back to your editor for
>>> TerriblyImportantCDOTransaction.xmi and load your CDO Session Def :
>>> Choose "Load Resource" and indicate the xmi file you create in the
>>> former step. The CDOSessionDef instance is now selectable as value for
>>> the CDO Session Def property. Of course the cdo session def also needs
>>> various properties in order to be able to create a cdo session. The
>>> CDOSessionDef factory needs instances of ConnectorDef,
>>> EPackageRegistryDef and FailoverStrategyDef. That's where you have to
>>> proceed in the same way: Create dynamic instances and load them as
>>> resources. The remaining properties may be filled in directly: you have
>>> a boolean value to indicate if legacy support's enabled and you may
>>> provide the name of the repository your session's bound to.
>>>
>>> Technically spoken, the most comprehensive source to understand the defs
>>> are the tests. There are tests for all defs in both projects:
>>>
>>> - org.eclipse.emf.cdo.tests:
>>>
>>> * EGlobalPackageDefImplTest
>>> * CDOPackageRegistryDefImplTest
>>> * CDOSessionDefImplTest
>>> * CDOViewDefImplTest
>>> * CDOAuditDefImplTest
>>> * CDOTransactionDefImplTest
>>> * CDOViewDefImplTest
>>> * CDOResourceDefImplTest
>>>
>>> - org.eclipse.net4j.tests:
>>>
>>> * TestDefTest
>>> * TCPAcceptorDefImplTest
>>> * TCPConnectorDefImplTest
>>> * JVMAcceptorDefImplTest
>>> * JVMConnectorDefImplTest
>>>
>>> I'd suggest you check with CDOTransactionDefImplTest. This is the most
>>> complete scenario that plugs various (net4j and cdo) defs that are
>>> needed to get a transaction. It shows the dependency graph fairly well.
>>>
>>> I hope this helps for your first step. I'd of course be more than glad
>>> to assist you!
>>>
>>> Cheers
>>> André
>>>
>>> Víctor Roldán Betancort wrote:
>>>> Joel,
>>>>>> I am also interested in the CDO Definition (Launcher) stuff that is
>>>>> discussed in https://bugs.eclipse.org/bugs/show_bug.cgi?id=246623 Is
>>>>> there any documentation on how to use this feature available?
>>>>> I believe there isn't any documentation on the CDO Definitions
>>> feature,
>>>> but it's actually quite simple to understand, the models and the code
>>>> should be enough self-explanatory. Furthermore, these are a good
>>> way to
>>>> get to know about most of the CDO/Net4j core concepts :d
>>>>> There are several models for different concepts of the CDO/Net4j
>>>> framework that can be easily wired-up by using convenient generated
>>> API.
>>>>> - org.eclipse.emf.cdo.defs
>>>> - org.eclipse.emf.cdo.ui.defs
>>>> - org.eclipse.net4j.ui.defs
>>>> - org.eclipse.net4j.defs
>>>> - org.eclipse.net4j.util.defs
>>>>> André developed this feature, hopefully he can jump in :)
>>>>> Cheers,
>>>> Víctor.
>>
|
|
|
Re: Generating editors for CDO [message #505130 is a reply to message #504445] |
Sun, 27 December 2009 08:13 |
|
Hi,
I have been looking through the CDO source in reference to editors. In org.eclipse.emf.cdo.ui.ide I have come across some interesting (and hopefully usedful) stuff. The RepositoryContentProvider appears to be a CDO content provider for the Navigator and there is the CDOEditor which is a Multipage Editor. Do these actually function yet? If not what is needed to get the completed?
Thanks,
Joel
|
|
|
Re: Generating editors for CDO [message #505131 is a reply to message #505130] |
Sun, 27 December 2009 09:01 |
|
On further investigation I have found that the CDOEditor is the editor that is opened from the CDO Session view; should have figured that straight off. Since it was a Multi-page editor I thought it might be the beginnings or something a bit fancier.
But what about the RepositoryContentProvider? What part does it play?
Thanks,
Joel
Joel Rosi-Schwartz wrote on Sun, 27 December 2009 08:13 | Hi,
I have been looking through the CDO source in reference to editors. In org.eclipse.emf.cdo.ui.ide I have come across some interesting (and hopefully usedful) stuff. The RepositoryContentProvider appears to be a CDO content provider for the Navigator and there is the CDOEditor which is a Multipage Editor. Do these actually function yet? If not what is needed to get the completed?
Thanks,
Joel
|
|
|
|
Re: Generating editors for CDO [message #505139 is a reply to message #505131] |
Sun, 27 December 2009 11:32 |
|
Hi Joel,
The RepositoryContentProvider is used in a contribution to the CNF:
<extension
point="org.eclipse.ui.navigator.navigatorContent">
<navigatorContent
activeByDefault="true"
contentProvider="org.eclipse.emf.cdo.ui.ide.RepositoryContentProvider "
icon="icons/full/obj16/repository_content.gif"
id="org.eclipse.emf.cdo.ui.ide.RepositoryContent"
labelProvider="org.eclipse.emf.cdo.ui.ide.RepositoryLabelProvider "
name="%navigatorContent.name"
priority="normal"
providesSaveables="false">
<triggerPoints>
<or>
<adapt
type="org.eclipse.core.resources.IProject">
<test
args=" org.eclipse.team.core.repository,org.eclipse.emf.cdo.team.Te amProvider "
property="org.eclipse.core.resources.projectPersistentProperty ">
</test>
</adapt>
<instanceof
value="org.eclipse.emf.cdo.ui.ide.Node">
</instanceof>
<instanceof
value="org.eclipse.emf.ecore.EObject">
</instanceof>
</or>
</triggerPoints>
</navigatorContent>
</extension>
Please try to create a simple project in your runtime workspace and
Team|Share it via the CDO Team Provider. You can connect the project
with a CDO repository and the repository content will be shown in the
workspace as in http://wiki.eclipse.org/CDO_Explorer_%28work_in_progress%29
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
Joel Rosi-Schwartz schrieb:
> On further investigation I have found that the CDOEditor is the editor
> that is opened from the CDO Session view; should have figured that
> straight off. Since it was a Multi-page editor I thought it might be
> the beginnings or something a bit fancier.
>
> But what about the RepositoryContentProvider? What part does it play?
> Thanks,
> Joel
>
> Joel Rosi-Schwartz wrote on Sun, 27 December 2009 08:13
>> Hi,
>>
>> I have been looking through the CDO source in reference to editors.
>> In org.eclipse.emf.cdo.ui.ide I have come across some interesting
>> (and hopefully usedful) stuff. The RepositoryContentProvider appears
>> to be a CDO content provider for the Navigator and there is the
>> CDOEditor which is a Multipage Editor. Do these actually function
>> yet? If not what is needed to get the completed?
>>
>> Thanks,
>> Joel
>
>
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Generating editors for CDO [message #505140 is a reply to message #505139] |
Sun, 27 December 2009 16:52 |
|
Hi Eike,
Having a nice holiday
Thanks for the explanation.
I have tried to add a CDO Team Provider but it does not show up as an option; I only have CVS or SVN. Anything special I have to do to enable the feature. Btw, I am using the 3.0 nightly drop.
Thanks,
Joel
Eike Stepper wrote on Sun, 27 December 2009 11:32 | Hi Joel,
The RepositoryContentProvider is used in a contribution to the CNF:
[snip x snip]
Please try to create a simple project in your runtime workspace and
Team|Share it via the CDO Team Provider. You can connect the project
with a CDO repository and the repository content will be shown in the
workspace as in http://wiki.eclipse.org/CDO_Explorer_%28work_in_progress%29
Cheers
/Eike
|
[Updated on: Sun, 27 December 2009 16:54] Report message to a moderator
|
|
| |
Re: Generating editors for CDO [message #505200 is a reply to message #505141] |
Mon, 28 December 2009 14:44 |
|
Hi Eike,
I have deployed the team and ide plug-ins as suggested. I can now share a project to CDO, but nothing show up in the project afterwards. There is content there as I have added stuff using the CDO Session. I knows that it is connected because the Team menu now show "Disconnect". No errors show up in the log.
The plug-ins were deployed from me CDO source workspace so the code is up to date.
Any ideas?
Thanks,
Joel
Eike Stepper wrote on Sun, 27 December 2009 12:02 | Joel Rosi-Schwartz schrieb:
> Hi Eike,
>
> Having a nice holiday
>
> Thanks for the explanation.
>
> I have tried to add a CDO Team Provider but it does not show up as and
> option. Anything special I have to do to enable the feature. Btw, I am
> using the 3.0 nightly drop.
Sorry, forgot to mention that you need to deploy the cdo.tesm and the
cdo.ui.ide plugins.
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
>
> Thanks,
> Joel
>
> Eike Stepper wrote on Sun, 27 December 2009 11:32
>> Hi Joel,
>>
>> The RepositoryContentProvider is used in a contribution to the CNF:
>>
>> [snip x snip]
>>
>> Please try to create a simple project in your runtime workspace and
>> Team|Share it via the CDO Team Provider. You can connect the project
>> with a CDO repository and the repository content will be shown in the
>> workspace as in
>> http://wiki.eclipse.org/CDO_Explorer_%28work_in_progress%29
>>
>> Cheers
>> /Eike
>
>
|
|
|
|
Re: Generating editors for CDO [message #505208 is a reply to message #505200] |
Mon, 28 December 2009 15:26 |
|
Joel Rosi-Schwartz schrieb:
> Hi Eike,
>
> I have deployed the team and ide plug-ins as suggested. I can now
> share a project to CDO, but nothing show up in the project afterwards.
> There is content there as I have added stuff using the CDO Session. I
> knows that it is connected because the Team menu now show
> "Disconnect". No errors show up in the log.
>
> The plug-ins were deployed from me CDO source workspace so the code is
> up to date.
>
> Any ideas?
No ;-(
Please file a bugzilla...
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
>
> Thanks,
> Joel
>
>
> Eike Stepper wrote on Sun, 27 December 2009 12:02
>> Joel Rosi-Schwartz schrieb:
>> > Hi Eike,
>> >
>> > Having a nice holiday :)
>> >
>> > Thanks for the explanation.
>> >
>> > I have tried to add a CDO Team Provider but it does not show up as and
>> > option. Anything special I have to do to enable the feature. Btw, I am
>> > using the 3.0 nightly drop.
>> Sorry, forgot to mention that you need to deploy the cdo.tesm and the
>> cdo.ui.ide plugins.
>>
>> Cheers
>> /Eike
>>
>> ----
>> http://thegordian.blogspot.com
>> http://twitter.com/eikestepper
>>
>>
>> >
>> > Thanks,
>> > Joel
>> >
>> > Eike Stepper wrote on Sun, 27 December 2009 11:32
>> >> Hi Joel,
>> >>
>> >> The RepositoryContentProvider is used in a contribution to the CNF:
>> >>
>> >> [snip x snip]
>> >>
>> >> Please try to create a simple project in your runtime workspace and
>> >> Team|Share it via the CDO Team Provider. You can connect the project
>> >> with a CDO repository and the repository content will be shown in the
>> >> workspace as in
>> >> http://wiki.eclipse.org/CDO_Explorer_%28work_in_progress%29
>> >>
>> >> Cheers
>> >> /Eike
>> >
>> >
>
>
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Generating editors for CDO [message #505213 is a reply to message #505208] |
Mon, 28 December 2009 16:20 |
|
Okay will do.
In the meanwhile we have been cleaning up and extending our model. When I use it inside the CDO Sessions view many of the elements I add to the resource cause an exception to be thrown when it is saved, see below. I recall that the StringCompressor has been the conversation of other issues on the forum. Have you delved into what is causing them? I am once again fairly sure that this has something to do with our model not being quite up to snuff and that the exception is simply CDO's (not very helpful;-) way of telling us about it ;-( Any hints or clues on where to start looking would be appreciated.
Many thanks,
Joel
[ERROR] String ID unknown: 8388608
java.io.IOException: String ID unknown: 8388608
at org.eclipse.net4j.util.io.StringCompressor.read(StringCompressor.java:207)
at org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.readCDOPackageURI(CDODataInputImpl.java:123)
at org.eclipse.emf.cdo.common.model.CDOClassifierRef.<init>(CDOClassifierRef.java:54)
at org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.readCDOClassifierRef(CDODataInputImpl.java:128)
at org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.readCDOClassifierRefAndResolve(CDODataInputImpl.java:133)
at org.eclipse.emf.cdo.internal.common.revision.delta.CDORevisionDeltaImpl.<init>(CDORevisionDeltaImpl.java:103)
at org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.readCDORevisionDelta(CDODataInputImpl.java:330)
at org.eclipse.emf.cdo.server.internal.net4j.protocol.CommitTransactionIndication.indicatingCommit(CommitTransactionIndication.java:250)
at org.eclipse.emf.cdo.server.internal.net4j.protocol.CommitTransactionIndication.indicating(CommitTransactionIndication.java:172)
at org.eclipse.emf.cdo.server.internal.net4j.protocol.CommitTransactionIndication.indicating(CommitTransactionIndication.java:139)
at org.eclipse.net4j.signal.IndicationWithMonitoring.indicating(IndicationWithMonitoring.java:84)
at org.eclipse.net4j.signal.IndicationWithResponse.doExtendedInput(IndicationWithResponse.java:90)
at org.eclipse.net4j.signal.Signal.doInput(Signal.java:311)
at org.eclipse.net4j.signal.IndicationWithResponse.execute(IndicationWithResponse.java:63)
at org.eclipse.net4j.signal.IndicationWithMonitoring.execute(IndicationWithMonitoring.java:63)
at org.eclipse.net4j.signal.Signal.runSync(Signal.java:238)
at org.eclipse.net4j.signal.Signal.run(Signal.java:146)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:637)
Eike Stepper wrote on Mon, 28 December 2009 15:26 | Joel Rosi-Schwartz schrieb:
> Hi Eike,
>
> I have deployed the team and ide plug-ins as suggested. I can now
> share a project to CDO, but nothing show up in the project afterwards.
> There is content there as I have added stuff using the CDO Session. I
> knows that it is connected because the Team menu now show
> "Disconnect". No errors show up in the log.
>
> The plug-ins were deployed from me CDO source workspace so the code is
> up to date.
>
> Any ideas?
No ;-(
Please file a bugzilla...
Cheers
/Eike
|
|
|
|
Re: Generating editors for CDO [message #505215 is a reply to message #505208] |
Mon, 28 December 2009 16:30 |
|
Filed as requested Bugzilla Bug 298582
Eike Stepper wrote on Mon, 28 December 2009 15:26 | Joel Rosi-Schwartz schrieb:
> Hi Eike,
>
> I have deployed the team and ide plug-ins as suggested. I can now
> share a project to CDO, but nothing show up in the project afterwards.
> There is content there as I have added stuff using the CDO Session. I
> knows that it is connected because the Team menu now show
> "Disconnect". No errors show up in the log.
>
> The plug-ins were deployed from me CDO source workspace so the code is
> up to date.
>
> Any ideas?
No ;-(
Please file a bugzilla...
Cheers
/Eike
|
[Updated on: Mon, 28 December 2009 16:30] Report message to a moderator
|
|
|
Re: Generating editors for CDO [message #505216 is a reply to message #505213] |
Mon, 28 December 2009 11:44 |
|
Joel Rosi-Schwartz schrieb:
> Okay will do.
>
> In the meanwhile we have been cleaning up and extending our model.
> When I use it inside the CDO Sessions view many of the elements I add
> to the resource cause an exception to be thrown when it is saved, see
> below. I recall that the StringCompressor has been the conversation of
> other issues on the forum. Have you delved into what is causing them?
> I am once again fairly sure that this has something to do with our
> model not being quite up to snuff and that the exception is simply
> CDO's (not very helpful;-) way of telling us about it ;-( Any hints
> or clues on where to start looking would be appreciated.
Can you try to set StringCompressor.BYPASS to true for testing?
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
>
> Many thanks,
> Joel
>
>
> [ERROR] String ID unknown: 8388608
> java.io.IOException: String ID unknown: 8388608
> at
> org.eclipse.net4j.util.io.StringCompressor.read(StringCompre ssor.java:207)
>
> at
> org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.read CDOPackageURI(CDODataInputImpl.java:123)
>
> at
> org.eclipse.emf.cdo.common.model.CDOClassifierRef.<init>(CDOClassifierRef.java:54)
>
> at
> org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.read CDOClassifierRef(CDODataInputImpl.java:128)
>
> at
> org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.read CDOClassifierRefAndResolve(CDODataInputImpl.java:133)
>
> at
> org.eclipse.emf.cdo.internal.common.revision.delta.CDORevisi onDeltaImpl. <init>(CDORevisionDeltaImpl.java:103)
>
> at
> org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.read CDORevisionDelta(CDODataInputImpl.java:330)
>
> at
> org.eclipse.emf.cdo.server.internal.net4j.protocol.CommitTra nsactionIndication.indicatingCommit(CommitTransactionIndicat ion.java:250)
>
> at
> org.eclipse.emf.cdo.server.internal.net4j.protocol.CommitTra nsactionIndication.indicating(CommitTransactionIndication.ja va:172)
>
> at
> org.eclipse.emf.cdo.server.internal.net4j.protocol.CommitTra nsactionIndication.indicating(CommitTransactionIndication.ja va:139)
>
> at
> org.eclipse.net4j.signal.IndicationWithMonitoring.indicating (IndicationWithMonitoring.java:84)
>
> at
> org.eclipse.net4j.signal.IndicationWithResponse.doExtendedIn put(IndicationWithResponse.java:90)
>
> at org.eclipse.net4j.signal.Signal.doInput(Signal.java:311)
> at
> org.eclipse.net4j.signal.IndicationWithResponse.execute(Indi cationWithResponse.java:63)
>
> at
> org.eclipse.net4j.signal.IndicationWithMonitoring.execute(In dicationWithMonitoring.java:63)
>
> at org.eclipse.net4j.signal.Signal.runSync(Signal.java:238)
> at org.eclipse.net4j.signal.Signal.run(Signal.java:146)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Threa dPoolExecutor.java:886)
>
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo lExecutor.java:908)
>
> at java.lang.Thread.run(Thread.java:637)
>
>
> Eike Stepper wrote on Mon, 28 December 2009 15:26
>> Joel Rosi-Schwartz schrieb:
>> > Hi Eike,
>> >
>> > I have deployed the team and ide plug-ins as suggested. I can now
>> > share a project to CDO, but nothing show up in the project afterwards.
>> > There is content there as I have added stuff using the CDO Session. I
>> > knows that it is connected because the Team menu now show
>> > "Disconnect". No errors show up in the log.
>> >
>> > The plug-ins were deployed from me CDO source workspace so the code is
>> > up to date.
>> >
>> > Any ideas?
>> No ;-(
>>
>> Please file a bugzilla...
>>
>> Cheers
>> /Eike
>
>
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Generating editors for CDO [message #505220 is a reply to message #505216] |
Mon, 28 December 2009 16:59 |
|
I assume you mean to add -DStringCompressor.BYPASS=true to the VM args in the launch config. If that is the case, then no it has made no difference, the exception is still thrown ;-(
Eike Stepper wrote on Mon, 28 December 2009 11:44 | Joel Rosi-Schwartz schrieb:
> Okay will do.
>
> In the meanwhile we have been cleaning up and extending our model.
> When I use it inside the CDO Sessions view many of the elements I add
> to the resource cause an exception to be thrown when it is saved, see
> below. I recall that the StringCompressor has been the conversation of
> other issues on the forum. Have you delved into what is causing them?
> I am once again fairly sure that this has something to do with our
> model not being quite up to snuff and that the exception is simply
> CDO's (not very helpful;-) way of telling us about it ;-( Any hints
> or clues on where to start looking would be appreciated.
Can you try to set StringCompressor.BYPASS to true for testing?
Cheers
/Eike
|
|
|
|
Re: Generating editors for CDO [message #505224 is a reply to message #505220] |
Mon, 28 December 2009 17:22 |
|
Joel Rosi-Schwartz schrieb:
> I assume you mean to add -DStringCompressor.BYPASS=true to the VM args
> in the launch config.
No, it's a constant in StringCompressor.java ;-)
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
> If that is the case, then no it has made no difference, the exception
> is still thrown ;-(
>
> Eike Stepper wrote on Mon, 28 December 2009 11:44
>> Joel Rosi-Schwartz schrieb:
>> > Okay will do.
>> >
>> > In the meanwhile we have been cleaning up and extending our model.
>> > When I use it inside the CDO Sessions view many of the elements I add
>> > to the resource cause an exception to be thrown when it is saved, see
>> > below. I recall that the StringCompressor has been the conversation of
>> > other issues on the forum. Have you delved into what is causing them?
>> > I am once again fairly sure that this has something to do with our
>> > model not being quite up to snuff and that the exception is simply
>> > CDO's (not very helpful;-) way of telling us about it ;-( Any hints
>> > or clues on where to start looking would be appreciated.
>> Can you try to set StringCompressor.BYPASS to true for testing?
>>
>> Cheers
>> /Eike
>
>
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Generating editors for CDO [message #505228 is a reply to message #505224] |
Mon, 28 December 2009 17:50 |
|
Ah, so my two threads converge
I seems as if it makes sense to develop ORMF on top of the current CDO 3.0 source base at the moment. That is really the only way I will be able to keep in lockstep with your bugfixes and to be able to debug effectively. Your really intent on me getting my hands dirty with CDO I see
I will set it up
Cheers,
Joel
Eike Stepper wrote on Mon, 28 December 2009 17:22 | Joel Rosi-Schwartz schrieb:
> I assume you mean to add -DStringCompressor.BYPASS=true to the VM args
> in the launch config.
No, it's a constant in StringCompressor.java
Cheers
/Eike
|
|
|
| |
Re: Generating editors for CDO [message #505241 is a reply to message #505231] |
Mon, 28 December 2009 21:04 |
|
Hmm... not sure about that yet
I have my workspace set up with the latest source from HEAD and my TP is as described in the source set up wiki. Everything build just fine. When I start up the CDO server all goes well, find trace below. When I try to connect with the CDO Session view I get this exception. So all is not well ;-(
What now? Any ideas?
org.eclipse.emf.cdo.common.util.TransportException: java.io.IOException: String ID unknown: 16786792
at org.eclipse.emf.cdo.internal.net4j.protocol.CDOClientProtocol.send(CDOClientProtocol.java:318)
at org.eclipse.emf.cdo.internal.net4j.protocol.CDOClientProtocol.openSession(CDOClientProtocol.java:83)
at org.eclipse.emf.cdo.internal.net4j.CDONet4jSessionConfigurationImpl.activateSession(CDONet4jSessionConfigurationImpl.java:156)
at org.eclipse.emf.internal.cdo.session.CDOSessionImpl.doActivate(CDOSessionImpl.java:816)
at org.eclipse.net4j.util.lifecycle.Lifecycle.activate(Lifecycle.java:70)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.activate(LifecycleUtil.java:98)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.activate(LifecycleUtil.java:88)
at org.eclipse.net4j.util.container.ManagedContainer.getElement(ManagedContainer.java:285)
at org.eclipse.net4j.util.container.ManagedContainer.getElement(ManagedContainer.java:265)
at org.eclipse.emf.cdo.internal.ui.actions.OpenSessionAction.doRun(OpenSessionAction.java:67)
at org.eclipse.net4j.util.ui.actions.LongRunningAction$1.run(LongRunningAction.java:185)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Caused by: java.io.IOException: String ID unknown: 16786792
at org.eclipse.net4j.util.io.StringCompressor.read(StringCompressor.java:207)
at org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.readCDOPackageURI(CDODataInputImpl.java:123)
at org.eclipse.emf.cdo.internal.common.model.CDOPackageInfoImpl.read(CDOPackageInfoImpl.java:104)
at org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.readCDOPackageInfo(CDODataInputImpl.java:117)
at org.eclipse.emf.cdo.internal.common.model.CDOPackageUnitImpl.read(CDOPackageUnitImpl.java:291)
at org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.readCDOPackageUnit(CDODataInputImpl.java:88)
at org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.readCDOPackageUnits(CDODataInputImpl.java:103)
at org.eclipse.emf.cdo.internal.net4j.protocol.OpenSessionRequest.confirming(OpenSessionRequest.java:117)
at org.eclipse.emf.cdo.internal.net4j.protocol.OpenSessionRequest.confirming(OpenSessionRequest.java:1)
at org.eclipse.emf.cdo.internal.net4j.protocol.CDOClientRequest.confirming(CDOClientRequest.java:81)
at org.eclipse.net4j.signal.RequestWithConfirmation.doExtendedInput(RequestWithConfirmation.java:123)
at org.eclipse.net4j.signal.Signal.doInput(Signal.java:311)
at org.eclipse.net4j.signal.RequestWithConfirmation.doExecute(RequestWithConfirmation.java:103)
at org.eclipse.net4j.signal.SignalActor.execute(SignalActor.java:66)
at org.eclipse.net4j.signal.Signal.runSync(Signal.java:238)
at org.eclipse.net4j.signal.SignalProtocol.startSignal(SignalProtocol.java:423)
at org.eclipse.net4j.signal.RequestWithConfirmation.doSend(RequestWithConfirmation.java:87)
at org.eclipse.net4j.signal.RequestWithConfirmation.send(RequestWithConfirmation.java:73)
at org.eclipse.emf.cdo.internal.net4j.protocol.CDOClientProtocol.send(CDOClientProtocol.java:310)
... 11 more
Note that at the bottom of the console output there is output that corresponds to 3 attempts a connecting.
Configuration location:
file:/Users/joel/projects/workspaces/ormf.model/.metadata/.plugins/org.eclipse.pde.core/CDOServer/
Configuration file:
file:/Users/joel/projects/workspaces/ormf.model/.metadata/.plugins/org.eclipse.pde.core/CDOServer/config.ini loaded
Install location:
file:/Users/joel/projects/workspaces/ormf.model/../../targets/org.eclipse.ormf.target_3.6.M4/eclipse/
Framework located:
file:/Users/joel/projects/targets/org.eclipse.ormf.target_3.6.M4/eclipse/plugins/org.eclipse.osgi_3.6.0.v20091204.jar
Framework classpath:
file:/Users/joel/projects/targets/org.eclipse.ormf.target_3.6.M4/eclipse/plugins/org.eclipse.osgi_3.6.0.v20091204.jar
Splash location:
null
Debug options:
file:/Users/joel/projects/workspaces/ormf.model/.metadata/.plugins/org.eclipse.pde.core/CDOServer/.options loaded
osgi> Time to load bundles: 766
Starting application: 2564
Thread-0 [debug.om] Starting bundle org.eclipse.net4j.util
Thread-0 [debug.lifecycle] Activating ManagedContainer
Thread-0 [debug.lifecycle] Activating {}
Thread-0 [debug.lifecycle.dump] DUMP PluginFactoryRegistry@1
Registry.autoCommit = true
Registry.transaction = null
HashMapRegistry.map =
org.eclipse.net4j.acceptors[tcp]=Factory[org.eclipse.net4j.acceptors, tcp]
org.eclipse.net4j.Negotiators[challenge]=Factory[org.eclipse.net4j.Negotiators, challenge]
org.eclipse.net4j.connectors[tcp]=Factory[org.eclipse.net4j.connectors, tcp]
org.eclipse.net4j.randomizers[default]=Factory[org.eclipse.net4j.randomizers, default]
org.eclipse.net4j.userManagers[file]=Factory[org.eclipse.net4j.userManagers, file]
org.eclipse.net4j.executorServices[default]=Factory[org.eclipse.net4j.executorServices, default]
org.eclipse.net4j.serverProtocols[cdo]=Factory[org.eclipse.net4j.serverProtocols, cdo]
org.eclipse.net4j.serverProtocols[heartbeat]=Factory[org.eclipse.net4j.serverProtocols, heartbeat]
org.eclipse.net4j.selectors[tcp]=Factory[org.eclipse.net4j.selectors, tcp]
org.eclipse.net4j.util.timers[daemon]=Factory[org.eclipse.net4j.util.timers, daemon]
org.eclipse.net4j.bufferProviders[default]=Factory[org.eclipse.net4j.bufferProviders, default]
extensionRegistryListener = org.eclipse.net4j.internal.util.factory.PluginFactoryRegistry$1@73aecc3a
Thread-0 [debug.lifecycle] Activating []
Thread-0 [debug.om] Starting bundle org.eclipse.net4j
Thread-0 [debug.om] Starting bundle org.eclipse.net4j.tcp
Thread-0 [debug.lifecycle.dump] DUMP PluginElementProcessorList@2
processors =
org.eclipse.net4j.TransportInjector@24ebf068
org.eclipse.net4j.signal.heartbeat.HeartBeatProtocol$Server$TimerInjector@7df44ec7
org.eclipse.net4j.util.security.ChallengeNegotiatorConfigurer@32602b6b
org.eclipse.net4j.internal.tcp.TCPSelectorInjector@47c297a3
extensionRegistryListener = org.eclipse.net4j.internal.util.container.PluginElementProcessorList$1@203e1bc8
Thread-0 [debug.lifecycle.dump] DUMP PluginContainer@3
ManagedContainer.factoryRegistry =
org.eclipse.net4j.acceptors[tcp]=Factory[org.eclipse.net4j.acceptors, tcp]
org.eclipse.net4j.Negotiators[challenge]=Factory[org.eclipse.net4j.Negotiators, challenge]
org.eclipse.net4j.connectors[tcp]=Factory[org.eclipse.net4j.connectors, tcp]
org.eclipse.net4j.randomizers[default]=Factory[org.eclipse.net4j.randomizers, default]
org.eclipse.net4j.userManagers[file]=Factory[org.eclipse.net4j.userManagers, file]
org.eclipse.net4j.executorServices[default]=Factory[org.eclipse.net4j.executorServices, default]
org.eclipse.net4j.serverProtocols[cdo]=Factory[org.eclipse.net4j.serverProtocols, cdo]
org.eclipse.net4j.serverProtocols[heartbeat]=Factory[org.eclipse.net4j.serverProtocols, heartbeat]
org.eclipse.net4j.selectors[tcp]=Factory[org.eclipse.net4j.selectors, tcp]
org.eclipse.net4j.util.timers[daemon]=Factory[org.eclipse.net4j.util.timers, daemon]
org.eclipse.net4j.bufferProviders[default]=Factory[org.eclipse.net4j.bufferProviders, default]
ManagedContainer.postProcessors =
org.eclipse.net4j.TransportInjector@24ebf068
org.eclipse.net4j.signal.heartbeat.HeartBeatProtocol$Server$TimerInjector@7df44ec7
org.eclipse.net4j.util.security.ChallengeNegotiatorConfigurer@32602b6b
org.eclipse.net4j.internal.tcp.TCPSelectorInjector@47c297a3
ManagedContainer.elementRegistry =
Thread-0 [debug.om] Plugin container created: ManagedContainer
Thread-0 [debug.om] Starting bundle org.eclipse.emf.cdo.server
Thread-0 [debug.om] Starting application org.eclipse.emf.cdo.server.app
[INFO] CDO server starting
Thread-0 [debug.repository] Configuring CDO server from /Users/joel/configuration/cdo-server.xml
Thread-0 [debug.repository] Configuring repository repo1 (type=default)
Thread-0 [debug.om] Starting bundle org.eclipse.emf.cdo.common
Thread-0 [debug.om] Starting bundle org.eclipse.emf.cdo.server.db
Thread-0 [debug.om] Starting bundle org.eclipse.net4j.db
Thread-0 [debug.om] Starting bundle org.eclipse.net4j.db.derby
Thread-0 [debug.om] Starting bundle org.eclipse.emf.cdo
Thread-0 [debug.lifecycle] Activating CDOViewProviderRegistryImpl@4
Thread-0 [debug.lifecycle.dump] DUMP CDOViewProviderRegistryImpl@4
viewProviders =
org.eclipse.emf.internal.cdo.view.PluginContainerViewProvider@30d647d8
Thread-0 [debug.lifecycle] Activating CDORepositoryInfo[repo1]
Thread-0 [debug.lifecycle] Activating DBStore@5
Thread-0 [debug.lifecycle] Activating MetaDataManager@6
Thread-0 [debug.lifecycle.dump] DUMP MetaDataManager@6
store = DBStore@5
Thread-0 [debug.lifecycle] Activating HorizontalAuditMappingStrategy@7
Thread-0 [debug.lifecycle] Activating ObjectTypeCache@8
Thread-0 [debug.lifecycle] Activating DBStoreAccessor@9
Thread-0 [debug.lifecycle] Activating SmartPreparedStatementCache@10
Thread-0 [debug.lifecycle.dump] DUMP SmartPreparedStatementCache@10
AbstractPreparedStatementCache.connection = org.apache.derby.impl.jdbc.EmbedConnection40@1571172802 (XID = 146), (SESSIONID = 3), (DATABASE = /Users/joel/jotter/cdo/cdodb1), (DRDAID = null)
cache = org.eclipse.emf.cdo.server.internal.db.SmartPreparedStatementCache$Cache@15384ed5
checkedOut =
Thread-0 [debug.lifecycle.dump] DUMP DBStoreAccessor@9
StoreAccessor.commitContexts =
StoreAccessor.store = DBStore@5
StoreAccessor.context = null
StoreAccessor.reader = false
connection = org.apache.derby.impl.jdbc.EmbedConnection40@1571172802 (XID = 146), (SESSIONID = 3), (DATABASE = /Users/joel/jotter/cdo/cdodb1), (DRDAID = null)
statementCache = SmartPreparedStatementCache@10
connectionKeepAliveTimer = java.util.Timer@2743724e
Thread-0 [debug.sql] CREATE TABLE cdo_objects (cdo_id BIGINT, cdo_class BIGINT)
Thread-0 [debug.sql] CREATE UNIQUE INDEX cdo_objects_idx0 ON cdo_objects (cdo_id)
Thread-0 [debug.lifecycle] Deactivating DBStoreAccessor@9
Thread-0 [debug.lifecycle] Deactivating SmartPreparedStatementCache@10
Thread-0 [debug.lifecycle.dump] DUMP ObjectTypeCache@8
mappingStrategy = HorizontalAuditMappingStrategy@7
table = cdo_objects
idField = cdo_id
typeField = cdo_class
sqlDelete = DELETE FROM cdo_objects WHERE cdo_id = ?
sqlInsert = INSERT IGNORE INTO cdo_objects VALUES (?,?)
sqlSelect = SELECT cdo_class FROM cdo_objects WHERE cdo_id = ?
metaDataManager = MetaDataManager@6
Thread-0 [debug.lifecycle.dump] DUMP HorizontalAuditMappingStrategy@7
AbstractMappingStrategy.store = DBStore@5
AbstractMappingStrategy.properties =
toManyReferences=ONE_TABLE_PER_REFERENCE
qualifiedNames=false
toOneReferences=LIKE_ATTRIBUTES
AbstractMappingStrategy.classMappings =
AbstractHorizontalMappingStrategy.objectTypeCache = ObjectTypeCache@8
Thread-0 [debug.sql] CREATE TABLE cdo_package_units (id VARCHAR(255), original_type INTEGER, time_stamp BIGINT, package_data BLOB)
Thread-0 [debug.sql] CREATE INDEX cdo_package_units_idx0 ON cdo_package_units (id)
Thread-0 [debug.sql] CREATE TABLE cdo_package_infos (uri VARCHAR(255), parent VARCHAR(255), unit VARCHAR(255), meta_lb BIGINT, meta_ub BIGINT)
Thread-0 [debug.sql] CREATE INDEX cdo_package_infos_idx0 ON cdo_package_infos (uri)
Thread-0 [debug.sql] CREATE INDEX cdo_package_infos_idx1 ON cdo_package_infos (parent)
Thread-0 [debug.sql] CREATE INDEX cdo_package_infos_idx2 ON cdo_package_infos (unit)
Thread-0 [debug.sql] CREATE TABLE cdo_external_refs (id BIGINT, uri VARCHAR(255))
Thread-0 [debug.sql] CREATE INDEX cdo_external_refs_idx0 ON cdo_external_refs (id)
Thread-0 [debug.sql] CREATE INDEX cdo_external_refs_idx1 ON cdo_external_refs (uri)
Thread-0 [debug.sql] CREATE TABLE cdo_repository (created BIGINT, starts BIGINT, started BIGINT, stopped BIGINT, next_cdoid BIGINT, next_metaid BIGINT)
Thread-0 [debug.sql] INSERT IGNORE INTO cdo_repository VALUES (1262033470600, 1, 1262033470600, 0, -1, -1)
[INFO] First start: 28-Dec-2009 20:51:10
Thread-0 [debug.lifecycle] Activating ExternalReferenceManager@11
Thread-0 [debug.lifecycle] Activating DBStoreAccessor@12
Thread-0 [debug.lifecycle] Activating SmartPreparedStatementCache@13
Thread-0 [debug.lifecycle.dump] DUMP SmartPreparedStatementCache@13
AbstractPreparedStatementCache.connection = org.apache.derby.impl.jdbc.EmbedConnection40@358310166 (XID = 194), (SESSIONID = 5), (DATABASE = /Users/joel/jotter/cdo/cdodb1), (DRDAID = null)
cache = org.eclipse.emf.cdo.server.internal.db.SmartPreparedStatementCache$Cache@2242f64e
checkedOut =
Thread-0 [debug.lifecycle.dump] DUMP DBStoreAccessor@12
StoreAccessor.commitContexts =
StoreAccessor.store = DBStore@5
StoreAccessor.context = null
StoreAccessor.reader = true
connection = org.apache.derby.impl.jdbc.EmbedConnection40@358310166 (XID = 194), (SESSIONID = 5), (DATABASE = /Users/joel/jotter/cdo/cdodb1), (DRDAID = null)
statementCache = SmartPreparedStatementCache@13
connectionKeepAliveTimer = java.util.Timer@5a388c74
Thread-0 [debug.lifecycle] Deactivating DBStoreAccessor@12
Thread-0 [debug.lifecycle] Deactivating SmartPreparedStatementCache@13
Thread-0 [debug.lifecycle.dump] DUMP ExternalReferenceManager@11
store = DBStore@5
lastMappedId = 0
Thread-0 [debug.lifecycle.dump] DUMP DBStore@5
Store.revisionTemporality = AUDITING
Store.revisionParallelism = NONE
Store.repository = CDORepositoryInfo[repo1]
creationTime = 1262033470600
firstTime = true
mappingStrategy = HorizontalAuditMappingStrategy@7
dbSchema = repo1
dbAdapter = derby-embedded-10.3.2.1
dbConnectionProvider = org.apache.derby.jdbc.EmbeddedDataSource@2dabcea
metaDataManager = MetaDataManager@6
externalReferenceManager = ExternalReferenceManager@11
Thread-0 [debug.lifecycle] Activating SessionManager@14
[INFO] No user manager configured. Users will not be authenticated
Thread-0 [debug.lifecycle.dump] DUMP SessionManager@14
repository = CDORepositoryInfo[repo1]
encryptionAlgorithmName = PBEWithMD5AndDES
encryptionSaltBytes = [B@4f7f1d92
encryptionIterationCount = 20
tokenLength = 1024
randomizer = null
userManager = null
sessions =
lastSessionID = 0
Thread-0 [debug.lifecycle] Activating CDORevisionManagerImpl@15
Thread-0 [debug.lifecycle] Activating TwoLevelRevisionCache@16
Thread-0 [debug.lifecycle] Activating LRURevisionCache@17
Thread-0 [debug.lifecycle.dump] DUMP LRURevisionCache@17
revisions =
capacityCurrent = 1000
capacityRevised = 1000
currentLRU = LRU[size=0, capacity=1,000]
revisedLRU = LRU[size=0, capacity=1,000]
Thread-0 [debug.lifecycle] Activating MEMRevisionCache@18
Thread-0 [debug.lifecycle.dump] DUMP MEMRevisionCache@18
Worker.daemon = false
Worker.activationTimeout = 10000
Worker.deactivationTimeout = 10000
ReferenceQueueWorker.queue = java.lang.ref.ReferenceQueue@54c707c1
ReferenceQueueWorker.pollMillis = 60000
ReferenceQueueWorker.maxWorkPerPoll = 100
cacheLists =
referenceType = SOFT
Thread-0 [debug.lifecycle.dump] DUMP TwoLevelRevisionCache@16
level1 = LRURevisionCache@17
level2 = MEMRevisionCache@18
Thread-0 [debug.lifecycle.dump] DUMP CDORevisionManagerImpl@15
revisionLoader = CDORepositoryInfo[repo1]
revisionLocker = null
factory = org.eclipse.emf.cdo.common.revision.CDORevisionFactory$1@40b890dc
cache = TwoLevelRevisionCache@16
Thread-0 [debug.lifecycle] Activating QueryManager@19
Thread-0 [debug.lifecycle.dump] DUMP QueryManager@19
repository = CDORepositoryInfo[repo1]
queryContexts =
executors = null
shutdownExecutorService = false
nextQuery = 0
Thread-0 [debug.lifecycle] Activating NotificationManager@20
Thread-0 [debug.lifecycle.dump] DUMP NotificationManager@20
repository = CDORepositoryInfo[repo1]
Thread-0 [debug.lifecycle] Activating CommitManager@21
Thread-0 [debug.lifecycle.dump] DUMP CommitManager@21
repository = CDORepositoryInfo[repo1]
shutdownExecutorService = false
Thread-0 [debug.lifecycle] Activating LockManager@22
Thread-0 [debug.lifecycle.dump] DUMP LockManager@22
RWLockManager.writeLockStrategy = org.eclipse.net4j.util.concurrent.RWLockManager$1@4369a50b
RWLockManager.readLockStrategy = org.eclipse.net4j.util.concurrent.RWLockManager$2@4cd297c0
RWLockManager.lockEntries =
RWLockManager.lockChanged = java.lang.Object@15e8e5a7
repository = CDORepositoryInfo[repo1]
Thread-0 [debug.lifecycle] Activating DBStoreAccessor@23
Thread-0 [debug.lifecycle] Activating SmartPreparedStatementCache@24
Thread-0 [debug.lifecycle.dump] DUMP SmartPreparedStatementCache@24
AbstractPreparedStatementCache.connection = org.apache.derby.impl.jdbc.EmbedConnection40@253380575 (XID = 198), (SESSIONID = 7), (DATABASE = /Users/joel/jotter/cdo/cdodb1), (DRDAID = null)
cache = org.eclipse.emf.cdo.server.internal.db.SmartPreparedStatementCache$Cache@6648938
checkedOut =
Thread-0 [debug.lifecycle.dump] DUMP DBStoreAccessor@23
StoreAccessor.commitContexts =
StoreAccessor.store = DBStore@5
StoreAccessor.context = null
StoreAccessor.reader = false
connection = org.apache.derby.impl.jdbc.EmbedConnection40@253380575 (XID = 198), (SESSIONID = 7), (DATABASE = /Users/joel/jotter/cdo/cdodb1), (DRDAID = null)
statementCache = SmartPreparedStatementCache@24
connectionKeepAliveTimer = java.util.Timer@326cbecf
Thread-0 [debug] Writing package unit: CDOPackageUnit[id=http://www.eclipse.org/emf/2002/Ecore, state=LOADED, type=LEGACY, originalType=LEGACY, timeStamp=28-Dec-2009 20:51:10]
Thread-0 [debug.sql] INSERT IGNORE INTO cdo_package_units VALUES (?, ?, ?, ?)
Thread-0 [debug] Writing package info: CDOPackageInfo[packageURI=http://www.eclipse.org/emf/2002/Ecore, parentURI=null, metaIDRange=[MID1:MID420]]
Thread-0 [debug.sql] INSERT IGNORE INTO cdo_package_infos VALUES (?, ?, ?, ?, ?)
Thread-0 [debug] Writing package unit: CDOPackageUnit[id=http://www.eclipse.org/emf/CDO/Eresource/2.0.0, state=LOADED, type=NATIVE, originalType=NATIVE, timeStamp=28-Dec-2009 20:51:10]
Thread-0 [debug.sql] INSERT IGNORE INTO cdo_package_units VALUES (?, ?, ?, ?)
Thread-0 [debug] Writing package info: CDOPackageInfo[packageURI=http://www.eclipse.org/emf/CDO/Eresource/2.0.0, parentURI=null, metaIDRange=[MID421:MID455]]
Thread-0 [debug.sql] INSERT IGNORE INTO cdo_package_infos VALUES (?, ?, ?, ?, ?)
Thread-0 [debug.sql] CREATE TABLE CDOResourceFolder_nodes_list (cdo_source BIGINT, cdo_version INTEGER, cdo_idx INTEGER, cdo_value BIGINT)
Thread-0 [debug.sql] CREATE UNIQUE INDEX CDOResourceFolder_nodes_list_idx0 ON CDOResourceFolder_nodes_list (cdo_source, cdo_version, cdo_idx)
Thread-0 [debug.sql] CREATE TABLE CDOResource_contents_list (cdo_source BIGINT, cdo_version INTEGER, cdo_idx INTEGER, cdo_value BIGINT)
Thread-0 [debug.sql] CREATE UNIQUE INDEX CDOResource_contents_list_idx0 ON CDOResource_contents_list (cdo_source, cdo_version, cdo_idx)
Thread-0 [debug.sql] CREATE TABLE CDOResourceFolder (cdo_id BIGINT NOT NULL, cdo_version INTEGER NOT NULL, cdo_class BIGINT NOT NULL, cdo_created BIGINT NOT NULL, cdo_revised BIGINT NOT NULL, cdo_resource BIGINT NOT NULL, cdo_container BIGINT NOT NULL, cdo_feature INTEGER NOT NULL, folder BIGINT, name VARCHAR(32672))
Thread-0 [debug.sql] CREATE UNIQUE INDEX CDOResourceFolder_idx0 ON CDOResourceFolder (cdo_id, cdo_version)
Thread-0 [debug.sql] CREATE INDEX CDOResourceFolder_idx1 ON CDOResourceFolder (cdo_id, cdo_revised)
Thread-0 [debug.sql] CREATE TABLE CDOResource (cdo_id BIGINT NOT NULL, cdo_version INTEGER NOT NULL, cdo_class BIGINT NOT NULL, cdo_created BIGINT NOT NULL, cdo_revised BIGINT NOT NULL, cdo_resource BIGINT NOT NULL, cdo_container BIGINT NOT NULL, cdo_feature INTEGER NOT NULL, folder BIGINT, name VARCHAR(32672))
Thread-0 [debug.sql] CREATE UNIQUE INDEX CDOResource_idx0 ON CDOResource (cdo_id, cdo_version)
Thread-0 [debug.sql] CREATE INDEX CDOResource_idx1 ON CDOResource (cdo_id, cdo_revised)
Thread-0 [debug] --- DB COMMIT ---
Thread-0 [debug.lifecycle] Deactivating DBStoreAccessor@23
Thread-0 [debug.lifecycle] Deactivating SmartPreparedStatementCache@24
Thread-0 [debug.lifecycle.dump] DUMP Default@25
Repository.name = repo1
Repository.store = DBStore@5
Repository.uuid = null
Repository.properties =
revisedLRUCapacity=100
supportingAudits=true
currentLRUCapacity=10000
verifyingRevisions=false
Repository.supportingRevisionDeltas = false
Repository.supportingAudits = true
Repository.verifyingRevisions = false
Repository.packageRegistry =
http://www.eclipse.org/emf/2002/Ecore=org.eclipse.emf.ecore.impl.EcorePackageImpl@2d9b4fac (name: ecore) (nsURI: http://www.eclipse.org/emf/2002/Ecore, nsPrefix: ecore)
http://www.eclipse.org/emf/CDO/Eresource/2.0.0=org.eclipse.emf.cdo.eresource.impl.EresourcePackageImpl@2cfb1135 (name: eresource) (nsURI: http://www.eclipse.org/emf/CDO/Eresource/2.0.0, nsPrefix: eresource)
Repository.revisionManager = CDORevisionManagerImpl@15
Repository.sessionManager = SessionManager@14
Repository.queryManager = QueryManager@19
Repository.notificationManager = NotificationManager@20
Repository.commitManager = CommitManager@21
Repository.lockManager = LockManager@22
Repository.queryHandlerProvider = null
Repository.readAccessHandlers =
Repository.writeAccessHandlers =
Thread-0 [debug.om] Starting bundle org.eclipse.emf.cdo.server.net4j
[INFO] Net4j extension starting
Thread-0 [debug] Configuring Net4j server from /Users/joel/configuration/cdo-server.xml
Thread-0 [debug.lifecycle] Activating BufferPool[4,096]
BufferPoolMonitor [debug.buffer] Start monitoring
Thread-0 [debug.lifecycle.dump] DUMP BufferPool@26
BufferProvider.bufferCapacity = 4096
BufferProvider.providedBuffers = 0
BufferProvider.retainedBuffers = 0
provider = BufferFactory[4,096]
pooledBuffers = 0
Thread-0 [debug.lifecycle] Activating TCPSelector
Thread-0 [debug.lifecycle.dump] DUMP TCPSelector@27
selector = sun.nio.ch.KQueueSelectorImpl@28fe53cf
clientOperations =
serverOperations =
thread = Thread[TCPSelector,5,main]
running = true
Thread-0 [debug.lifecycle] Activating TCPAcceptor[0.0.0.0:2,036]
Thread-0 [debug] Ordering server operation REGISTER sun.nio.ch.ServerSocketChannelImpl[unbound]
TCPSelector [debug] Executing server operation REGISTER sun.nio.ch.ServerSocketChannelImpl[unbound]
TCPSelector [debug] Registering sun.nio.ch.ServerSocketChannelImpl[unbound]
Thread-0 [debug.lifecycle.dump] DUMP TCPAcceptor@28
Acceptor.config = TransportConfig[receiveExecutor=java.util.concurrent.ThreadPoolExecutor@7aa36771, bufferProvider=BufferPool[4,096], protocolProvider=org.eclipse.net4j.ContainerProtocolProvider$Server@7ddc6a9d, negotiator=null]
Acceptor.connectorListener = org.eclipse.spi.net4j.Acceptor$1@11dba9f9
Acceptor.acceptedConnectors =
selector = TCPSelector
startSynchronously = true
synchronousStartTimeout = 20000
serverSocketChannel = sun.nio.ch.ServerSocketChannelImpl[/0.0.0.0:2036]
address = 0.0.0.0
port = 2036
[INFO] Net4j extension started
[INFO] CDO server started
Application Started: 8822
TCPSelector [debug] Accepting sun.nio.ch.ServerSocketChannelImpl[/0.0.0.0:2036]
TCPSelector [debug] Accepted socketChannel java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.lifecycle] Activating TCPServerConnector[127.0.0.1:49,185]
TCPSelector [debug.connector] Setting state CONNECTING (was disconnected) for TCPServerConnector[127.0.0.1:49,185]
TCPSelector [debug.lifecycle] Activating Channel[Control, SERVER]
TCPSelector [debug.lifecycle] Activating ChannelReceiveSerializer@29
TCPSelector [debug.lifecycle.dump] DUMP ChannelReceiveSerializer@29
Worker.daemon = false
Worker.activationTimeout = 10000
Worker.deactivationTimeout = 10000
QueueWorker.queue =
QueueWorker.pollMillis = 100
TCPSelector [debug.lifecycle.dump] DUMP ControlChannel@30
Channel.userID = null
Channel.channelMultiplexer = TCPServerConnector[127.0.0.1:49,185]
Channel.id = 0
Channel.receiveExecutor = java.util.concurrent.ThreadPoolExecutor@7aa36771
Channel.receiveHandler = null
Channel.receiveSerializer = ChannelReceiveSerializer@29
Channel.sendQueue =
Channel.sentBuffers = 0
Channel.receivedBuffers = 0
acknowledgements = SynchronizingCorrelator{}
TCPSelector [debug] Ordering server operation REGISTER java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.lifecycle.dump] DUMP TCPServerConnector@31
ChannelMultiplexer.config = TransportConfig[receiveExecutor=java.util.concurrent.ThreadPoolExecutor@7aa36771, bufferProvider=BufferPool[4,096], protocolProvider=org.eclipse.net4j.ContainerProtocolProvider$Server@7ddc6a9d, negotiator=null]
ChannelMultiplexer.openChannelTimeout = -1
Connector.userID = null
Connector.connectorState = CONNECTING
TCPConnector.socketChannel = java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPConnector.selector = TCPSelector
TCPConnector.writeQueue =
TCPConnector.inputBuffer = null
TCPConnector.controlChannel = Channel[Control, SERVER]
TCPConnector.host = null
TCPConnector.port = 0
acceptor = TCPAcceptor[0.0.0.0:2,036]
TCPSelector [debug] Executing server operation REGISTER java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug] Registering java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.connector] Setting state CONNECTED (was connecting) for TCPServerConnector[127.0.0.1:49,185]
TCPSelector [debug.acceptor] Added connector TCPServerConnector[127.0.0.1:49,185]
TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Created Buffer@32[INITIAL]
TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
TCPSelector [debug.buffer] Read 8 bytes
02 00 01 00 03 63 64 6f
TCPSelector [debug.lifecycle] Activating SignalProtocol[cdo]
TCPSelector [debug.lifecycle.dump] DUMP CDOServerProtocol@33
Protocol.type = cdo
Protocol.executorService = java.util.concurrent.ThreadPoolExecutor@7aa36771
Protocol.bufferProvider = Channel[-32,768, SERVER]
Protocol.infraStructure = null
Protocol.channel = Channel[-32,768, SERVER]
Protocol.userID = null
SignalProtocol.timeout = 10000
SignalProtocol.streamWrapper = null
SignalProtocol.failOverStrategy = null
SignalProtocol.signals =
SignalProtocol.nextCorrelationID = 1
SignalProtocol.failingOver = false
negotiationTimeout = 15000
repositoryProvider = org.eclipse.emf.cdo.spi.server.PluginRepositoryProvider@559fe5e6
packageURICompressor = DIRECT
TCPSelector [debug.connector] Opening channel with protocol cdo
TCPSelector [debug.lifecycle] Activating Channel[1, SERVER]
TCPSelector [debug.lifecycle] Activating ChannelReceiveSerializer@34
TCPSelector [debug.lifecycle.dump] DUMP ChannelReceiveSerializer@34
Worker.daemon = false
Worker.activationTimeout = 10000
Worker.deactivationTimeout = 10000
QueueWorker.queue =
QueueWorker.pollMillis = 100
TCPSelector [debug.lifecycle.dump] DUMP Channel@35
userID = null
channelMultiplexer = TCPServerConnector[127.0.0.1:49,185]
id = 1
receiveExecutor = java.util.concurrent.ThreadPoolExecutor@7aa36771
receiveHandler = SignalProtocol[cdo]
receiveSerializer = ChannelReceiveSerializer@34
sendQueue =
sentBuffers = 0
receivedBuffers = 0
TCPSelector [debug.buffer] Created Buffer@36[INITIAL]
TCPSelector [debug.buffer] Obtained Buffer@36[INITIAL]
TCPSelector [debug.channel] Handling buffer: Buffer@36[PUTTING] --> Channel[Control, SERVER]
TCPSelector [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug.buffer] Retaining Buffer@32[RELEASED]
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug] Setting interest READ|WRITE (was read)
TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Writing 4 bytes
03 00 01 01
TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
TCPSelector [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Setting interest READ (was read|write)
TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
TCPSelector [debug.buffer] Read 16 bytes (EOS)
00 00 00 01 00 01 01 00 05 72 65 70 6f 31 00 01
TCPSelector [debug.channel] Handling buffer from multiplexer: Buffer@32[GETTING] --> Channel[1, SERVER]
ReceiveSerializer-Channel[1, SERVER] [debug.signal] Received buffer for correlation 1
ReceiveSerializer-Channel[1, SERVER] [debug.signal] Got signalID: 1
Thread-10 [debug.signal] ================ Indicating: Signal[protocol=cdo, id=1, name=OpenSessionIndication, correlation=-1]
Thread-10 [debug.buffer] Retaining Buffer@32[RELEASED]
Thread-10 [debug.signal] ================ Responding: Signal[protocol=cdo, id=1, name=OpenSessionIndication, correlation=-1]
Thread-10 [debug.session] Opening session 1
Thread-10 [debug.lifecycle] Activating Session[1]
Thread-10 [debug.lifecycle.dump] DUMP Session@37
manager = SessionManager@14
protocol = SignalProtocol[cdo]
sessionID = 1
userID = null
passiveUpdateEnabled = true
views =
subscribed = false
Thread-10 [debug.buffer] Obtained Buffer@36[INITIAL]
Thread-10 [debug.channel] Handling buffer: Buffer@36[PUTTING] --> Channel[1, SERVER]
Thread-10 [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug] Setting interest READ|WRITE (was read)
TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Writing 234 bytes (EOS)
00 00 00 00 00 00 00 01 01 00 24 36 62 35 35 30 33 37 65 2d 39 66 64 64 2d 34 38 36 36 2d 61 37 36 63 2d 39 30 62 32 66 36 39 37 33 33 61 31 00 00 00 01 25 28 0e 7b 77 00 00 01 25 28 0e 7b 77 01 00 00 00 02 00 01 00 00 01 25 28 0e 7b 77 00 00 00 01 01 00 25 68 74 74 70 3a 2f 2f 77 77 77 2e 65 63 6c 69 70 73 65 2e 6f 72 67 2f 65 6d 66 2f 32 30 30 32 2f 45 63 6f 72 65 00 00 01 06 00 00 00 00 00 00 00 01 00 00 01 5b 00 00 00 00 01 25 28 0e 7b 77 00 00 00 01 01 00 2e 68 74 74 70 3a 2f 2f 77 77 77 2e 65 63 6c 69 70 73 65 2e 6f 72 67 2f 65 6d 66 2f 43 44 4f 2f 45 72 65 73 6f 75 72 63 65 2f 32 2e 30 2e 30 00 00 01 06 00 00 00 00 00 00 01 5a 00 00 00 23 00 00 01 25 28 0e 08 22 00 00 01 25 28 0e 08 58
TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
TCPSelector [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Setting interest READ (was read|write)
TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
TCPSelector [debug.buffer] Read 8 bytes
02 00 02 00 03 63 64 6f
TCPSelector [debug.lifecycle] Activating SignalProtocol[cdo]
TCPSelector [debug.lifecycle.dump] DUMP CDOServerProtocol@38
Protocol.type = cdo
Protocol.executorService = java.util.concurrent.ThreadPoolExecutor@7aa36771
Protocol.bufferProvider = Channel[-32,768, SERVER]
Protocol.infraStructure = null
Protocol.channel = Channel[-32,768, SERVER]
Protocol.userID = null
SignalProtocol.timeout = 10000
SignalProtocol.streamWrapper = null
SignalProtocol.failOverStrategy = null
SignalProtocol.signals =
SignalProtocol.nextCorrelationID = 1
SignalProtocol.failingOver = false
negotiationTimeout = 15000
repositoryProvider = org.eclipse.emf.cdo.spi.server.PluginRepositoryProvider@559fe5e6
packageURICompressor = DIRECT
TCPSelector [debug.connector] Opening channel with protocol cdo
TCPSelector [debug.lifecycle] Activating Channel[2, SERVER]
TCPSelector [debug.lifecycle] Activating ChannelReceiveSerializer@39
TCPSelector [debug.lifecycle.dump] DUMP ChannelReceiveSerializer@39
Worker.daemon = false
Worker.activationTimeout = 10000
Worker.deactivationTimeout = 10000
QueueWorker.queue =
QueueWorker.pollMillis = 100
TCPSelector [debug.lifecycle.dump] DUMP Channel@40
userID = null
channelMultiplexer = TCPServerConnector[127.0.0.1:49,185]
id = 2
receiveExecutor = java.util.concurrent.ThreadPoolExecutor@7aa36771
receiveHandler = SignalProtocol[cdo]
receiveSerializer = ChannelReceiveSerializer@39
sendQueue =
sentBuffers = 0
receivedBuffers = 0
TCPSelector [debug.buffer] Obtained Buffer@36[INITIAL]
TCPSelector [debug.channel] Handling buffer: Buffer@36[PUTTING] --> Channel[Control, SERVER]
TCPSelector [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug.buffer] Retaining Buffer@32[RELEASED]
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug] Setting interest READ|WRITE (was read)
TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Writing 4 bytes
03 00 02 01
TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
TCPSelector [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Setting interest READ (was read|write)
TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
TCPSelector [debug.buffer] Read 16 bytes (EOS)
00 00 00 01 00 01 01 00 05 72 65 70 6f 31 00 01
TCPSelector [debug.channel] Handling buffer from multiplexer: Buffer@32[GETTING] --> Channel[2, SERVER]
ReceiveSerializer-Channel[2, SERVER] [debug.signal] Received buffer for correlation 1
ReceiveSerializer-Channel[2, SERVER] [debug.signal] Got signalID: 1
Thread-11 [debug.signal] ================ Indicating: Signal[protocol=cdo, id=1, name=OpenSessionIndication, correlation=-1]
Thread-11 [debug.buffer] Retaining Buffer@32[RELEASED]
Thread-11 [debug.signal] ================ Responding: Signal[protocol=cdo, id=1, name=OpenSessionIndication, correlation=-1]
Thread-11 [debug.session] Opening session 2
Thread-11 [debug.lifecycle] Activating Session[2]
Thread-11 [debug.lifecycle.dump] DUMP Session@41
manager = SessionManager@14
protocol = SignalProtocol[cdo]
sessionID = 2
userID = null
passiveUpdateEnabled = true
views =
subscribed = false
Thread-11 [debug.buffer] Obtained Buffer@36[INITIAL]
Thread-11 [debug.channel] Handling buffer: Buffer@36[PUTTING] --> Channel[2, SERVER]
Thread-11 [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug] Setting interest READ|WRITE (was read)
TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Writing 234 bytes (EOS)
00 00 00 00 00 00 00 02 01 00 24 36 62 35 35 30 33 37 65 2d 39 66 64 64 2d 34 38 36 36 2d 61 37 36 63 2d 39 30 62 32 66 36 39 37 33 33 61 31 00 00 00 01 25 28 0e 7b 77 00 00 01 25 28 0e 7b 77 01 00 00 00 02 00 01 00 00 01 25 28 0e 7b 77 00 00 00 01 01 00 25 68 74 74 70 3a 2f 2f 77 77 77 2e 65 63 6c 69 70 73 65 2e 6f 72 67 2f 65 6d 66 2f 32 30 30 32 2f 45 63 6f 72 65 00 00 01 06 00 00 00 00 00 00 00 01 00 00 01 5b 00 00 00 00 01 25 28 0e 7b 77 00 00 00 01 01 00 2e 68 74 74 70 3a 2f 2f 77 77 77 2e 65 63 6c 69 70 73 65 2e 6f 72 67 2f 65 6d 66 2f 43 44 4f 2f 45 72 65 73 6f 75 72 63 65 2f 32 2e 30 2e 30 00 00 01 06 00 00 00 00 00 00 01 5a 00 00 00 23 00 00 01 25 28 10 2d 59 00 00 01 25 28 10 2d 61
TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
TCPSelector [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Setting interest READ (was read|write)
osgi>
osgi>
osgi> TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
TCPSelector [debug.buffer] Read 8 bytes
02 00 03 00 03 63 64 6f
TCPSelector [debug.lifecycle] Activating SignalProtocol[cdo]
TCPSelector [debug.lifecycle.dump] DUMP CDOServerProtocol@42
Protocol.type = cdo
Protocol.executorService = java.util.concurrent.ThreadPoolExecutor@7aa36771
Protocol.bufferProvider = Channel[-32,768, SERVER]
Protocol.infraStructure = null
Protocol.channel = Channel[-32,768, SERVER]
Protocol.userID = null
SignalProtocol.timeout = 10000
SignalProtocol.streamWrapper = null
SignalProtocol.failOverStrategy = null
SignalProtocol.signals =
SignalProtocol.nextCorrelationID = 1
SignalProtocol.failingOver = false
negotiationTimeout = 15000
repositoryProvider = org.eclipse.emf.cdo.spi.server.PluginRepositoryProvider@559fe5e6
packageURICompressor = DIRECT
TCPSelector [debug.connector] Opening channel with protocol cdo
TCPSelector [debug.lifecycle] Activating Channel[3, SERVER]
TCPSelector [debug.lifecycle] Activating ChannelReceiveSerializer@43
TCPSelector [debug.lifecycle.dump] DUMP ChannelReceiveSerializer@43
Worker.daemon = false
Worker.activationTimeout = 10000
Worker.deactivationTimeout = 10000
QueueWorker.queue =
QueueWorker.pollMillis = 100
TCPSelector [debug.lifecycle.dump] DUMP Channel@44
userID = null
channelMultiplexer = TCPServerConnector[127.0.0.1:49,185]
id = 3
receiveExecutor = java.util.concurrent.ThreadPoolExecutor@7aa36771
receiveHandler = SignalProtocol[cdo]
receiveSerializer = ChannelReceiveSerializer@43
sendQueue =
sentBuffers = 0
receivedBuffers = 0
TCPSelector [debug.buffer] Obtained Buffer@36[INITIAL]
TCPSelector [debug.channel] Handling buffer: Buffer@36[PUTTING] --> Channel[Control, SERVER]
TCPSelector [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug.buffer] Retaining Buffer@32[RELEASED]
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug] Setting interest READ|WRITE (was read)
TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Writing 4 bytes
03 00 03 01
TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
TCPSelector [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Setting interest READ (was read|write)
TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
TCPSelector [debug.buffer] Read 16 bytes (EOS)
00 00 00 01 00 01 01 00 05 72 65 70 6f 31 00 01
TCPSelector [debug.channel] Handling buffer from multiplexer: Buffer@32[GETTING] --> Channel[3, SERVER]
ReceiveSerializer-Channel[3, SERVER] [debug.signal] Received buffer for correlation 1
ReceiveSerializer-Channel[3, SERVER] [debug.signal] Got signalID: 1
Thread-12 [debug.signal] ================ Indicating: Signal[protocol=cdo, id=1, name=OpenSessionIndication, correlation=-1]
Thread-12 [debug.buffer] Retaining Buffer@32[RELEASED]
Thread-12 [debug.signal] ================ Responding: Signal[protocol=cdo, id=1, name=OpenSessionIndication, correlation=-1]
Thread-12 [debug.session] Opening session 3
Thread-12 [debug.lifecycle] Activating Session[3]
Thread-12 [debug.lifecycle.dump] DUMP Session@45
manager = SessionManager@14
protocol = SignalProtocol[cdo]
sessionID = 3
userID = null
passiveUpdateEnabled = true
views =
subscribed = false
Thread-12 [debug.buffer] Obtained Buffer@36[INITIAL]
Thread-12 [debug.channel] Handling buffer: Buffer@36[PUTTING] --> Channel[3, SERVER]
Thread-12 [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = true
TCPSelector [debug] Setting interest READ|WRITE (was read)
TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
TCPSelector [debug.buffer] Writing 234 bytes (EOS)
00 00 00 00 00 00 00 03 01 00 24 36 62 35 35 30 33 37 65 2d 39 66 64 64 2d 34 38 36 36 2d 61 37 36 63 2d 39 30 62 32 66 36 39 37 33 33 61 31 00 00 00 01 25 28 0e 7b 77 00 00 01 25 28 0e 7b 77 01 00 00 00 02 00 01 00 00 01 25 28 0e 7b 77 00 00 00 01 01 00 25 68 74 74 70 3a 2f 2f 77 77 77 2e 65 63 6c 69 70 73 65 2e 6f 72 67 2f 65 6d 66 2f 32 30 30 32 2f 45 63 6f 72 65 00 00 01 06 00 00 00 00 00 00 00 01 00 00 01 5b 00 00 00 00 01 25 28 0e 7b 77 00 00 00 01 01 00 2e 68 74 74 70 3a 2f 2f 77 77 77 2e 65 63 6c 69 70 73 65 2e 6f 72 67 2f 65 6d 66 2f 43 44 4f 2f 45 72 65 73 6f 75 72 63 65 2f 32 2e 30 2e 30 00 00 01 06 00 00 00 00 00 00 01 5a 00 00 00 23 00 00 01 25 28 11 2e 66 00 00 01 25 28 11 2e 77
TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
TCPSelector [debug] Ordering server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Executing server operation INTEREST WRITE java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036 remote=/127.0.0.1:49185] = false
TCPSelector [debug] Setting interest READ (was read|write)
Eike Stepper wrote on Mon, 28 December 2009 13:04 | Excellent
Cheers
/Eike
|
|
|
|
Re: Generating editors for CDO [message #505281 is a reply to message #505241] |
Tue, 29 December 2009 04:38 |
|
Joel Rosi-Schwartz schrieb:
> Hmm... not sure about that yet ;)
>
> I have my workspace set up with the latest source from HEAD and my TP
> is as described in the source set up wiki. Everything build just fine.
> When I start up the CDO server all goes well, find trace below. When I
> try to connect with the CDO Session view I get this exception. So all
> is not well ;-(
>
> What now? Any ideas?
Can you try to set StringCompressor.BYPASS to true for testing?
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
>
>
> org.eclipse.emf.cdo.common.util.TransportException:
> java.io.IOException: String ID unknown: 16786792
> at
> org.eclipse.emf.cdo.internal.net4j.protocol.CDOClientProtoco l.send(CDOClientProtocol.java:318)
>
> at
> org.eclipse.emf.cdo.internal.net4j.protocol.CDOClientProtoco l.openSession(CDOClientProtocol.java:83)
>
> at
> org.eclipse.emf.cdo.internal.net4j.CDONet4jSessionConfigurat ionImpl.activateSession(CDONet4jSessionConfigurationImpl.jav a:156)
>
> at
> org.eclipse.emf.internal.cdo.session.CDOSessionImpl.doActiva te(CDOSessionImpl.java:816)
>
> at org.eclipse.net4j.util.lifecycle.Lifecycle.activate(Lifecycl e.java:70)
> at
> org.eclipse.net4j.util.lifecycle.LifecycleUtil.activate(Life cycleUtil.java:98)
>
> at
> org.eclipse.net4j.util.lifecycle.LifecycleUtil.activate(Life cycleUtil.java:88)
>
> at
> org.eclipse.net4j.util.container.ManagedContainer.getElement (ManagedContainer.java:285)
>
> at
> org.eclipse.net4j.util.container.ManagedContainer.getElement (ManagedContainer.java:265)
>
> at
> org.eclipse.emf.cdo.internal.ui.actions.OpenSessionAction.do Run(OpenSessionAction.java:67)
>
> at
> org.eclipse.net4j.util.ui.actions.LongRunningAction$1.run(Lo ngRunningAction.java:185)
>
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
> Caused by: java.io.IOException: String ID unknown: 16786792
> at
> org.eclipse.net4j.util.io.StringCompressor.read(StringCompre ssor.java:207)
>
> at
> org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.read CDOPackageURI(CDODataInputImpl.java:123)
>
> at
> org.eclipse.emf.cdo.internal.common.model.CDOPackageInfoImpl .read(CDOPackageInfoImpl.java:104)
>
> at
> org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.read CDOPackageInfo(CDODataInputImpl.java:117)
>
> at
> org.eclipse.emf.cdo.internal.common.model.CDOPackageUnitImpl .read(CDOPackageUnitImpl.java:291)
>
> at
> org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.read CDOPackageUnit(CDODataInputImpl.java:88)
>
> at
> org.eclipse.emf.cdo.internal.common.io.CDODataInputImpl.read CDOPackageUnits(CDODataInputImpl.java:103)
>
> at
> org.eclipse.emf.cdo.internal.net4j.protocol.OpenSessionReque st.confirming(OpenSessionRequest.java:117)
>
> at
> org.eclipse.emf.cdo.internal.net4j.protocol.OpenSessionReque st.confirming(OpenSessionRequest.java:1)
>
> at
> org.eclipse.emf.cdo.internal.net4j.protocol.CDOClientRequest .confirming(CDOClientRequest.java:81)
>
> at
> org.eclipse.net4j.signal.RequestWithConfirmation.doExtendedI nput(RequestWithConfirmation.java:123)
>
> at org.eclipse.net4j.signal.Signal.doInput(Signal.java:311)
> at
> org.eclipse.net4j.signal.RequestWithConfirmation.doExecute(R equestWithConfirmation.java:103)
>
> at org.eclipse.net4j.signal.SignalActor.execute(SignalActor.jav a:66)
> at org.eclipse.net4j.signal.Signal.runSync(Signal.java:238)
> at
> org.eclipse.net4j.signal.SignalProtocol.startSignal(SignalPr otocol.java:423)
>
> at
> org.eclipse.net4j.signal.RequestWithConfirmation.doSend(Requ estWithConfirmation.java:87)
>
> at
> org.eclipse.net4j.signal.RequestWithConfirmation.send(Reques tWithConfirmation.java:73)
>
> at
> org.eclipse.emf.cdo.internal.net4j.protocol.CDOClientProtoco l.send(CDOClientProtocol.java:310)
>
> ... 11 more
>
>
> Note that at the bottom of the console output there is output that
> corresponds to 3 attempts a connecting.
>
>
> Configuration location:
>
> file:/Users/joel/projects/workspaces/ormf.model/.metadata/.p lugins/org.eclipse.pde.core/CDOServer/
>
> Configuration file:
>
> file:/Users/joel/projects/workspaces/ormf.model/.metadata/.p lugins/org.eclipse.pde.core/CDOServer/config.ini
> loaded
> Install location:
>
> file:/Users/joel/projects/workspaces/ormf.model/../../target s/org.eclipse.ormf.target_3.6.M4/eclipse/
>
> Framework located:
>
> file:/Users/joel/projects/targets/org.eclipse.ormf.target_3. 6.M4/eclipse/plugins/org.eclipse.osgi_3.6.0.v20091204.jar
>
> Framework classpath:
>
> file:/Users/joel/projects/targets/org.eclipse.ormf.target_3. 6.M4/eclipse/plugins/org.eclipse.osgi_3.6.0.v20091204.jar
>
> Splash location:
> null
> Debug options:
>
> file:/Users/joel/projects/workspaces/ormf.model/.metadata/.p lugins/org.eclipse.pde.core/CDOServer/.options
> loaded
>
> osgi> Time to load bundles: 766
> Starting application: 2564
> Thread-0 [debug.om] Starting bundle org.eclipse.net4j.util
> Thread-0 [debug.lifecycle] Activating ManagedContainer
> Thread-0 [debug.lifecycle] Activating {}
> Thread-0 [debug.lifecycle.dump] DUMP PluginFactoryRegistry@1
> Registry.autoCommit = true
> Registry.transaction = null
> HashMapRegistry.map =
> org.eclipse.net4j.acceptors[tcp]=Factory[org.eclipse.net4j.a cceptors,
> tcp]
>
> org.eclipse.net4j.Negotiators[challenge]=Factory[org.eclipse .net4j.Negotiators,
> challenge]
>
> org.eclipse.net4j.connectors[tcp]=Factory[org.eclipse.net4j. connectors,
> tcp]
>
> org.eclipse.net4j.randomizers[default]=Factory[org.eclipse.n et4j.randomizers,
> default]
>
> org.eclipse.net4j.userManagers[file]=Factory[org.eclipse.net 4j.userManagers,
> file]
>
> org.eclipse.net4j.executorServices[default]=Factory[org.ecli pse.net4j.executorServices,
> default]
>
> org.eclipse.net4j.serverProtocols[cdo]=Factory[org.eclipse.n et4j.serverProtocols,
> cdo]
>
> org.eclipse.net4j.serverProtocols[heartbeat]=Factory[org.ecl ipse.net4j.serverProtocols,
> heartbeat]
>
> org.eclipse.net4j.selectors[tcp]=Factory[org.eclipse.net4j.s electors,
> tcp]
>
> org.eclipse.net4j.util.timers[daemon]=Factory[org.eclipse.ne t4j.util.timers,
> daemon]
>
> org.eclipse.net4j.bufferProviders[default]=Factory[org.eclip se.net4j.bufferProviders,
> default]
> extensionRegistryListener =
> org.eclipse.net4j.internal.util.factory.PluginFactoryRegistr y$1@73aecc3a
>
> Thread-0 [debug.lifecycle] Activating []
> Thread-0 [debug.om] Starting bundle org.eclipse.net4j
> Thread-0 [debug.om] Starting bundle org.eclipse.net4j.tcp
> Thread-0 [debug.lifecycle.dump] DUMP PluginElementProcessorList@2
> processors = org.eclipse.net4j.TransportInjector@24ebf068
>
> org.eclipse.net4j.signal.heartbeat.HeartBeatProtocol$Server$TimerInjector@7df44ec7
>
> org.eclipse.net4j.util.security.ChallengeNegotiatorConfigure r @32602b6b
> org.eclipse.net4j.internal.tcp.TCPSelectorInjector@47c297a3
> extensionRegistryListener =
> org.eclipse.net4j.internal.util.container.PluginElementProce ssorList$1@203e1bc8
>
>
> Thread-0 [debug.lifecycle.dump] DUMP PluginContainer@3
> ManagedContainer.factoryRegistry =
> org.eclipse.net4j.acceptors[tcp]=Factory[org.eclipse.net4j.a cceptors,
> tcp]
>
> org.eclipse.net4j.Negotiators[challenge]=Factory[org.eclipse .net4j.Negotiators,
> challenge]
>
> org.eclipse.net4j.connectors[tcp]=Factory[org.eclipse.net4j. connectors,
> tcp]
>
> org.eclipse.net4j.randomizers[default]=Factory[org.eclipse.n et4j.randomizers,
> default]
>
> org.eclipse.net4j.userManagers[file]=Factory[org.eclipse.net 4j.userManagers,
> file]
>
> org.eclipse.net4j.executorServices[default]=Factory[org.ecli pse.net4j.executorServices,
> default]
>
> org.eclipse.net4j.serverProtocols[cdo]=Factory[org.eclipse.n et4j.serverProtocols,
> cdo]
>
> org.eclipse.net4j.serverProtocols[heartbeat]=Factory[org.ecl ipse.net4j.serverProtocols,
> heartbeat]
>
> org.eclipse.net4j.selectors[tcp]=Factory[org.eclipse.net4j.s electors,
> tcp]
>
> org.eclipse.net4j.util.timers[daemon]=Factory[org.eclipse.ne t4j.util.timers,
> daemon]
>
> org.eclipse.net4j.bufferProviders[default]=Factory[org.eclip se.net4j.bufferProviders,
> default]
> ManagedContainer.postProcessors =
> org.eclipse.net4j.TransportInjector@24ebf068
>
> org.eclipse.net4j.signal.heartbeat.HeartBeatProtocol$Server$TimerInjector@7df44ec7
>
> org.eclipse.net4j.util.security.ChallengeNegotiatorConfigure r @32602b6b
> org.eclipse.net4j.internal.tcp.TCPSelectorInjector@47c297a3
> ManagedContainer.elementRegistry =
> Thread-0 [debug.om] Plugin container created: ManagedContainer
> Thread-0 [debug.om] Starting bundle org.eclipse.emf.cdo.server
> Thread-0 [debug.om] Starting application org.eclipse.emf.cdo.server.app
> [INFO] CDO server starting
> Thread-0 [debug.repository] Configuring CDO server from
> /Users/joel/configuration/cdo-server.xml
> Thread-0 [debug.repository] Configuring repository repo1 (type=default)
> Thread-0 [debug.om] Starting bundle org.eclipse.emf.cdo.common
> Thread-0 [debug.om] Starting bundle org.eclipse.emf.cdo.server.db
> Thread-0 [debug.om] Starting bundle org.eclipse.net4j.db
> Thread-0 [debug.om] Starting bundle org.eclipse.net4j.db.derby
> Thread-0 [debug.om] Starting bundle org.eclipse.emf.cdo
> Thread-0 [debug.lifecycle] Activating CDOViewProviderRegistryImpl@4
> Thread-0 [debug.lifecycle.dump] DUMP CDOViewProviderRegistryImpl@4
> viewProviders =
> org.eclipse.emf.internal.cdo.view.PluginContainerViewProvide r @30d647d8
>
> Thread-0 [debug.lifecycle] Activating CDORepositoryInfo[repo1]
> Thread-0 [debug.lifecycle] Activating DBStore@5
> Thread-0 [debug.lifecycle] Activating MetaDataManager@6
> Thread-0 [debug.lifecycle.dump] DUMP MetaDataManager@6
> store = DBStore@5
>
> Thread-0 [debug.lifecycle] Activating HorizontalAuditMappingStrategy@7
> Thread-0 [debug.lifecycle] Activating ObjectTypeCache@8
> Thread-0 [debug.lifecycle] Activating DBStoreAccessor@9
> Thread-0 [debug.lifecycle] Activating SmartPreparedStatementCache@10
> Thread-0 [debug.lifecycle.dump] DUMP SmartPreparedStatementCache@10
> AbstractPreparedStatementCache.connection =
> org.apache.derby.impl.jdbc.EmbedConnection40@1571172802 (XID = 146),
> (SESSIONID = 3), (DATABASE = /Users/joel/jotter/cdo/cdodb1), (DRDAID =
> null) cache =
> org.eclipse.emf.cdo.server.internal.db.SmartPreparedStatemen tCache$Cache@15384ed5
>
> checkedOut =
> Thread-0 [debug.lifecycle.dump] DUMP DBStoreAccessor@9
> StoreAccessor.commitContexts = StoreAccessor.store = DBStore@5
> StoreAccessor.context = null
> StoreAccessor.reader = false
> connection = org.apache.derby.impl.jdbc.EmbedConnection40@1571172802
> (XID = 146), (SESSIONID = 3), (DATABASE =
> /Users/joel/jotter/cdo/cdodb1), (DRDAID = null) statementCache =
> SmartPreparedStatementCache@10
> connectionKeepAliveTimer = java.util.Timer@2743724e
>
> Thread-0 [debug.sql] CREATE TABLE cdo_objects (cdo_id BIGINT,
> cdo_class BIGINT)
> Thread-0 [debug.sql] CREATE UNIQUE INDEX cdo_objects_idx0 ON
> cdo_objects (cdo_id)
> Thread-0 [debug.lifecycle] Deactivating DBStoreAccessor@9
> Thread-0 [debug.lifecycle] Deactivating SmartPreparedStatementCache@10
> Thread-0 [debug.lifecycle.dump] DUMP ObjectTypeCache@8
> mappingStrategy = HorizontalAuditMappingStrategy@7
> table = cdo_objects
> idField = cdo_id
> typeField = cdo_class
> sqlDelete = DELETE FROM cdo_objects WHERE cdo_id = ?
> sqlInsert = INSERT IGNORE INTO cdo_objects VALUES (?,?)
> sqlSelect = SELECT cdo_class FROM cdo_objects WHERE cdo_id = ?
> metaDataManager = MetaDataManager@6
>
> Thread-0 [debug.lifecycle.dump] DUMP HorizontalAuditMappingStrategy@7
> AbstractMappingStrategy.store = DBStore@5
> AbstractMappingStrategy.properties =
> toManyReferences=ONE_TABLE_PER_REFERENCE
> qualifiedNames=false
> toOneReferences=LIKE_ATTRIBUTES
> AbstractMappingStrategy.classMappings =
> AbstractHorizontalMappingStrategy.objectTypeCache = ObjectTypeCache@8
>
> Thread-0 [debug.sql] CREATE TABLE cdo_package_units (id VARCHAR(255),
> original_type INTEGER, time_stamp BIGINT, package_data BLOB)
> Thread-0 [debug.sql] CREATE INDEX cdo_package_units_idx0 ON
> cdo_package_units (id)
> Thread-0 [debug.sql] CREATE TABLE cdo_package_infos (uri VARCHAR(255),
> parent VARCHAR(255), unit VARCHAR(255), meta_lb BIGINT, meta_ub BIGINT)
> Thread-0 [debug.sql] CREATE INDEX cdo_package_infos_idx0 ON
> cdo_package_infos (uri)
> Thread-0 [debug.sql] CREATE INDEX cdo_package_infos_idx1 ON
> cdo_package_infos (parent)
> Thread-0 [debug.sql] CREATE INDEX cdo_package_infos_idx2 ON
> cdo_package_infos (unit)
> Thread-0 [debug.sql] CREATE TABLE cdo_external_refs (id BIGINT, uri
> VARCHAR(255))
> Thread-0 [debug.sql] CREATE INDEX cdo_external_refs_idx0 ON
> cdo_external_refs (id)
> Thread-0 [debug.sql] CREATE INDEX cdo_external_refs_idx1 ON
> cdo_external_refs (uri)
> Thread-0 [debug.sql] CREATE TABLE cdo_repository (created BIGINT,
> starts BIGINT, started BIGINT, stopped BIGINT, next_cdoid BIGINT,
> next_metaid BIGINT)
> Thread-0 [debug.sql] INSERT IGNORE INTO cdo_repository VALUES (1262033470600,
> 1, 1262033470600, 0, -1, -1)
> [INFO] First start: 28-Dec-2009 20:51:10
> Thread-0 [debug.lifecycle] Activating ExternalReferenceManager@11
> Thread-0 [debug.lifecycle] Activating DBStoreAccessor@12
> Thread-0 [debug.lifecycle] Activating SmartPreparedStatementCache@13
> Thread-0 [debug.lifecycle.dump] DUMP SmartPreparedStatementCache@13
> AbstractPreparedStatementCache.connection =
> org.apache.derby.impl.jdbc.EmbedConnection40@358310166 (XID = 194),
> (SESSIONID = 5), (DATABASE = /Users/joel/jotter/cdo/cdodb1), (DRDAID =
> null) cache =
> org.eclipse.emf.cdo.server.internal.db.SmartPreparedStatemen tCache$Cache@2242f64e
>
> checkedOut =
> Thread-0 [debug.lifecycle.dump] DUMP DBStoreAccessor@12
> StoreAccessor.commitContexts = StoreAccessor.store = DBStore@5
> StoreAccessor.context = null
> StoreAccessor.reader = true
> connection = org.apache.derby.impl.jdbc.EmbedConnection40@358310166
> (XID = 194), (SESSIONID = 5), (DATABASE =
> /Users/joel/jotter/cdo/cdodb1), (DRDAID = null) statementCache =
> SmartPreparedStatementCache@13
> connectionKeepAliveTimer = java.util.Timer@5a388c74
>
> Thread-0 [debug.lifecycle] Deactivating DBStoreAccessor@12
> Thread-0 [debug.lifecycle] Deactivating SmartPreparedStatementCache@13
> Thread-0 [debug.lifecycle.dump] DUMP ExternalReferenceManager@11
> store = DBStore@5
> lastMappedId = 0
>
> Thread-0 [debug.lifecycle.dump] DUMP DBStore@5
> Store.revisionTemporality = AUDITING
> Store.revisionParallelism = NONE
> Store.repository = CDORepositoryInfo[repo1]
> creationTime = 1262033470600
> firstTime = true
> mappingStrategy = HorizontalAuditMappingStrategy@7
> dbSchema = repo1
> dbAdapter = derby-embedded-10.3.2.1
> dbConnectionProvider = org.apache.derby.jdbc.EmbeddedDataSource@2dabcea
> metaDataManager = MetaDataManager@6
> externalReferenceManager = ExternalReferenceManager@11
>
> Thread-0 [debug.lifecycle] Activating SessionManager@14
> [INFO] No user manager configured. Users will not be authenticated
> Thread-0 [debug.lifecycle.dump] DUMP SessionManager@14
> repository = CDORepositoryInfo[repo1]
> encryptionAlgorithmName = PBEWithMD5AndDES
> encryptionSaltBytes = [B@4f7f1d92
> encryptionIterationCount = 20
> tokenLength = 1024
> randomizer = null
> userManager = null
> sessions = lastSessionID = 0
>
> Thread-0 [debug.lifecycle] Activating CDORevisionManagerImpl@15
> Thread-0 [debug.lifecycle] Activating TwoLevelRevisionCache@16
> Thread-0 [debug.lifecycle] Activating LRURevisionCache@17
> Thread-0 [debug.lifecycle.dump] DUMP LRURevisionCache@17
> revisions = capacityCurrent = 1000
> capacityRevised = 1000
> currentLRU = LRU[size=0, capacity=1,000]
> revisedLRU = LRU[size=0, capacity=1,000]
>
> Thread-0 [debug.lifecycle] Activating MEMRevisionCache@18
> Thread-0 [debug.lifecycle.dump] DUMP MEMRevisionCache@18
> Worker.daemon = false
> Worker.activationTimeout = 10000
> Worker.deactivationTimeout = 10000
> ReferenceQueueWorker.queue = java.lang.ref.ReferenceQueue@54c707c1
> ReferenceQueueWorker.pollMillis = 60000
> ReferenceQueueWorker.maxWorkPerPoll = 100
> cacheLists = referenceType = SOFT
>
> Thread-0 [debug.lifecycle.dump] DUMP TwoLevelRevisionCache@16
> level1 = LRURevisionCache@17
> level2 = MEMRevisionCache@18
>
> Thread-0 [debug.lifecycle.dump] DUMP CDORevisionManagerImpl@15
> revisionLoader = CDORepositoryInfo[repo1]
> revisionLocker = null
> factory =
> org.eclipse.emf.cdo.common.revision.CDORevisionFactory$1@40b890dc
> cache = TwoLevelRevisionCache@16
>
> Thread-0 [debug.lifecycle] Activating QueryManager@19
> Thread-0 [debug.lifecycle.dump] DUMP QueryManager@19
> repository = CDORepositoryInfo[repo1]
> queryContexts = executors = null
> shutdownExecutorService = false
> nextQuery = 0
>
> Thread-0 [debug.lifecycle] Activating NotificationManager@20
> Thread-0 [debug.lifecycle.dump] DUMP NotificationManager@20
> repository = CDORepositoryInfo[repo1]
>
> Thread-0 [debug.lifecycle] Activating CommitManager@21
> Thread-0 [debug.lifecycle.dump] DUMP CommitManager@21
> repository = CDORepositoryInfo[repo1]
> shutdownExecutorService = false
>
> Thread-0 [debug.lifecycle] Activating LockManager@22
> Thread-0 [debug.lifecycle.dump] DUMP LockManager@22
> RWLockManager.writeLockStrategy =
> org.eclipse.net4j.util.concurrent.RWLockManager$1@4369a50b
> RWLockManager.readLockStrategy =
> org.eclipse.net4j.util.concurrent.RWLockManager$2@4cd297c0
> RWLockManager.lockEntries = RWLockManager.lockChanged =
> java.lang.Object@15e8e5a7
> repository = CDORepositoryInfo[repo1]
>
> Thread-0 [debug.lifecycle] Activating DBStoreAccessor@23
> Thread-0 [debug.lifecycle] Activating SmartPreparedStatementCache@24
> Thread-0 [debug.lifecycle.dump] DUMP SmartPreparedStatementCache@24
> AbstractPreparedStatementCache.connection =
> org.apache.derby.impl.jdbc.EmbedConnection40@253380575 (XID = 198),
> (SESSIONID = 7), (DATABASE = /Users/joel/jotter/cdo/cdodb1), (DRDAID =
> null) cache =
> org.eclipse.emf.cdo.server.internal.db.SmartPreparedStatemen tCache$Cache@6648938
>
> checkedOut =
> Thread-0 [debug.lifecycle.dump] DUMP DBStoreAccessor@23
> StoreAccessor.commitContexts = StoreAccessor.store = DBStore@5
> StoreAccessor.context = null
> StoreAccessor.reader = false
> connection = org.apache.derby.impl.jdbc.EmbedConnection40@253380575
> (XID = 198), (SESSIONID = 7), (DATABASE =
> /Users/joel/jotter/cdo/cdodb1), (DRDAID = null) statementCache =
> SmartPreparedStatementCache@24
> connectionKeepAliveTimer = java.util.Timer@326cbecf
>
> Thread-0 [debug] Writing package unit:
> CDOPackageUnit[id=http://www.eclipse.org/emf/2002/Ecore, state=LOADED,
> type=LEGACY, originalType=LEGACY, timeStamp=28-Dec-2009 20:51:10]
> Thread-0 [debug.sql] INSERT IGNORE INTO cdo_package_units VALUES (?, ?, ?, ?)
> Thread-0 [debug] Writing package info:
> CDOPackageInfo[packageURI=http://www.eclipse.org/emf/2002/Ecore,
> parentURI=null, metaIDRange=[MID1:MID420]]
> Thread-0 [debug.sql] INSERT IGNORE INTO cdo_package_infos VALUES (?, ?, ?, ?, ?)
> Thread-0 [debug] Writing package unit:
> CDOPackageUnit[id=http://www.eclipse.org/emf/CDO/Eresource/2.0.0,
> state=LOADED, type=NATIVE, originalType=NATIVE, timeStamp=28-Dec-2009
> 20:51:10]
> Thread-0 [debug.sql] INSERT IGNORE INTO cdo_package_units VALUES (?, ?, ?, ?)
> Thread-0 [debug] Writing package info:
> CDOPackageInfo[packageURI=http://www.eclipse.org/emf/CDO/Eresource/2.0.0,
> parentURI=null, metaIDRange=[MID421:MID455]]
> Thread-0 [debug.sql] INSERT IGNORE INTO cdo_package_infos VALUES (?, ?, ?, ?, ?)
> Thread-0 [debug.sql] CREATE TABLE CDOResourceFolder_nodes_list
> (cdo_source BIGINT, cdo_version INTEGER, cdo_idx INTEGER, cdo_value
> BIGINT)
> Thread-0 [debug.sql] CREATE UNIQUE INDEX
> CDOResourceFolder_nodes_list_idx0 ON CDOResourceFolder_nodes_list
> (cdo_source, cdo_version, cdo_idx)
> Thread-0 [debug.sql] CREATE TABLE CDOResource_contents_list
> (cdo_source BIGINT, cdo_version INTEGER, cdo_idx INTEGER, cdo_value
> BIGINT)
> Thread-0 [debug.sql] CREATE UNIQUE INDEX
> CDOResource_contents_list_idx0 ON CDOResource_contents_list
> (cdo_source, cdo_version, cdo_idx)
> Thread-0 [debug.sql] CREATE TABLE CDOResourceFolder (cdo_id BIGINT NOT
> NULL, cdo_version INTEGER NOT NULL, cdo_class BIGINT NOT NULL,
> cdo_created BIGINT NOT NULL, cdo_revised BIGINT NOT NULL, cdo_resource
> BIGINT NOT NULL, cdo_container BIGINT NOT NULL, cdo_feature INTEGER
> NOT NULL, folder BIGINT, name VARCHAR(32672))
> Thread-0 [debug.sql] CREATE UNIQUE INDEX CDOResourceFolder_idx0 ON
> CDOResourceFolder (cdo_id, cdo_version)
> Thread-0 [debug.sql] CREATE INDEX CDOResourceFolder_idx1 ON
> CDOResourceFolder (cdo_id, cdo_revised)
> Thread-0 [debug.sql] CREATE TABLE CDOResource (cdo_id BIGINT NOT NULL,
> cdo_version INTEGER NOT NULL, cdo_class BIGINT NOT NULL, cdo_created
> BIGINT NOT NULL, cdo_revised BIGINT NOT NULL, cdo_resource BIGINT NOT
> NULL, cdo_container BIGINT NOT NULL, cdo_feature INTEGER NOT NULL,
> folder BIGINT, name VARCHAR(32672))
> Thread-0 [debug.sql] CREATE UNIQUE INDEX CDOResource_idx0 ON
> CDOResource (cdo_id, cdo_version)
> Thread-0 [debug.sql] CREATE INDEX CDOResource_idx1 ON CDOResource
> (cdo_id, cdo_revised)
> Thread-0 [debug] --- DB COMMIT ---
> Thread-0 [debug.lifecycle] Deactivating DBStoreAccessor@23
> Thread-0 [debug.lifecycle] Deactivating SmartPreparedStatementCache@24
> Thread-0 [debug.lifecycle.dump] DUMP Default@25
> Repository.name = repo1
> Repository.store = DBStore@5
> Repository.uuid = null
> Repository.properties = revisedLRUCapacity=100
> supportingAudits=true
> currentLRUCapacity=10000
> verifyingRevisions=false
> Repository.supportingRevisionDeltas = false
> Repository.supportingAudits = true
> Repository.verifyingRevisions = false
> Repository.packageRegistry =
> http://www.eclipse.org/emf/2002/Ecore=org.eclipse.emf.ecore. impl.EcorePackageImpl@2d9b4fac
> (name: ecore) (nsURI: http://www.eclipse.org/emf/2002/Ecore, nsPrefix:
> ecore)
>
> http://www.eclipse.org/emf/CDO/Eresource/2.0.0=org.eclipse.e mf.cdo.eresource.impl.EresourcePackageImpl@2cfb1135
> (name: eresource) (nsURI:
> http://www.eclipse.org/emf/CDO/Eresource/2.0.0, nsPrefix: eresource)
> Repository.revisionManager = CDORevisionManagerImpl@15
> Repository.sessionManager = SessionManager@14
> Repository.queryManager = QueryManager@19
> Repository.notificationManager = NotificationManager@20
> Repository.commitManager = CommitManager@21
> Repository.lockManager = LockManager@22
> Repository.queryHandlerProvider = null
> Repository.readAccessHandlers = Repository.writeAccessHandlers =
> Thread-0 [debug.om] Starting bundle org.eclipse.emf.cdo.server.net4j
> [INFO] Net4j extension starting
> Thread-0 [debug] Configuring Net4j server from
> /Users/joel/configuration/cdo-server.xml
> Thread-0 [debug.lifecycle] Activating BufferPool[4,096]
> BufferPoolMonitor [debug.buffer] Start monitoring
> Thread-0 [debug.lifecycle.dump] DUMP BufferPool@26
> BufferProvider.bufferCapacity = 4096
> BufferProvider.providedBuffers = 0
> BufferProvider.retainedBuffers = 0
> provider = BufferFactory[4,096]
> pooledBuffers = 0
>
> Thread-0 [debug.lifecycle] Activating TCPSelector
> Thread-0 [debug.lifecycle.dump] DUMP TCPSelector@27
> selector = sun.nio.ch.KQueueSelectorImpl@28fe53cf
> clientOperations = serverOperations = thread =
> Thread[TCPSelector,5,main]
> running = true
>
> Thread-0 [debug.lifecycle] Activating TCPAcceptor[0.0.0.0:2,036]
> Thread-0 [debug] Ordering server operation REGISTER
> sun.nio.ch.ServerSocketChannelImpl[unbound]
> TCPSelector [debug] Executing server operation REGISTER
> sun.nio.ch.ServerSocketChannelImpl[unbound]
> TCPSelector [debug] Registering
> sun.nio.ch.ServerSocketChannelImpl[unbound]
> Thread-0 [debug.lifecycle.dump] DUMP TCPAcceptor@28
> Acceptor.config =
> TransportConfig[receiveExecutor=java.util.concurrent.ThreadPoolExecutor@7aa36771,
> bufferProvider=BufferPool[4,096],
> protocolProvider=org.eclipse.net4j.ContainerProtocolProvider $Server@7ddc6a9d,
> negotiator=null]
> Acceptor.connectorListener = org.eclipse.spi.net4j.Acceptor$1@11dba9f9
> Acceptor.acceptedConnectors = selector = TCPSelector
> startSynchronously = true
> synchronousStartTimeout = 20000
> serverSocketChannel = sun.nio.ch.ServerSocketChannelImpl[/0.0.0.0:2036]
> address = 0.0.0.0
> port = 2036
>
> [INFO] Net4j extension started
> [INFO] CDO server started
> Application Started: 8822
> TCPSelector [debug] Accepting
> sun.nio.ch.ServerSocketChannelImpl[/0.0.0.0:2036]
> TCPSelector [debug] Accepted socketChannel
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185]
> TCPSelector [debug.lifecycle] Activating
> TCPServerConnector[127.0.0.1:49,185]
> TCPSelector [debug.connector] Setting state CONNECTING (was
> disconnected) for TCPServerConnector[127.0.0.1:49,185]
> TCPSelector [debug.lifecycle] Activating Channel[Control, SERVER]
> TCPSelector [debug.lifecycle] Activating ChannelReceiveSerializer@29
> TCPSelector [debug.lifecycle.dump] DUMP ChannelReceiveSerializer@29
> Worker.daemon = false
> Worker.activationTimeout = 10000
> Worker.deactivationTimeout = 10000
> QueueWorker.queue = QueueWorker.pollMillis = 100
>
> TCPSelector [debug.lifecycle.dump] DUMP ControlChannel@30
> Channel.userID = null
> Channel.channelMultiplexer = TCPServerConnector[127.0.0.1:49,185]
> Channel.id = 0
> Channel.receiveExecutor =
> java.util.concurrent.ThreadPoolExecutor@7aa36771
> Channel.receiveHandler = null
> Channel.receiveSerializer = ChannelReceiveSerializer@29
> Channel.sendQueue = Channel.sentBuffers = 0
> Channel.receivedBuffers = 0
> acknowledgements = SynchronizingCorrelator{}
>
> TCPSelector [debug] Ordering server operation REGISTER
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185]
> TCPSelector [debug.lifecycle.dump] DUMP TCPServerConnector@31
> ChannelMultiplexer.config =
> TransportConfig[receiveExecutor=java.util.concurrent.ThreadPoolExecutor@7aa36771,
> bufferProvider=BufferPool[4,096],
> protocolProvider=org.eclipse.net4j.ContainerProtocolProvider $Server@7ddc6a9d,
> negotiator=null]
> ChannelMultiplexer.openChannelTimeout = -1
> Connector.userID = null
> Connector.connectorState = CONNECTING
> TCPConnector.socketChannel =
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185]
> TCPConnector.selector = TCPSelector
> TCPConnector.writeQueue = TCPConnector.inputBuffer = null
> TCPConnector.controlChannel = Channel[Control, SERVER]
> TCPConnector.host = null
> TCPConnector.port = 0
> acceptor = TCPAcceptor[0.0.0.0:2,036]
>
> TCPSelector [debug] Executing server operation REGISTER
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185]
> TCPSelector [debug] Registering
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185]
> TCPSelector [debug.connector] Setting state CONNECTED (was connecting)
> for TCPServerConnector[127.0.0.1:49,185]
> TCPSelector [debug.acceptor] Added connector
> TCPServerConnector[127.0.0.1:49,185]
> TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected
> local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer] Created Buffer@32[INITIAL]
> TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
> TCPSelector [debug.buffer] Read 8 bytes
> 02 00 01 00 03 63 64 6f TCPSelector [debug.lifecycle] Activating
> SignalProtocol[cdo]
> TCPSelector [debug.lifecycle.dump] DUMP CDOServerProtocol@33
> Protocol.type = cdo
> Protocol.executorService =
> java.util.concurrent.ThreadPoolExecutor@7aa36771
> Protocol.bufferProvider = Channel[-32,768, SERVER]
> Protocol.infraStructure = null
> Protocol.channel = Channel[-32,768, SERVER]
> Protocol.userID = null
> SignalProtocol.timeout = 10000
> SignalProtocol.streamWrapper = null
> SignalProtocol.failOverStrategy = null
> SignalProtocol.signals = SignalProtocol.nextCorrelationID = 1
> SignalProtocol.failingOver = false
> negotiationTimeout = 15000
> repositoryProvider =
> org.eclipse.emf.cdo.spi.server.PluginRepositoryProvider@559fe5e6
> packageURICompressor = DIRECT
>
> TCPSelector [debug.connector] Opening channel with protocol cdo
> TCPSelector [debug.lifecycle] Activating Channel[1, SERVER]
> TCPSelector [debug.lifecycle] Activating ChannelReceiveSerializer@34
> TCPSelector [debug.lifecycle.dump] DUMP ChannelReceiveSerializer@34
> Worker.daemon = false
> Worker.activationTimeout = 10000
> Worker.deactivationTimeout = 10000
> QueueWorker.queue = QueueWorker.pollMillis = 100
>
> TCPSelector [debug.lifecycle.dump] DUMP Channel@35
> userID = null
> channelMultiplexer = TCPServerConnector[127.0.0.1:49,185]
> id = 1
> receiveExecutor = java.util.concurrent.ThreadPoolExecutor@7aa36771
> receiveHandler = SignalProtocol[cdo]
> receiveSerializer = ChannelReceiveSerializer@34
> sendQueue = sentBuffers = 0
> receivedBuffers = 0
>
> TCPSelector [debug.buffer] Created Buffer@36[INITIAL]
> TCPSelector [debug.buffer] Obtained Buffer@36[INITIAL]
> TCPSelector [debug.channel] Handling buffer: Buffer@36[PUTTING] -->
> Channel[Control, SERVER]
> TCPSelector [debug] Ordering server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = true
> TCPSelector [debug.buffer] Retaining Buffer@32[RELEASED]
> TCPSelector [debug] Executing server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = true
> TCPSelector [debug] Setting interest READ|WRITE (was read)
> TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected
> local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer] Writing 4 bytes
> 03 00 01 01 TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
> TCPSelector [debug] Ordering server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = false
> TCPSelector [debug] Executing server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = false
> TCPSelector [debug] Setting interest READ (was read|write)
> TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected
> local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
> TCPSelector [debug.buffer] Read 16 bytes (EOS)
> 00 00 00 01 00 01 01 00 05 72 65 70 6f 31 00 01 TCPSelector
> [debug.channel] Handling buffer from multiplexer: Buffer@32[GETTING]
> --> Channel[1, SERVER]
> ReceiveSerializer-Channel[1, SERVER] [debug.signal] Received buffer
> for correlation 1
> ReceiveSerializer-Channel[1, SERVER] [debug.signal] Got signalID: 1
> Thread-10 [debug.signal] ================ Indicating:
> Signal[protocol=cdo, id=1, name=OpenSessionIndication, correlation=-1]
> Thread-10 [debug.buffer] Retaining Buffer@32[RELEASED]
> Thread-10 [debug.signal] ================ Responding:
> Signal[protocol=cdo, id=1, name=OpenSessionIndication, correlation=-1]
> Thread-10 [debug.session] Opening session 1
> Thread-10 [debug.lifecycle] Activating Session[1]
> Thread-10 [debug.lifecycle.dump] DUMP Session@37
> manager = SessionManager@14
> protocol = SignalProtocol[cdo]
> sessionID = 1
> userID = null
> passiveUpdateEnabled = true
> views = subscribed = false
>
> Thread-10 [debug.buffer] Obtained Buffer@36[INITIAL]
> Thread-10 [debug.channel] Handling buffer: Buffer@36[PUTTING] -->
> Channel[1, SERVER]
> Thread-10 [debug] Ordering server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = true
> TCPSelector [debug] Executing server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = true
> TCPSelector [debug] Setting interest READ|WRITE (was read)
> TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected
> local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer] Writing 234 bytes (EOS)
> 00 00 00 00 00 00 00 01 01 00 24 36 62 35 35 30 33 37 65 2d 39 66 64
> 64 2d 34 38 36 36 2d 61 37 36 63 2d 39 30 62 32 66 36 39 37 33 33 61
> 31 00 00 00 01 25 28 0e 7b 77 00 00 01 25 28 0e 7b 77 01 00 00 00 02
> 00 01 00 00 01 25 28 0e 7b 77 00 00 00 01 01 00 25 68 74 74 70 3a 2f
> 2f 77 77 77 2e 65 63 6c 69 70 73 65 2e 6f 72 67 2f 65 6d 66 2f 32 30
> 30 32 2f 45 63 6f 72 65 00 00 01 06 00 00 00 00 00 00 00 01 00 00 01
> 5b 00 00 00 00 01 25 28 0e 7b 77 00 00 00 01 01 00 2e 68 74 74 70 3a
> 2f 2f 77 77 77 2e 65 63 6c 69 70 73 65 2e 6f 72 67 2f 65 6d 66 2f 43
> 44 4f 2f 45 72 65 73 6f 75 72 63 65 2f 32 2e 30 2e 30 00 00 01 06 00
> 00 00 00 00 00 01 5a 00 00 00 23 00 00 01 25 28 0e 08 22 00 00 01 25
> 28 0e 08 58 TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
> TCPSelector [debug] Ordering server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = false
> TCPSelector [debug] Executing server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = false
> TCPSelector [debug] Setting interest READ (was read|write)
> TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected
> local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
> TCPSelector [debug.buffer] Read 8 bytes
> 02 00 02 00 03 63 64 6f TCPSelector [debug.lifecycle] Activating
> SignalProtocol[cdo]
> TCPSelector [debug.lifecycle.dump] DUMP CDOServerProtocol@38
> Protocol.type = cdo
> Protocol.executorService =
> java.util.concurrent.ThreadPoolExecutor@7aa36771
> Protocol.bufferProvider = Channel[-32,768, SERVER]
> Protocol.infraStructure = null
> Protocol.channel = Channel[-32,768, SERVER]
> Protocol.userID = null
> SignalProtocol.timeout = 10000
> SignalProtocol.streamWrapper = null
> SignalProtocol.failOverStrategy = null
> SignalProtocol.signals = SignalProtocol.nextCorrelationID = 1
> SignalProtocol.failingOver = false
> negotiationTimeout = 15000
> repositoryProvider =
> org.eclipse.emf.cdo.spi.server.PluginRepositoryProvider@559fe5e6
> packageURICompressor = DIRECT
>
> TCPSelector [debug.connector] Opening channel with protocol cdo
> TCPSelector [debug.lifecycle] Activating Channel[2, SERVER]
> TCPSelector [debug.lifecycle] Activating ChannelReceiveSerializer@39
> TCPSelector [debug.lifecycle.dump] DUMP ChannelReceiveSerializer@39
> Worker.daemon = false
> Worker.activationTimeout = 10000
> Worker.deactivationTimeout = 10000
> QueueWorker.queue = QueueWorker.pollMillis = 100
>
> TCPSelector [debug.lifecycle.dump] DUMP Channel@40
> userID = null
> channelMultiplexer = TCPServerConnector[127.0.0.1:49,185]
> id = 2
> receiveExecutor = java.util.concurrent.ThreadPoolExecutor@7aa36771
> receiveHandler = SignalProtocol[cdo]
> receiveSerializer = ChannelReceiveSerializer@39
> sendQueue = sentBuffers = 0
> receivedBuffers = 0
>
> TCPSelector [debug.buffer] Obtained Buffer@36[INITIAL]
> TCPSelector [debug.channel] Handling buffer: Buffer@36[PUTTING] -->
> Channel[Control, SERVER]
> TCPSelector [debug] Ordering server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = true
> TCPSelector [debug.buffer] Retaining Buffer@32[RELEASED]
> TCPSelector [debug] Executing server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = true
> TCPSelector [debug] Setting interest READ|WRITE (was read)
> TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected
> local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer] Writing 4 bytes
> 03 00 02 01 TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
> TCPSelector [debug] Ordering server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = false
> TCPSelector [debug] Executing server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = false
> TCPSelector [debug] Setting interest READ (was read|write)
> TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected
> local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
> TCPSelector [debug.buffer] Read 16 bytes (EOS)
> 00 00 00 01 00 01 01 00 05 72 65 70 6f 31 00 01 TCPSelector
> [debug.channel] Handling buffer from multiplexer: Buffer@32[GETTING]
> --> Channel[2, SERVER]
> ReceiveSerializer-Channel[2, SERVER] [debug.signal] Received buffer
> for correlation 1
> ReceiveSerializer-Channel[2, SERVER] [debug.signal] Got signalID: 1
> Thread-11 [debug.signal] ================ Indicating:
> Signal[protocol=cdo, id=1, name=OpenSessionIndication, correlation=-1]
> Thread-11 [debug.buffer] Retaining Buffer@32[RELEASED]
> Thread-11 [debug.signal] ================ Responding:
> Signal[protocol=cdo, id=1, name=OpenSessionIndication, correlation=-1]
> Thread-11 [debug.session] Opening session 2
> Thread-11 [debug.lifecycle] Activating Session[2]
> Thread-11 [debug.lifecycle.dump] DUMP Session@41
> manager = SessionManager@14
> protocol = SignalProtocol[cdo]
> sessionID = 2
> userID = null
> passiveUpdateEnabled = true
> views = subscribed = false
>
> Thread-11 [debug.buffer] Obtained Buffer@36[INITIAL]
> Thread-11 [debug.channel] Handling buffer: Buffer@36[PUTTING] -->
> Channel[2, SERVER]
> Thread-11 [debug] Ordering server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = true
> TCPSelector [debug] Executing server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = true
> TCPSelector [debug] Setting interest READ|WRITE (was read)
> TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected
> local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer] Writing 234 bytes (EOS)
> 00 00 00 00 00 00 00 02 01 00 24 36 62 35 35 30 33 37 65 2d 39 66 64
> 64 2d 34 38 36 36 2d 61 37 36 63 2d 39 30 62 32 66 36 39 37 33 33 61
> 31 00 00 00 01 25 28 0e 7b 77 00 00 01 25 28 0e 7b 77 01 00 00 00 02
> 00 01 00 00 01 25 28 0e 7b 77 00 00 00 01 01 00 25 68 74 74 70 3a 2f
> 2f 77 77 77 2e 65 63 6c 69 70 73 65 2e 6f 72 67 2f 65 6d 66 2f 32 30
> 30 32 2f 45 63 6f 72 65 00 00 01 06 00 00 00 00 00 00 00 01 00 00 01
> 5b 00 00 00 00 01 25 28 0e 7b 77 00 00 00 01 01 00 2e 68 74 74 70 3a
> 2f 2f 77 77 77 2e 65 63 6c 69 70 73 65 2e 6f 72 67 2f 65 6d 66 2f 43
> 44 4f 2f 45 72 65 73 6f 75 72 63 65 2f 32 2e 30 2e 30 00 00 01 06 00
> 00 00 00 00 00 01 5a 00 00 00 23 00 00 01 25 28 10 2d 59 00 00 01 25
> 28 10 2d 61 TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
> TCPSelector [debug] Ordering server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = false
> TCPSelector [debug] Executing server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = false
> TCPSelector [debug] Setting interest READ (was read|write)
>
>
> osgi>
> osgi>
> osgi> TCPSelector [debug] Reading
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer] Obtained Buffer@32[INITIAL]
> TCPSelector [debug.buffer] Read 8 bytes
> 02 00 03 00 03 63 64 6f TCPSelector [debug.lifecycle] Activating
> SignalProtocol[cdo]
> TCPSelector [debug.lifecycle.dump] DUMP CDOServerProtocol@42
> Protocol.type = cdo
> Protocol.executorService =
> java.util.concurrent.ThreadPoolExecutor@7aa36771
> Protocol.bufferProvider = Channel[-32,768, SERVER]
> Protocol.infraStructure = null
> Protocol.channel = Channel[-32,768, SERVER]
> Protocol.userID = null
> SignalProtocol.timeout = 10000
> SignalProtocol.streamWrapper = null
> SignalProtocol.failOverStrategy = null
> SignalProtocol.signals = SignalProtocol.nextCorrelationID = 1
> SignalProtocol.failingOver = false
> negotiationTimeout = 15000
> repositoryProvider =
> org.eclipse.emf.cdo.spi.server.PluginRepositoryProvider@559fe5e6
> packageURICompressor = DIRECT
>
> TCPSelector [debug.connector] Opening channel with protocol cdo
> TCPSelector [debug.lifecycle] Activating Channel[3, SERVER]
> TCPSelector [debug.lifecycle] Activating ChannelReceiveSerializer@43
> TCPSelector [debug.lifecycle.dump] DUMP ChannelReceiveSerializer@43
> Worker.daemon = false
> Worker.activationTimeout = 10000
> Worker.deactivationTimeout = 10000
> QueueWorker.queue = QueueWorker.pollMillis = 100
>
> TCPSelector [debug.lifecycle.dump] DUMP Channel@44
> userID = null
> channelMultiplexer = TCPServerConnector[127.0.0.1:49,185]
> id = 3
> receiveExecutor = java.util.concurrent.ThreadPoolExecutor@7aa36771
> receiveHandler = SignalProtocol[cdo]
> receiveSerializer = ChannelReceiveSerializer@43
> sendQueue = sentBuffers = 0
> receivedBuffers = 0
>
> TCPSelector [debug.buffer] Obtained Buffer@36[INITIAL]
> TCPSelector [debug.channel] Handling buffer: Buffer@36[PUTTING] -->
> Channel[Control, SERVER]
> TCPSelector [debug] Ordering server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = true
> TCPSelector [debug.buffer] Retaining Buffer@32[RELEASED]
> TCPSelector [debug] Executing server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = true
> TCPSelector [debug] Setting interest READ|WRITE (was read)
> TCPSelector [debug] Writing java.nio.channels.SocketChannel[connected
> local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer] Writing 4 bytes
> 03 00 03 01 TCPSelector [debug.buffer] Retaining Buffer@36[RELEASED]
> TCPSelector [debug] Ordering server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = false
> TCPSelector [debug] Executing server operation INTEREST WRITE
> java.nio.channels.SocketChannel[connected local=/127.0.0.1:2036
> remote=/127.0.0.1:49185] = false
> TCPSelector [debug] Setting interest READ (was read|write)
> TCPSelector [debug] Reading java.nio.channels.SocketChannel[connected
> local=/127.0.0.1:2036 remote=/127.0.0.1:49185]
> TCPSelector [debug.buffer
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Generating editors for CDO [message #505282 is a reply to message #505281] |
Tue, 29 December 2009 04:46 |
|
This is with StringCompressor.BYPASS=true
Eike Stepper wrote on Tue, 29 December 2009 04:38 | Joel Rosi-Schwartz schrieb:
> Hmm... not sure about that yet
>
> I have my workspace set up with the latest source from HEAD and my TP
> is as described in the source set up wiki. Everything build just fine.
> When I start up the CDO server all goes well, find trace below. When I
> try to connect with the CDO Session view I get this exception. So all
> is not well ;-(
>
> What now? Any ideas?
Can you try to set StringCompressor.BYPASS to true for testing?
Cheers
/Eike
|
|
|
|
Re: Generating editors for CDO [message #505283 is a reply to message #505282] |
Tue, 29 December 2009 05:16 |
|
Joel Rosi-Schwartz schrieb:
> This is with StringCompressor.BYPASS=true :(
And the referencing plugins are all compiled after that? Hardly
believable ;-(
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
>
>
> Eike Stepper wrote on Tue, 29 December 2009 04:38
>> Joel Rosi-Schwartz schrieb:
>> > Hmm... not sure about that yet ;)
>> >
>> > I have my workspace set up with the latest source from HEAD and my TP
>> > is as described in the source set up wiki. Everything build just fine.
>> > When I start up the CDO server all goes well, find trace below. When I
>> > try to connect with the CDO Session view I get this exception. So all
>> > is not well ;-(
>> >
>> > What now? Any ideas?
>>
>> Can you try to set StringCompressor.BYPASS to true for testing?
>>
>> Cheers
>> /Eike
>
>
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Generating editors for CDO [message #505288 is a reply to message #505283] |
Tue, 29 December 2009 10:29 |
|
So it seems. Unfortunately Barbara's (my wife) computer went dead yesterday, so I am going to be running to Apple to get it looked at. I will double check this all later today and get back.
Cheers,
Joel
Eike Stepper wrote on Tue, 29 December 2009 05:16 | Joel Rosi-Schwartz schrieb:
> This is with StringCompressor.BYPASS=true
And the referencing plugins are all compiled after that? Hardly
believable ;-(
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
>
>
> Eike Stepper wrote on Tue, 29 December 2009 04:38
>> Joel Rosi-Schwartz schrieb:
>> > Hmm... not sure about that yet
>> >
>> > I have my workspace set up with the latest source from HEAD and my TP
>> > is as described in the source set up wiki. Everything build just fine.
>> > When I start up the CDO server all goes well, find trace below. When I
>> > try to connect with the CDO Session view I get this exception. So all
>> > is not well ;-(
>> >
>> > What now? Any ideas?
>>
>> Can you try to set StringCompressor.BYPASS to true for testing?
>>
>> Cheers
>> /Eike
>
>
|
|
|
|
Re: Generating editors for CDO (Minimalistic tutorial to the cdo- and net4j-defs) [message #505488 is a reply to message #505070] |
Thu, 31 December 2009 10:14 |
Victor Roldan Betancort Messages: 524 Registered: July 2009 |
Senior Member |
|
|
Hi guys,
apologies for the delayed answer, took a short break.
>>> Now I am wondering what to do with these beasts. While the test do not
>>> demonstrate it, I gather these could be read in programmatically to
>>> create a CDO Transaction object or whatever was defined. But my goal
>>> was to use this in conjunction with the Enhanced Generated Editors. It
>>> was my impression from newsgroup/forum/bugzilla that the defs could be
>>> used to open models from the server from the Navigator. I ran across
>>> the "CDO Resource Launcher" (now defunct) that I gathered the defs
>>> replaced. What I am missing now is:
>>>
>>> 1. How to create a model instance and have it show up in the Navigator
>>> 2. How to use the def to open that model in the editor
>>>
>>> Perhaps I been reading too much between the lines, but I keep on
>>> running into comments that allude to this being possible.
This was the original use case for the "CDO Resource Launcher". My
initial contribution contained a simple model with a few parameters, one
of which was the editor ID, which take into consideration the usage of
CDO-ready tree editors. The thing is that the current approach provides
a way more flexible set of models to define your "defaults", and its
still possible to launch CDOEditors, as the model defined at
org.eclipse.emf.cdo.ui.defs takes this into consideration. Just some UI
support is needed.
So in regard to your questions:
1. How to create a model instance and have it show up in the Navigator
Does not EMF generate a convenient instantiation wizard for these
models? This requirements should be already fulfilled with EMF UI
generation niceties. Go and generate defs.ui.edit and defs.ui.ui (an
unfortunate plug-in will be generated), and you are done :)
2. How to use the def to open that model in the editor
Is just a matter of creating a convenient action contribution it the
defs.ui framework, and should be rather easy using extension points. You
are welcome to open an enhancement request :)
HTH,
Víctor.
|
|
|
Re: Generating editors for CDO (Minimalistic tutorial to the cdo- and net4j-defs) [message #505494 is a reply to message #505488] |
Thu, 31 December 2009 11:23 |
|
Hi Victor,
A welcome well earned break for sure and I hope it was fun
Thanks for explanation. As I mentioned my wife's computer went dead and will be out for two weeks, so we are hobbling through the holidays on a single machine I will try this out as soon as I can, but it will probably be Monday before I can.
A very happy (and safe) New Years to you and yours!
In fact, a great (and safe) New Years to all the intrepid souls still reading the forums today
All the best,
Joel
Victor Roldan Betancort wrote on Thu, 31 December 2009 10:14 | Hi guys,
apologies for the delayed answer, took a short break.
>>> Now I am wondering what to do with these beasts. While the test do not
>>> demonstrate it, I gather these could be read in programmatically to
>>> create a CDO Transaction object or whatever was defined. But my goal
>>> was to use this in conjunction with the Enhanced Generated Editors. It
>>> was my impression from newsgroup/forum/bugzilla that the defs could be
>>> used to open models from the server from the Navigator. I ran across
>>> the "CDO Resource Launcher" (now defunct) that I gathered the defs
>>> replaced. What I am missing now is:
>>>
>>> 1. How to create a model instance and have it show up in the Navigator
>>> 2. How to use the def to open that model in the editor
>>>
>>> Perhaps I been reading too much between the lines, but I keep on
>>> running into comments that allude to this being possible.
This was the original use case for the "CDO Resource Launcher". My
initial contribution contained a simple model with a few parameters, one
of which was the editor ID, which take into consideration the usage of
CDO-ready tree editors. The thing is that the current approach provides
a way more flexible set of models to define your "defaults", and its
still possible to launch CDOEditors, as the model defined at
org.eclipse.emf.cdo.ui.defs takes this into consideration. Just some UI
support is needed.
So in regard to your questions:
1. How to create a model instance and have it show up in the Navigator
Does not EMF generate a convenient instantiation wizard for these
models? This requirements should be already fulfilled with EMF UI
generation niceties. Go and generate defs.ui.edit and defs.ui.ui (an
unfortunate plug-in will be generated), and you are done
2. How to use the def to open that model in the editor
Is just a matter of creating a convenient action contribution it the
defs.ui framework, and should be rather easy using extension points. You
are welcome to open an enhancement request
HTH,
Víctor.
|
[Updated on: Thu, 31 December 2009 11:24] Report message to a moderator
|
|
|
Re: Generating editors for CDO (Minimalistic tutorial to the cdo- and net4j-defs) [message #505499 is a reply to message #505494] |
Thu, 31 December 2009 07:04 |
Victor Roldan Betancort Messages: 524 Registered: July 2009 |
Senior Member |
|
|
Hi Joel,
no prob, we can come back to the topic as soon as you are ready for the
battle again ;) thanks for your invaluable feedback :D
Wish you are wonderful new year as well!
All the best,
Víctor.
Joel Rosi-Schwartz escribió:
> Hi Victor,
>
> A welcome well earned break for sure and I hope it was fun :)
> Thanks for explanation. As I mentioned my wife's computer went dead and
> will be out for two weeks, so we are hobbling through the holidays on a
> single machine :( I will try this out as soon as I can, but it will
> probably be Monday before I can.
>
> A very happy (and safe) New Years to you and yours!
>
> In fact, a great (and safe) New Years to all the intrepid souls still
> reading the forums today ;)
>
> All the best,
> Joel
>
>
> Victor Roldan Betancort wrote on Thu, 31 December 2009 10:14
>> Hi guys,
>>
>> apologies for the delayed answer, took a short break.
>>
>>
>> >>> Now I am wondering what to do with these beasts. While the test do
>> not
>> >>> demonstrate it, I gather these could be read in programmatically to
>> >>> create a CDO Transaction object or whatever was defined. But my goal
>> >>> was to use this in conjunction with the Enhanced Generated
>> Editors. It
>> >>> was my impression from newsgroup/forum/bugzilla that the defs
>> could be
>> >>> used to open models from the server from the Navigator. I ran across
>> >>> the "CDO Resource Launcher" (now defunct) that I gathered the defs
>> >>> replaced. What I am missing now is:
>> >>>
>> >>> 1. How to create a model instance and have it show up in the
>> Navigator
>> >>> 2. How to use the def to open that model in the editor
>> >>>
>> >>> Perhaps I been reading too much between the lines, but I keep on
>> >>> running into comments that allude to this being possible.
>>
>> This was the original use case for the "CDO Resource Launcher". My
>> initial contribution contained a simple model with a few parameters,
>> one of which was the editor ID, which take into consideration the
>> usage of CDO-ready tree editors. The thing is that the current
>> approach provides a way more flexible set of models to define your
>> "defaults", and its still possible to launch CDOEditors, as the model
>> defined at org.eclipse.emf.cdo.ui.defs takes this into consideration.
>> Just some UI support is needed.
>>
>> So in regard to your questions:
>>
>> 1. How to create a model instance and have it show up in the Navigator
>>
>> Does not EMF generate a convenient instantiation wizard for these
>> models? This requirements should be already fulfilled with EMF UI
>> generation niceties. Go and generate defs.ui.edit and defs.ui.ui (an
>> unfortunate plug-in will be generated), and you are done :)
>>
>> 2. How to use the def to open that model in the editor
>>
>> Is just a matter of creating a convenient action contribution it the
>> defs.ui framework, and should be rather easy using extension points.
>> You are welcome to open an enhancement request :)
>>
>> HTH,
>> Víctor.
>
>
|
|
|
Re: Generating editors for CDO [message #505587 is a reply to message #505499] |
Sat, 02 January 2010 15:12 |
|
Hello all,
I was finally able to get back to this today and I think I have made great progress in understanding the issues that have been causing me grief.
First the background so that the context is clear.
- my Eclipse installation is based on Helios M4 and has EMF 2.6 and CDO 3.0.0.v200912280403 added
- my Target Platform (TP) is separate, but it contains the same basic components minus the CDO Update. It is the based on Eike's Wiki page on how to set up a CDO source workspace
- my Workspace (WS) contains CDO 3.0 HEAD and the model I am developing
What I finally worked out today is that if I start the CDO server from my WS that it naturally uses the WS local plug-ins to launch itself; these are all based on HEAD. Then when I open the CDO View, or for that matter the CDO Team Provider, it is all based on the plug-ins in my Eclipse installation which do not quite match the server; i.e. the Server is at HEAD and the views are at v200912280403. Alas this does not appear to mix well.
Towards verifying this hypothesis today (from my WS) I launched a new Eclipse application which is based on my TP and all the plug-ins (CDO Head) in my WS. I also launched the the CDO Server from my Eclipse WS. From the newly launched Eclipse application I opened a CDO View and I created a project that I shared via the CDO Team provider. Everything worked like a charm
Eike I think that this is why when I set StringCompressor.BYPASS=true we did not see the desired results; only the Server half of the formula saw the setting change.
Now the BIG : Why is CDO being so sensitive and fragil to such slight version differences. Unless I really have the wrong end of the stick, a CDO environment at the infrastructural level surely has to be able to cope with having the Server and its various clients interoperable at the Major version level.
I really hope that this helps in elucidating the issue.
Cheers,
Joel
|
|
|
Re: Generating editors for CDO [message #505593 is a reply to message #504445] |
Sat, 02 January 2010 16:15 |
|
Hi Victor,
I guess I am being particularly obtuse on this
On your first point, yes EMF does generate a "convenient instantiation wizard", but it is a file based resource. What is needed (I think) a modified wizard that understands CDO. Further, what do you mean by "Go and generate defs.ui.edit and defs.ui.ui"? I do not see the work flow here at all.
Of course you are right, once the I get my head around the first part, launching is just mechanics as long as I have the "Editor def" selectable in the navigator view.
Cheers,
Joel
Victor Roldan Betancort wrote on Thu, 31 December 2009 10:14 |
This was the original use case for the "CDO Resource Launcher". My
initial contribution contained a simple model with a few parameters, one
of which was the editor ID, which take into consideration the usage of
CDO-ready tree editors. The thing is that the current approach provides
a way more flexible set of models to define your "defaults", and its
still possible to launch CDOEditors, as the model defined at
org.eclipse.emf.cdo.ui.defs takes this into consideration. Just some UI
support is needed.
So in regard to your questions:
1. How to create a model instance and have it show up in the Navigator
Does not EMF generate a convenient instantiation wizard for these
models? This requirements should be already fulfilled with EMF UI
generation niceties. Go and generate defs.ui.edit and defs.ui.ui (an
unfortunate plug-in will be generated), and you are done
2. How to use the def to open that model in the editor
Is just a matter of creating a convenient action contribution it the
defs.ui framework, and should be rather easy using extension points. You
are welcome to open an enhancement request
HTH,
Víctor.
|
[Updated on: Sat, 02 January 2010 16:17] Report message to a moderator
|
|
|
Re: Generating editors for CDO [message #505667 is a reply to message #505593] |
Mon, 04 January 2010 10:31 |
Victor Roldan Betancort Messages: 524 Registered: July 2009 |
Senior Member |
|
|
Hi Joel,
hope you had a good 2010 start :)
> On your first point, yes EMF does generate a "convenient instantiation
> wizard", but it is a file based resource. What is needed (I think) a
> modified wizard that understands CDO.
So my guess on your needs is that you would like to see a wizard that
asks for the configuration of the definition (i.e, having a wizard page
with a form asking for parameters like "hostname", "port", "protocol",
"resource path", "editor id"...) instead of just a model file being
generated and filled afterwards through the generated model editor. Is
this right?
> Further, what do you mean by "Go
> and generate defs.ui.edit and defs.ui.ui"? I do not see the work flow
> here at all.
Well, to obtain the wizard and the editor, you need to generate the
..editor project for your model, and the generator .editor relies on
EMF's Editing Framework, so you will need to generate the .edit project
as well. Anyways, from your description above I understand that it would
be not enough for a user friendly environment.
> Of course your right, once the I get my head around the first part,
> launching is just mechanics as long as I have the "Editor def"
> selectable in the navigator view.
Ok, so I guess here we agree on the requirements: once we have the
models defined through convenient friendly UI, the user might launch the
definition using right click -> launch CDO editor, or something similar.
---------------
If you think I've understood properly requirements, then its time for
raising an enhancement request :)
For the sake creating nice looking UI forms, It would be interesting to
give it a chance to the EEF framework. Eike and I showed interest I
build convenient UI aid for the CDO framework using this promising
project. It would probably be of interest for the ORMF project as well :P
Some links:
http://www.eclipse.org/proposals/eef/
http://wiki.eclipse.org/EEF
http://www.slideshare.net/glefur/eef-you-want-sexy-propertie s
I think EEF would perfectly fill the gap by providing convient SWT/JFace
widgets to:
- Add a nice form page to the Def instantiation wizard.
- Create form-based Def editors.
My only concern on your requirements is that the Definition framework is
composed by several models. A minimal launch configuration may be
composed by several model instances:
- org.eclipse.emf.cdo.defs
- org.eclipse.emf.cdo.ui.defs
- org.eclipse.net4j.defs
- org.eclipse.net4j.util.defs ¿?
and ideally the user would like to see one single resource file. How
should we tackle this? André, Eike, comments?
One option would be to add several root objects to the
org.eclipse.emf.cdo.ui.defs resource file ...
Cheers,
Víctor.
Joel Rosi-Schwartz escribió:
> Hi Victor,
>
> I guess I am being particularly obtuse on this :(
>
> On your first point, yes EMF does generate a "convenient instantiation
> wizard", but it is a file based resource. What is needed (I think) a
> modified wizard that understands CDO. Further, what do you mean by "Go
> and generate defs.ui.edit and defs.ui.ui"? I do not see the work flow
> here at all.
>
> Of course your right, once the I get my head around the first part,
> launching is just mechanics as long as I have the "Editor def"
> selectable in the navigator view.
>
> Cheers,
> Joel
>
> Victor Roldan Betancort wrote on Thu, 31 December 2009 10:14
>> This was the original use case for the "CDO Resource Launcher". My
>> initial contribution contained a simple model with a few parameters,
>> one of which was the editor ID, which take into consideration the
>> usage of CDO-ready tree editors. The thing is that the current
>> approach provides a way more flexible set of models to define your
>> "defaults", and its still possible to launch CDOEditors, as the model
>> defined at org.eclipse.emf.cdo.ui.defs takes this into consideration.
>> Just some UI support is needed.
>>
>> So in regard to your questions:
>>
>> 1. How to create a model instance and have it show up in the Navigator
>>
>> Does not EMF generate a convenient instantiation wizard for these
>> models? This requirements should be already fulfilled with EMF UI
>> generation niceties. Go and generate defs.ui.edit and defs.ui.ui (an
>> unfortunate plug-in will be generated), and you are done :)
>>
>> 2. How to use the def to open that model in the editor
>>
>> Is just a matter of creating a convenient action contribution it the
>> defs.ui framework, and should be rather easy using extension points.
>> You are welcome to open an enhancement request :)
>>
>> HTH,
>> Víctor.
>
>
>
|
|
|
Re: Generating editors for CDO [message #505689 is a reply to message #505587] |
Mon, 04 January 2010 14:10 |
|
Joel Rosi-Schwartz schrieb:
> Hello all,
>
> I was finally able to get back to this today and I think I have made
> great progress in understanding the issues that have been causing me
> grief.
>
> First the background so that the context is clear.
> my Eclipse installation is based on Helios M4 and has EMF 2.6 and CDO
> 3.0.0.v200912280403 added
> my Target Platform (TP) is separate, but it contains the same basic
> components minus the CDO Update. It is the based on Eike's Wiki page
> on how to set up a CDO source workspace
> my Workspace (WS) contains CDO 3.0 HEAD and the model I am developing
>
> What I finally worked out today is that if I start the CDO server from
> my WS that it naturally uses the WS local plug-ins to launch itself;
> these are all based on HEAD. Then when I open the CDO View, or for
> that matter the CDO Team Provider, it is all based on the plug-ins in
> my Eclipse installation which do not quite match the server; i.e. the
> Server is at HEAD and the views are at v200912280403. Alas this does
> not appear to mix well.
>
> Towards verifying this hypothesis today (from my WS) I launched a new
> Eclipse application which is based on my TP and all the plug-ins (CDO
> Head) in my WS. I also launched the the CDO Server from my Eclipse WS.
> From the newly launched Eclipse application I opened a CDO View and I
> created a project that I shared via the CDO Team provider. Everything
> worked like a charm :d
>
> Eike I think that this is why when I set StringCompressor.BYPASS=true
> we did not see the desired results; only the Server half of the
> formula saw the setting change.
>
> Now the BIG :?: : Why is CDO being so sensitive and fragil to such
> slight version differences. Unless I really have the wrong end of the
> stick, a CDO environment at the infrastructural level surely has to be
> able to cope with having the Server and its various clients
> interoperable at the Major version level.
The purpose of HEAD is the addition of new functionality, including
breaking changes. There is generally no guarantee that any two different
checkouts/builds are compatible with each other. It's always best to set
up an environment with all nodes being deployed with the exact same
version.
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
>
> I really hope that this helps in elucidating the issue.
>
> Cheers,
> Joel
>
>
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: Generating editors for CDO [message #505899 is a reply to message #505689] |
Tue, 05 January 2010 14:27 |
|
Hi Eike,
Fair enough and totally understandable.
Cheers,
Joel
Eike Stepper wrote on Mon, 04 January 2010 14:10 |
> Now the BIG : Why is CDO being so sensitive and fragil to such
> slight version differences. Unless I really have the wrong end of the
> stick, a CDO environment at the infrastructural level surely has to be
> able to cope with having the Server and its various clients
> interoperable at the Major version level.
The purpose of HEAD is the addition of new functionality, including
breaking changes. There is generally no guarantee that any two different
checkouts/builds are compatible with each other. It's always best to set
up an environment with all nodes being deployed with the exact same
version.
Cheers
/Eike
----
http://thegordian.blogspot.com
http://twitter.com/eikestepper
>
> I really hope that this helps in elucidating the issue.
>
> Cheers,
> Joel
>
>
|
|
|
|
Re: Generating editors for CDO [message #505914 is a reply to message #505667] |
Tue, 05 January 2010 14:57 |
|
Hi Victor, you too
Victor Roldan Betancort wrote on Mon, 04 January 2010 10:31 | Hi Joel,
hope you had a good 2010 start
|
Yes that would be very reasonable solution.
I must add, however, that this is really no longer a requirement that is very important to me. I have moved passed this point in my explorations of CDO and have progressed far enough to begin designing the actual UI for ORMF.
From my experience, though, I do think though that it would be very helpful to folks getting started with CDO. You are so close to having an easy "press the button" and run your model inside CDO sample app, it is a shame not to finish the job.
Quote: |
> On your first point, yes EMF does generate a "convenient instantiation
> wizard", but it is a file based resource. What is needed (I think) a
> modified wizard that understands CDO.
So my guess on your needs is that you would like to see a wizard that
asks for the configuration of the definition (i.e, having a wizard page
with a form asking for parameters like "hostname", "port", "protocol",
"resource path", "editor id"...) instead of just a model file being
generated and filled afterwards through the generated model editor. Is
this right?
|
Yup
Quote: |
[snip x snip]
Ok, so I guess here we agree on the requirements: once we have the
models defined through convenient friendly UI, the user might launch the
definition using right click -> launch CDO editor, or something similar.
---------------
If you think I've understood properly requirements, then its time for
raising an enhancement request
|
I will take a look, thanks.
Quote: |
For the sake creating nice looking UI forms, It would be interesting to
give it a chance to the EEF framework. Eike and I showed interest I
build convenient UI aid for the CDO framework using this promising
project. It would probably be of interest for the ORMF project as well
Some links:
http://www.eclipse.org/proposals/eef/
http://wiki.eclipse.org/EEF
http://www.slideshare.net/glefur/eef-you-want-sexy-propertie s
I think EEF would perfectly fill the gap by providing convient SWT/JFace
widgets to:
- Add a nice form page to the Def instantiation wizard.
- Create form-based Def editors.
My only concern on your requirements is that the Definition framework is
composed by several models. A minimal launch configuration may be
composed by several model instances:
- org.eclipse.emf.cdo.defs
- org.eclipse.emf.cdo.ui.defs
- org.eclipse.net4j.defs
- org.eclipse.net4j.util.defs ¿?
and ideally the user would like to see one single resource file. How
should we tackle this? André, Eike, comments?
One option would be to add several root objects to the
org.eclipse.emf.cdo.ui.defs resource file ...
Cheers,
Víctor.
|
|
|
|
Goto Forum:
Current Time: Tue Sep 24 02:08:33 GMT 2024
Powered by FUDForum. Page generated in 0.09630 seconds
|