Hi Mikhail, Thank you for your response.
1) From my testing, a ScanQuery of 1 million entries in an explicit transaction (with PESSIMISTIC, SERIALIZABLE) took 10 minutes single-threaded, whereas implicit transaction took 1 minute with the same environment and single-threaded. If we assume that implicit transaction works the same implementation-wise as the ATOMIC mode, implicit should be much faster as noted in the Ignite documentation as well. Unfortunately, there seems to be very little documentation on how the implicit transaction works. What is its TransactionConcurrency and TransactionIsolation modes? 2) I think by the definition of how explicit transaction should work, entry-level locking is unlikely for explicit transaction (perhaps it's only for atomic-mode or implicit?). Explicit transaction groups multiple cache operations and since we also make it PESSIMISTIC and SERIALIZABLE, it seems highly likely to lock on a larger granularity than an entry to prevent other operations from accessing or writing to any of those caches we operate on. I presume the locking behavior and granularity would change based on the transaction, TransactionConcurrency, and TransactionIsolation. Do you know how the locking schema changes based on each of the choices for the modes? I don't think there's any documentation available. Here is a portion of the stacktrace which may or may not be useful. Caused by: class org.apache.ignite.transactions.TransactionTimeoutException: Failed to acquire lock within provided timeout for transaction [timeout=60000, tx=GridNearTxLocal[xid=a7a36ec5861-00000000-097d-8e11-0000-000000000001, xidVersion=GridCacheVersion [topVer=159223313, order=1547746818682, nodeOrder=1], concurrency=PESSIMISTIC, isolation=SERIALIZABLE, state=ACTIVE, invalidate=false, rollbackOnly=false, nodeId=78a6e3af-19e6-4b62-831e-fd27f1478afb, timeout=60000, duration=61497]] at org.apache.ignite.internal.util.IgniteUtils$13.apply(IgniteUtils.java:899) at org.apache.ignite.internal.util.IgniteUtils$13.apply(IgniteUtils.java:894) ... 27 more -- Sent from: http://apache-ignite-users.70518.x6.nabble.com/