Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-82509

Unable to find class when serialized objects are transfered between nodes with different versions even if class is compatible



      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:

      1. Start a node with an specific version for com.liferay.portal.scheduler.quartz
      2. 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


          Issue Links



              • Votes:
                0 Vote for this issue
                4 Start watching this issue


                • Created:
                  Days since last comment:
                  50 weeks, 6 days ago