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/

Reply via email to