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

Unexpected exception before cache initiated on second cluster node

    Details

      Description

      Steps to Reproduce (Based off of Test Case 8a from Test Plan):

      1. Configure two nodes as a cluster with the following properties
        cluster.link.enabled=true
        [same database] 
        ehcache.replicator.properties.test.cache=replicatePutsViaCopy=true
        

      Note: Servers should be started fresh

      1. Start node1 and wait for startup
      2. Start node2 and wait for startup
      3. Login to node2 to confirm it is started
      4. Login to node1
      5. On node1, deploy and start com.liferay.cluster.test.module.7.2.jar
      6. On node1, go to Control Panel->Configuration->Server Administration->Script
      7. Run groovy-script-portal-cache-put-modules.groovy
      8. Check Liferay logs for node2

      Expected Result:
      No exception is thrown. Second node cache should not be initiated.

      Actual Result:
      Exception thrown:

           [exec] 2019-03-04 20:51:51.458 ERROR [liferay/cache_replication-8][SerializableObjectWrapper:83] Unable to deserialize object
           [exec] java.lang.ClassNotFoundException: com.liferay.cluster.test.module.internel.ClusterTestClass
           [exec] 	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
           [exec] 	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
           [exec] 	at com.liferay.portal.module.framework.ModuleFrameworkClassLoader.loadClass(ModuleFrameworkClassLoader.java:98)
           [exec] 	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
           [exec] 	at org.eclipse.osgi.internal.framework.ContextFinder.loadClass(ContextFinder.java:132)
           [exec] 	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
           [exec] 	at java.lang.Class.forName0(Native Method)
           [exec] 	at java.lang.Class.forName(Class.java:348)
           [exec] 	at com.liferay.petra.lang.ClassResolverUtil.resolve(ClassResolverUtil.java:29)
           [exec] 	at com.liferay.portal.kernel.io.ProtectedAnnotatedObjectInputStream.doResolveClass(ProtectedAnnotatedObjectInputStream.java:46)
           [exec] 	at com.liferay.portal.kernel.io.ProtectedObjectInputStream.resolveClass(ProtectedObjectInputStream.java:65)
           [exec] 	at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1819)
           [exec] 	at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1713)
           [exec] 	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1986)
           [exec] 	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1535)
           [exec] 	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:422)
           [exec] 	at com.liferay.portal.kernel.io.Deserializer.readObject(Deserializer.java:157)
           [exec] 	at com.liferay.portal.cache.io.SerializableObjectWrapper.readObject(SerializableObjectWrapper.java:80)
           [exec] 	at sun.reflect.GeneratedMethodAccessor279.invoke(Unknown Source)
           [exec] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
           [exec] 	at java.lang.reflect.Method.invoke(Method.java:498)
           [exec] 	at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1058)
           [exec] 	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2122)
           [exec] 	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2013)
           [exec] 	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1535)
           [exec] 	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2231)
           [exec] 	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2155)
           [exec] 	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2013)
           [exec] 	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1535)
           [exec] 	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:422)
           [exec] 	at com.liferay.util.SerializableUtil.deserialize(SerializableUtil.java:58)
           [exec] 	at com.liferay.portal.cache.multiple.internal.cluster.link.messaging.ClusterLinkPortalCacheClusterListener.doReceive(ClusterLinkPortalCacheClusterListener.java:50)
           [exec] 	at com.liferay.portal.kernel.messaging.BaseMessageListener.receive(BaseMessageListener.java:26)
           [exec] 	at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:74)
           [exec] 	at com.liferay.portal.kernel.messaging.ParallelDestination$1.run(ParallelDestination.java:52)
           [exec] 	at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:752)
           [exec] 	at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:664)
           [exec] 	at java.lang.Thread.run(Thread.java:745)
      

        Attachments

          Activity

            People

            Assignee:
            victor.ware Victor Ware
            Reporter:
            victor.ware Victor Ware
            Participants of an Issue:
            Recent user:
            Yunlin "Steven" Sun
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:
              Days since last comment:
              2 years, 21 weeks ago

                Packages

                Version Package
                7.1.10 DXP FP18
                7.1.10.5 SP5
                7.1.X
                7.2.1 CE GA2
                7.2.X
                7.3.10 DXP GA1
                Master