Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF "Technology" (Ecore Tools, EMFatic, etc)  » [EMFStore][Edapt] Meta Model evolution
[EMFStore][Edapt] Meta Model evolution [message #1726949] Thu, 17 March 2016 16:20 Go to next message
Phil Wim is currently offline Phil WimFriend
Messages: 88
Registered: October 2013
Member
Hi there,

I want to use an edapt history model within emfstore. Can somebody explain me the actual process to do meta model evolution within emfstore?

Lets say my simple model has a first edapt release with operation "create class". I'm naming it teacher and store it to emfstore.

Then I create a new edapt release where I rename the class teacher to student with "rename" operation supplied by operation browser.

I release it add a new version number to the namespace and generate model and edit code.

Then I want to read my model from emfstore (with help of ecp browser; local emfstore). Obviously the modelcode doesn't fit to the instance anymore - Teacher is missing.

I get many exceptions that the prior namespace couldn't be found. (Caused by: org.eclipse.emf.ecore.xmi.PackageNotFoundException: Package with uri 'http://emfstore/model' not found. (emfstore://serverspaces/default/projects/_yFZtoOxZEeWnXrPCz5jUJA/projectstates/1, 3, 86))

Of course the ns has changed to http://emfstore/model/2

At the end I see a another exception regarding wrong determination of model version: !MESSAGE org.eclipse.emf.emfstore.internal.server.exceptions.InvalidVersionSpecException: Couldn't determine next version in history.

Is this related to edapt?

Thanks in advance
Philippe
Re: [EMFStore][Edapt] Meta Model evolution [message #1727046 is a reply to message #1726949] Fri, 18 March 2016 12:46 Go to previous messageGo to next message
Johannes Faltermeier is currently offline Johannes FaltermeierFriend
Messages: 76
Registered: December 2013
Member

Hi Phil,

when EMFStore migrated there was no Edapt 1.0 release in sight. So we dropped the support for the edapt migration with 1.x.
Currently we are in process of reviving the Edapt Support as part of a sponsored development contract. This will have the following limitations:
- Migration will be possible on server-side only
- Checking out older versions of the metamodel will only be possible for versions, where the full projectstate was persisted. (There will be a configuration option allowing to save projectstates for all tagged versions.)
- Operations will be migrated in a way that they can be loaded, so that the history view data will still be valuable.

Kind regards
Johannes


Johannes Faltermeier

Get professional Eclipse developer support:
http://eclipsesource.com/en/services/developer-support/
Re: [EMFStore][Edapt] Meta Model evolution [message #1727062 is a reply to message #1727046] Fri, 18 March 2016 14:13 Go to previous messageGo to next message
Phil Wim is currently offline Phil WimFriend
Messages: 88
Registered: October 2013
Member
Johannes,

thanks for your reply.

Does it mean, that migration is just possible with remote projects?

When will it be available?

Lookin forward testing it! Smile

Phil
Re: [EMFStore][Edapt] Meta Model evolution [message #1780260 is a reply to message #1726949] Fri, 19 January 2018 11:40 Go to previous messageGo to next message
Florian Fußeder is currently offline Florian FußederFriend
Messages: 3
Registered: January 2018
Junior Member
Hey Johannes,

just found this thread and wondering if there is an update on this matter?

We want to use Edapt with EMFStore but get the same errors as mentioned by Phil. Any suggestions?

Thanks,
Florian
Re: [EMFStore][Edapt] Meta Model evolution [message #1780484 is a reply to message #1780260] Tue, 23 January 2018 08:22 Go to previous message
Johannes Faltermeier is currently offline Johannes FaltermeierFriend
Messages: 76
Registered: December 2013
Member

Hi,

this was introduced with EMFStore 1.8 and requires Edapt 1.2 or higher.
In order to trigger a migration on server side, there is a special VM argument. Add the emfstore.migration=true VM argument to your server launch configuration. With this option the server will start in a migration mode, meaning that it will check if a migration is required, perform the migration, and stopping itself right after the migration was performed. Then you may start it regularly again.

Enabling the full project state persistence when a version is tagged, can be done via an extension point on server side:
<extension
         point="org.eclipse.emf.emfstore.server.resourceOptions">
      <resourceOptions
            saveProjectStateOnTag="true">
      </resourceOptions>
   </extension>


For client side migration we suggest a process which notifiers users to commit pending changes, then migrate the server and roll out clients with the new model, where users will start with fresh checkout.

Cheers
Johannes


Johannes Faltermeier

Get professional Eclipse developer support:
http://eclipsesource.com/en/services/developer-support/

[Updated on: Tue, 23 January 2018 08:23]

Report message to a moderator

Previous Topic:Using EMF Resource to iterate over contents of model file
Next Topic:EMFStore produce deployable WAR-File with Tycho
Goto Forum:
  


Current Time: Fri Apr 27 08:26:33 GMT 2018

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

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