1
votes

I have been trying to upgrade Liferay 5.2 to 6.2. I’ve successfully upgraded to 6.0.6 without any issues - guided by this steps in this blog http://itsliferay.blogspot.com/2012/06/upgrade-database-from-liferay-52-sp-3.html

However, during upgrade to 6.1 (using the same blog as guidance) - while tomcat server running the upgrade process, I got the following error:

com.liferay.portal.kernel.events.ActionException: com.liferay.portal.verify.VerifyException: com.liferay.portal.verify.VerifyException: com.liferay.portlet.documentlibrary.NoSuchFileException: C:\barterfli\liferay_6.1.2\data\document_library\10112\128975\23\00\23005.afsh\23005_1.0.afsh
com.liferay.portal.kernel.events.ActionException: com.liferay.portal.verify.VerifyException: com.liferay.portal.verify.VerifyException: com.liferay.portlet.documentlibrary.NoSuchFileException: C:\barterfli\liferay_6.1.2\data\document_library\10112\128975\23\00\23005.afsh\23005_1.0.afsh
    at com.liferay.portal.events.StartupAction.run(StartupAction.java:56)
    at com.liferay.portal.servlet.MainServlet.processStartupEvents(MainServlet.java:1300)
    at com.liferay.portal.servlet.MainServlet.init(MainServlet.java:214)
    at javax.servlet.GenericServlet.init(GenericServlet.java:160)
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1088)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5123)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5407)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:657)
    at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1636)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

My portal-ext.properties:

jdbc.default.jndi.name=jdbc/lportal
image.hook.impl=com.liferay.portal.image.FileSystemHook 
dl.hook.impl=com.liferay.documentlibrary.util.AdvancedFileSystemHook
dl.store.impl=com.liferay.portlet.documentlibrary.store.AdvancedFileSystemStore
users.screen.name.allow.numeric=true

**

*note: for document library hook, I’ve migrated to AdvancedFileSystemHook during the upgrade to 6.0

**

At first I realize that I missed the property called dl.hook.file.system in portal-ext.properties which need to be pointed to the old document library path. So, I re-do the whole process again – Re-import 6.0 db, change the portal-ext.properties and then let tomcat server run the upgrade process again.

Still the same error.

My new portal-ext.properties:

jdbc.default.jndi.name=jdbc/lportal
image.hook.impl=com.liferay.portal.image.FileSystemHook 
dl.hook.impl=com.liferay.documentlibrary.util.AdvancedFileSystemHook
dl.store.impl=com.liferay.portlet.documentlibrary.store.AdvancedFileSystemStore
dl.hook.file.system.root.dir=C:/barterfli/liferay/bundles/liferay-portal-6.0.6/data/document_library
users.screen.name.allow.numeric=true

I check inside the document library folder of the files that stated not found in the exception, and those files mentioned are not there.

From Liferay forum, I found this: https://www.liferay.com/community/forums/-/message_boards/message/14519864

Tried as suggestion - applied changes to the file but the issue still persist.

I’m stuck, and I need help.

Thanks.

1

1 Answers

0
votes

I'm seeing one problem that you mention: "During the update to 6.0 I migrated from FileSystemHook to AdvancedFileSystemHook. The problem might be that you can't "just" update the hook and expect the data to be there:

FileSystemHook (FSH) and AdvancedFileSystemHook (AFSH) both write their data to the data/document_library folder, FSH in a single subdirectory, AFSH in a directory hierarchy (thus it can handle a lot more files).

When you just change the hook implementation, AFSH will miss the files it expects - they'll most likely be where FSH has written them to.

In general, it's better to use AFSH, but I'd separate that migration from the actual upgrades. If you're lucky, changing the hooks implementation back to FSH will be enough. If not, restore your backup and run the upgrade again, this time without updating the DL-storage