You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Vladimir Ozerov (JIRA)" <ji...@apache.org> on 2017/11/16 14:52:00 UTC

[jira] [Updated] (IGNITE-6935) SQL TX: Locking protocol for simple queries

     [ https://issues.apache.org/jira/browse/IGNITE-6935?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Vladimir Ozerov updated IGNITE-6935:
------------------------------------
    Security:     (was: Public)

> SQL TX: Locking protocol for simple queries
> -------------------------------------------
>
>                 Key: IGNITE-6935
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6935
>             Project: Ignite
>          Issue Type: Task
>          Components: cache, sql
>            Reporter: Vladimir Ozerov
>             Fix For: 2.4
>
>
> We need to develop locking protocol for SQL queries. Design considerations:
> 1) Use {{GridNeaLockRequest|Response}} as a template for new messages
> 2) Cover only queries which doesn't require reduce stage (see server-side DML optimization code, e.g. {{GridH2DmlRequest}}).
> 3) When next entry is found, try locking it. If it is already locked, then register current TX as candidate in MVCC manager and go to the next row. Other TXes will notify use when entries are released. Send a response when all entries are locked.
> 4) Read entry version before locking and after. If they doesn't match (i.e. concurrent modification occurred), then throw an exception.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)