-
Type:
Bug
-
Status: Closed
-
Resolution: Fixed
-
Affects Version/s: 7.0.X, Master
-
Fix Version/s: 7.0.0 DXP FP59, 7.0.0 DXP SP9, 7.0.X, 7.1.X, Master
-
Branch Version/s:7.1.x, 7.0.x
-
Backported to Branch:Committed
-
Story Points:1
-
Fix Priority:3
-
Git Pull Request:
Our ClassLoaderPool takes into account the version of the module to save and retrieve classloaders. When a module contains a class that's going to be serialized/deserialized and its version is different between nodes there is no way to find in the pool the correct classloader, hence neither the class.
Steps to Reproduce:
- Start a node with an specific version for com.liferay.portal.scheduler.quartz
- Start a node with a different version for com.liferay.portal.scheduler.quartz with no need to have changes in QuartzTrigger class.
Expected Results:
No exception should be thrown
Actual Results:
An exception similar to the following appears in the logs:
2018-06-14 14:59:59.515 WARN [Incoming-2,liferay-channel-control,malvaro-ThinkPad-T450s-53405][JGroupsReceiver:79] Unable to deserialize message payload
java.lang.ClassNotFoundException: Unable to load class com.liferay.portal.scheduler.quartz.internal.QuartzTrigger
- causes
-
LPS-88431 WARNING throws during restart after reverting FP
- Closed
- is duplicated by
-
LPS-87902 Cluster server is unable to restart after reverting FP
- Closed
- is related to
-
LPS-72911 In case of having a tomcat cluster with session replication, java.lang.ClassNotFoundException is thrown during session replication of classes that are loaded by a OSGI classloader
- Closed