You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Swapnil Bawaskar (JIRA)" <ji...@apache.org> on 2016/07/27 05:48:20 UTC

[jira] [Created] (GEODE-1702) Release transaction lock before calling AsyncEventListener

Swapnil Bawaskar created GEODE-1702:
---------------------------------------

             Summary: Release transaction lock before calling AsyncEventListener
                 Key: GEODE-1702
                 URL: https://issues.apache.org/jira/browse/GEODE-1702
             Project: Geode
          Issue Type: Bug
          Components: transactions
            Reporter: Swapnil Bawaskar


The relavent workflow of transaction commit processing is as follows:
1. Grab transaction locks
2. perform conflict checks
3. apply changes to locally
4. enqueue events in AsyncEventQueue
5. release transaction locks

However this is problematic since the AsyncEventListener could be called while the tx locks are held. This prevents same entry from being modified in the AsyncEventListener (within a transaction). 

Transaction locks cannot be released before the events are enqueued to prevent out-of-order events.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)