Details
-
Bug
-
Status: Closed
-
Resolution: Fixed
-
6.2.0 CE B2
-
6.1.x, 6.0.x
-
Committed
-
10
-
Regression Bug
Description
Steps to reproduce:
1. Set up two bundles.
2. In both bundles:
Add the following properties to the portal-ext.properties:
cluster.link.enabled=true ehcache.cluster.link.replication.enabled=true
Add "replicatePutsViaCopy=true" under "defaultCache" section in liferay-multi-vm-clustered.xml (turn others to true also).
<defaultCache
eternal="false"
maxElementsInMemory="10000"
overflowToDisk="false"
timeToIdleSeconds="600"
>
<cacheEventListenerFactory
class="com.liferay.portal.cache.ehcache.LiferayCacheEventListenerFactory"
properties="replicatePutsViaCopy=true,replicatePuts=true,replicateUpdatesViaCopy=true"
propertySeparator=","
/>
<bootstrapCacheLoaderFactory class="com.liferay.portal.cache.ehcache.LiferayBootstrapCacheLoaderFactory" />
</defaultCache>
3. Deploy ehcache-cluster-web plugins in both bundles.
4. Start up bundles in sequence.
5. On one bundle site, go to control panel -> server administration -> script.
Choose language as Groovy, put script as:
com.liferay.portal.kernel.cache.PortalCache pc = com.liferay.portal.kernel.cache.MultiVMPoolUtil.getCache("testCacheId"); pc.put("one", "ONE"); pc.put("two", "TWO"); pc.put("three", "THREE");
then hit "Execute" button.
Error Message:
com.liferay.portal.kernel.messaging.MessageListenerException: net.sf.ehcache.CacheException: You have configured the cache with a replication scheme that cannot properly support CAS operation guarantees. at com.liferay.portal.kernel.messaging.BaseMessageListener.receive(BaseMessageListener.java:32) at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:72) at com.liferay.portal.kernel.messaging.ParallelDestination$1.run(ParallelDestination.java:69) at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:682) at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:593) at java.lang.Thread.run(Thread.java:724)
Expected result:
No error will be seen in the whole process.
Actual result:
The Error Message was thrown in console.
Attachments
Issue Links
- causes
-
LPS-43796 OAuth Portlet should serialize its token cache if deployed in clustered environment
- Closed
- Discovered while testing
-
LPS-39656 java.lang.reflect.InvocationTargetException and java.lang.NullPointerException are thrown when replicateputsViaCopy=true
- Closed
- is caused by
-
LPS-36175 Upgrade Ehcache to 2.7.1
-
- Closed
-
- relates
-
LPE-9510 Errors when replicating "put" operations using Cluster Link
-
- Closed
-