ignite-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From vkulichenko <valentin.kuliche...@gmail.com>
Subject Re: transaction not timing out
Date Wed, 27 Jul 2016 23:58:47 GMT
Hi Binti,

bintisepaha wrote
> I do not understand why commit() is unable to finish. In an
> optimistic/serializable transaction, it should not even reach the commit
> phase using the 2 phase protocol. If the txn reached he commit() phase and
> then it was successful in acquiring all the locks it needs and it should
> not stall.

I'm not sure why the hang itself happens in your case but can you clarify
what you mean by "it should not even reach the commit phase using the 2
phase protocol"? Commit phase is the second one, that's when actual updates
happen, including CacheStore updates. You will very likely reach this phase
and any exceptions after can lead to inconsistent data, that's why Ignite
avoids them.

bintisepaha wrote
> Another related question, is it not recommended to start an ignite
> transaction from the client? what happens if the client crashes in the
> middle of the transaction? With pessimistic txn on client side, and if I
> kill the client in the middle of the txn, those keys that it had locks on
> are never released. now that same entry n cache cannot be updated by any
> process. how do I get out of such a situation.

This is the most common use case. If a node (can be either client or server,
doesn't matter) that executes the transaction fails, all locks acquired by
this transaction are released. If you observe different behavior, please
provide the reproducer.


View this message in context: http://apache-ignite-users.70518.x6.nabble.com/transaction-not-timing-out-tp5540p6574.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

View raw message