You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Pavel Kovalenko (Jira)" <ji...@apache.org> on 2019/10/23 12:45:00 UTC
[jira] [Created] (IGNITE-12325) GridCacheMapEntry reservation
mechanism is broken with enabled cache store
Pavel Kovalenko created IGNITE-12325:
----------------------------------------
Summary: GridCacheMapEntry reservation mechanism is broken with enabled cache store
Key: IGNITE-12325
URL: https://issues.apache.org/jira/browse/IGNITE-12325
Project: Ignite
Issue Type: Bug
Components: cache
Affects Versions: 2.8
Reporter: Pavel Kovalenko
Fix For: 2.8
Entry deferred deletion was disabled after https://issues.apache.org/jira/browse/IGNITE-11704 in transactional caches. However, if cache store is enabled there is a race with cache entry reservation after transactional remove and clear reservation after cache load:
{noformat}
java.lang.AssertionError: GridDhtCacheEntry [rdrs=ReaderId[] [ReaderId [nodeId=96c87c98-2524-4f9e-8a2f-6cfceda00005, msgId=22663371, txFut=null], ReaderId [nodeId=68130805-0dc8-4ef4-abf7-7e7cde800006, msgId=22663375, txFut=null], ReaderId [nodeId=b4a8abce-8d0e-4459-b93a-a734ad600004, msgId=22663370, txFut=null]], part=8, super=GridDistributedCacheEntry [super=GridCacheMapEntry [key=KeyCacheObjectImpl [part=8, val=8, hasValBytes=true], val=null, ver=GridCacheVersion [topVer=0, order=0, nodeOrder=0], hash=8, extras=null, flags=2]]]
at org.apache.ignite.internal.processors.cache.GridCacheMapEntry.clearReserveForLoad(GridCacheMapEntry.java:3616)
at org.apache.ignite.internal.processors.cache.GridCacheAdapter.clearReservationsIfNeeded(GridCacheAdapter.java:2429)
at org.apache.ignite.internal.processors.cache.GridCacheAdapter.access$400(GridCacheAdapter.java:179)
at org.apache.ignite.internal.processors.cache.GridCacheAdapter$18.call(GridCacheAdapter.java:2309)
at org.apache.ignite.internal.processors.cache.GridCacheAdapter$18.call(GridCacheAdapter.java:2217)
at org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6963)
at org.apache.ignite.internal.processors.closure.GridClosureProcessor$2.body(GridClosureProcessor.java:967)
at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:120)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1135)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:844)
{noformat}
The issue can be resolved with enabled deferred delete if cache store is enabled.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)