You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexey Goncharuk (JIRA)" <ji...@apache.org> on 2018/08/14 15:42:00 UTC

[jira] [Created] (IGNITE-9269) Stall optimistic transactions reads if there is a candidate for PREPARED transaction

Alexey Goncharuk created IGNITE-9269:
----------------------------------------

             Summary: Stall optimistic transactions reads if there is a candidate for PREPARED transaction
                 Key: IGNITE-9269
                 URL: https://issues.apache.org/jira/browse/IGNITE-9269
             Project: Ignite
          Issue Type: Improvement
          Components: general
            Reporter: Alexey Goncharuk


This is an idea that needs confirmation and accurate benchmarking.

Currently, when a read is performed inside an optimistic serializable transaction, we capture the value and entry version immediately regardless of the pending transactional locks for the read entry.
If there is a write candidate on the entry, this scenario will very likely result in optimistic write conflict exception. If a read observes a single (or several?) write candidates on the entry, we may stall the read until the pending prepared transaction is committed and proceed with the read only later. This is a speculative optimization, but it may reduce the chance of getting optimistic write conflict exception.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)