On Wed, Aug 5, 2015 at 11:32 AM, vincent(a)massol.net <vincent(a)massol.net>
wrote:
Hi Marc,
On 4 Aug 2015 at 11:51:56, Marc Sladek (marc.sladek(a)synventis.com(mailto:
marc.sladek(a)synventis.com)) wrote:
Hi XWiki devs
I'd like to propose the following enhancement for the XWiki Migration
Manager. This is the follow up proposal to this discussion
.
The current idea is to merge the concepts of the Extension Manager and
Migration Manager. Extensions should be able to provide individual data
migrations to add the possibility of altering data relevant to this
extension. These should be executed after installation or upgrade of an
extension.
Currently, the Migration Manager (still residing in the oldcore) does
not support external migrations and only a version number for XWiki
migrations is stored in the database. It has to be refactored (to it's
own module?) and requires the functionality to store multiple version
numbers with specific identifiers in the database for versioning
migrations for individual extensions.
We at the celements team have
an interest in this functionality and are willing to carry and implement
it.
If you agree with the basic idea, I will start a design proposal
document with more detailed information and possible challenges on
http://design.xwiki.org
WDYT?
This is a good idea and it goes in the right direction of making
everything possible inside an extension.
So I’m definitely +1 for the general idea.
Yes I agree that it would be nice to have the Migration Manager in its own
module.
+1 for you to start a design page and to discuss it on this list.
It’s great that you guys are willing to spend time implementing this!
Way to go!
Thanks
-Vincent
Hi Marc,
Very great to see that you are investing time in this. I have myself worked
on the migration manager in the past with the same final goal in mind, but
I lack the time to go further in that direction. If I can be of any help,
please let me know, and I will do my best to support your work on this
module.
As of now, I'd like you to be aware of existing issue in the migration
process that may be potentially increase by your plans, please have a look
at XWIKI-9041 and related issues. To summarize, the main cause behind those
issues are the monolithic and imperfect schema migration done by hibernate
based on included hbm.
Regarding testing of migrations, I have also develop a helpful script
available at
https://github.com/xwiki/xwiki-dev-tools/tree/master/xwiki-xwikitest-script,
that allow quick testing of different configuration, and repeatable
testing. Obviously, it needs to be supported by a well configured VM
containing the different databases setup to be fully functional.
I hope this help, and that you will be able to find so clever solutions and
I am eager to review your design document.
Thanks,
--
Denis Gervalle
SOFTEC sa - CEO