You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Mike Matrigali (JIRA)" <ji...@apache.org> on 2013/07/25 02:55:48 UTC

[jira] [Commented] (DERBY-6302) Allow SQL layer to indicate to store that a row did not qualify after being returned from store.

    [ https://issues.apache.org/jira/browse/DERBY-6302?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13719120#comment-13719120 ] 

Mike Matrigali commented on DERBY-6302:
---------------------------------------

This is likely a difficult project.  Challenges include:

1) store is optimized at the point of qualification to unlock the row, as it has an internal row handle.  This row handle is not currently passed out of
    store, so there is not an existing mechanism for SQL to indicate back to store the data structure it needs to unlock the row.
2) The implementation should strive to not slow down the existing scan fast path for those scans that don't need this repeatable read extra work.
                
> Allow SQL layer to indicate to store that a row did not qualify after being returned from store.
> ------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-6302
>                 URL: https://issues.apache.org/jira/browse/DERBY-6302
>             Project: Derby
>          Issue Type: Improvement
>            Reporter: Mike Matrigali
>
> Currently in REPEATABLE READ isolation level at the store level only those rows that
> qualify are locked until end of transaction.  Those that don't qualify while store is processing
> a scan are locked while being inspected and then the lock is released immediately.  Store
> allows for AND and OR simple comparisons (<, <=, ==, >=, >) to be pushed down, but
> many other sorts of qualificaiton only gets done at the upper SQL layer.
> Currently any row returned from store will remain locked under repeatable read until end of transaction.
> This includes those rows that are subsequently disqualified by the SQL layer.
> To address this a new interface would have to be created to allow the SQL layer to indicate to store
> that a row did not qualify and store could then unlock it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira