Showing posts with label liferay migration. Show all posts
Showing posts with label liferay migration. Show all posts

Thursday, February 5, 2015

Liferay 6.2 - Post-Migration issues

Liferay 6.2 - issues, which may occur after Liferay migration (from 5.x, 6.x to 6.2)


1. Document Library links issue.

After migration to 6.2 download links to DL documents may be broken (even if those document are displayed in DL portlet, and there are appropriate files in data/document_library folder).

This issue and it's fix described here: DL broken link issue


2. Dockbar issue - Add, Edit buttons do not work.

Description:

For some communities in Liferay 6.2  'Add', 'Edit' buttons in dockbar may display empty content. So, it's not possible to add portlet on page or modify page settings.

There can be also such error in browser:

Chrome: Uncaught TypeError: Cannot read property 'ancestor' of null
Firefox: TypeError: a.one(...) is null

There is also similar LPS issue: https://issues.liferay.com/browse/LPS-38040

Fix:

At first sight, it seems to be a JS error.
But the issue may be in DB corrupted data. 

1) Check groupId for current community,  and get creatorUserId for that group_; 
2) Check if such user exists;
3) If there is no such user, change creatorUserId for that group_ for existing user (e.g. admin);
4) Clean DB cache;
5) Check if issue resolved;
6) Check if there are other communities with corrupted data:

SELECT creatorUserId, groupId, friendlyURL from group_ WHERE creatorUserId not in (SELECT userId from user_);
7) If there are such records - change creatorUserId for them also.


Friday, January 17, 2014

Liferay Migration form 5.2.3 to 6.2


Liferay Migration from 5.2.3. to 6.2




Step 1. Liferay Migration to 6.0.6


1. Create 5.2.3 DB dump (db.sql).

2. Create database for LR 6.0.6 (db606).

3. Load 5.2.3 dump into 6.0.6 database:

mysql -uroot -p1 db606 < db.sql;

Delete all database views (if any).

4. Unzip clean Liferay 6.0.6.
5. Delete all folders from 'webapps' (except 'ROOT' and 'tunnel-web'); delete jre from tomcat folder.

6. Copy 'data' folder from Liferay 5.2.3 to Liferay 6.0.6.

7. Startup Liferay 6.0.6 (with default Hypersonic database settings).

8. Shutdown Liferay 6.0.6.

9. Create portal-ext.properties file:

jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysql://localhost:3306/db606?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=root
jdbc.default.password=1

permissions.user.check.algorithm=5
image.hook.impl=com.liferay.portal.image.DatabaseHook


10. Startup Liferay 6.0.6. Wait until Liferay's upgrade process has upgraded database to 6.0.6.

11. Check if there is no " ' " symbol in resourcecode.name DB field.
Go to Control Panel → Server Administration → Data Migration. Click 'Execute' under 'Convert legacy permission algorithm'.

12. Once permission algorithm is upgraded, remove permissions.user.check.algorithm property
from portal-ext.properties file and restart server.

13. Go to Control Panel → Server Administration → Data Migration. Select 'FileSystemHook' inside Migrate images section, and click 'Execute' button.

14. Change image.hook.impl to com.liferay.portal.image.FileSystemHook in portal-ext.properties file and restart server.


Step 2. Liferay  Migration to 6.2.


1. Create 6.1 DB dump (db61.sql).

2. Create database for LR 6.2 (db62).

3. Load 6.1 dump into 6.2 database:
mysql -uroot -p1 db62 < db61.sql;

Check if there is no " ' " symbol in organization_.name DB field.

4. Unzip clean Liferay 6.2.

5. Startup Liferay 6.2 (with default Hypersonic database settings).

6. Shutdown Liferay 6.2.

7. Copy 'data' folder from Liferay 6.1 to Liferay 6.2.

8. Modify portal-setup-wizard.properties file, add db configuration:

jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysql://localhost:3306/db62?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=root
jdbc.default.password=1

passwords.encryption.algorithm.legacy=SHA

#For Themes:
theme.css.fast.load=false
theme.images.fast.load=false
javascript.fast.load=true
javascript.log.enabled=false
layout.template.cache.enabled=false
combo.check.timestamp=true
freemarker.engine.cache.storage=soft:1
freemarker.engine.modification.check.interval=0
velocity.engine.resource.manager.cache.enabled=false
com.liferay.portal.servlet.filters.cache.CacheFilter=false
velocity.engine.resource.modification.check.interval=0
com.liferay.portal.servlet.filters.minifier.MinifierFilter=false
setup.wizard.enabled=false

velocity.engine.restricted.classes=
velocity.engine.restricted.variables=
freemarker.engine.restricted.classes=

freemarker.engine.restricted.variables=


9. Startup Liferay 6.2. Wait until Liferay's upgrade process has upgraded database to 6.2.


Step 3. Portlets and Themes Migration.



3.1. Migrate portlets from 5.2.3 to 6.2 version.

3.2. Migrate themes from 5.2.3 to 6.2 version. Make sure, that themeId is the same in 5.2.3 and 6.2 versions, otherwise themes will be not applied for pages.


P.S. Post-Migration issues.

Issues, which may occur after migration described here: Post-migration issues