You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2017/08/03 21:31:00 UTC

[jira] [Commented] (ASTERIXDB-2012) LSMBTreeRangeSearchCursor unlocks twice in some cases

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

ASF subversion and git services commented on ASTERIXDB-2012:
------------------------------------------------------------

Commit 4cb617a216ec3909ce87f8eef7a6c4d355ad1a24 in asterixdb's branch refs/heads/master from [~alamoudi]
[ https://git-wip-us.apache.org/repos/asf?p=asterixdb.git;h=4cb617a ]

[ASTERIXDB-2012][TX] Fix Sporadic double release in btree search

- user model changes: no
- storage format changes: no
- interface changes: no

details:
- LSMBTreeRangeSearchCursor sometimes unlocks twice producing
  illegal state exception. This happens if:
  1. the proceed call failed (causing instant lock to fail)
  2. the lock was acquired and then released. This happens if:
    a. the priority queue head was not coming from memory component.
    b. the priority queue head was from memory component and it didn't
       change when search was re-performed
  3. the tuple was found to be antimatter.

- Moreover, locks that are acquired in case the mutable component is not
  part of the search anymore are not released until the job completes.

Change-Id: I497ec7c14074390bd6408a3854202159bec5f1cf
Reviewed-on: https://asterix-gerrit.ics.uci.edu/1912
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Contrib: Jenkins <je...@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Murtadha Hubail <mh...@apache.org>


> LSMBTreeRangeSearchCursor unlocks twice in some cases
> -----------------------------------------------------
>
>                 Key: ASTERIXDB-2012
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-2012
>             Project: Apache AsterixDB
>          Issue Type: Bug
>          Components: TX - Transactions
>            Reporter: Abdullah Alamoudi
>            Assignee: Abdullah Alamoudi
>
> LSMBTreeRangeSearchCursor sometimes unlocks twice producing illegal state exception
> This happens if:
> 1. the proceed call failed (causing instant lock to fail)
> 2. the lock was acquired and then released. This happens if:
>     a. the priority queue head was not coming from memory component.
>     b. the priority queue head was from memory component and it didn't change when search was re-performed
> 3. the tuple was found to be antimatter.
> Moreover, locks that are acquired in case the mutable component is not part of the search anymore are not released until the job completes.



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