cancel
Showing results for 
Search instead for 
Did you mean: 

Migrating from Enterprise Edition (5.1.1.4) to Community Edition

psrun
Champ on-the-rise
Champ on-the-rise

Hi,

We wish to migrate from Enterprise Edition to Community Edition. The Enterprise source version is 5.1.1.4. We choosed the latest 5.1.x Community Edition that is 5.1.g as the target version. We followed the following Alfresco rule : to migrate from M.m.p version of Enterprise Edition, chose the latest M.m.x version of Community Edition (x=g that is the most recent letter in the version, if M.m=5.1). But we meet some problems with alfresco 5.1.g WAR :

- it embeds many 5.2.a jars

- the displayed version is 5.2.0 instead of 5.1.g

So this is my question : is 5.1.g the right version for our migration ?

If so, why 5.1.g alfresco war embeds 5.2.a jars ? Is it normal ? Which are the risks ?

if not, which target version should we take ? Should we migrate from 5.1.1.4 to 5.1.f or 5.1.e instead ?

Thank you in advance for your help.

Best regards

1 ACCEPTED ANSWER

afaust
Legendary Innovator
Legendary Innovator

5.1.g is a bit of a problematic version as to how it relates to GA/EA releases, since some of the artifacts on artifacts.alfresco.com include some early-access (EA) 5.2 libraries. As far as I am aware, the "dirty parts" affect the Repository+Share Services WAR (org.alfresco:alfresco:war:5.1.g) which contains 5.2.a libraries since it originates from 201606 EA. Only by doing a manual install using 5.1.g for Repository from 201605 GA and 5.1.g from 201606 EA for Share will you get a clean, correct setup.

I would typically pick the next major version up when moving to Community Edition. 5.1.g is a lower / less advanced version than 5.1.1.4, meaning that 5.1.1.4 could have already introduced minor schema changes that may not be compatible with 5.1.g. If 5.2 were used, it should detect that the previous 5.1.1.4 is of a lower version and check which changes need to be made to the schema to upgrade to 5.2 proper., potentially leaving out patches that have already run as part of the 5.1.1.4 Enterprise version.

NOTE: This reply was updated to correct some mistaken statements - original reply:

5.1.g (I believe it was 201605 GA) was a bit of a dirty release, since some of the download bundles included some early-access (EA) 5.2 libraries. As far as I am aware, the "dirty parts" affect primarily the Share user interface. Only by doing a manual install using 5.1.g for Repository from 201605 and 5.1.f from 201604 for Share will you get a clean, correct setup (there is no 5.1.g for Share).

 

I would typically pick the next major version up when moving to Community Edition. 5.1.g is a lower / less advanced version than 5.1.1.4, meaning that 5.1.1.4 could have already introduced minor schema changes that may not be compatible with 5.1.g. If 5.2 were used, it should detect that the previous 5.1.1.4 is of a lower version and check which changes need to be made to the schema to upgrade to 5.2 proper., potentially leaving out patches that have already run as part of the 5.1.1.4 Enterprise version.

View answer in original post

11 REPLIES 11

afaust
Legendary Innovator
Legendary Innovator

Do not replace the dependencies individually. Simply use the Alfresco 5.1.g WAR from https://artifacts.alfresco.com (these are even linked to on the 201605 GA file list page). Of course this effectively constitutes a downgrade which Alfresco does not support in terms of schema validation. So you would have to recreate your database.

As to "Why was the original alfresco-5.1.g.war artefact built with 5.2.a dependencies?" - The answer is: It wasn't. The 5.1.g WAR was built only with 5.1.g dependencies. What you downloaded / used was a bundle / installer that included a 5.2.a WAR for Alfresco Repository and a 5.1.g WAR for Alfresco Share - likely from the 201606-EA release.

The primary thing that is incorrectly done by Alfresco is the publication of the Alfresco Repository WAR from the 201606 EA release as a org.alfresco:alfresco:war:5.1.g artifact. Since separating out the platform (aka Repository) from Share they have implicitly redefined what the artifact org.alfresco:alfresco:war stands for - it no longer is the pure Repository WAR, but a WAR that includes the Share Services module for a specific Share version, and the version label reflects the Share version, not the Repository version.

The correct Maven artifact to use for a clean Alfresco Repository WAR is org.alfresco:alfresco-platform:war. You can use that to then install the Share Services module for 5.1.g and have a clean 5.1.g-only Repository that can support Share 5.1.g.

I believe there already was a JIRA ticket about this to avoid similar confusion in future release versions, but for some reason I cannot find it at the moment.

psrun
Champ on-the-rise
Champ on-the-rise

Thank you.

It is very clear. We downloaded and integrated alfresco-platform.war. As you said, the dependencies are correct now. We are testing. After the tests, if everything is fine, I will mark this problem as solved.