hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jean-Daniel Cryans (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HBASE-810) Prevent temporary deadlocks when, during a scan with write operations, the region splits
Date Thu, 21 Aug 2008 16:56:44 GMT

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

Jean-Daniel Cryans updated HBASE-810:
-------------------------------------

    Attachment: hbase-810-v1.patch

Fixes what Jim told to fix. I also added a test that should fail without this patch.

> Prevent temporary deadlocks when, during a scan with write operations, the region splits
> ----------------------------------------------------------------------------------------
>
>                 Key: HBASE-810
>                 URL: https://issues.apache.org/jira/browse/HBASE-810
>             Project: Hadoop HBase
>          Issue Type: Bug
>    Affects Versions: 0.2.0
>            Reporter: Jean-Daniel Cryans
>            Priority: Blocker
>             Fix For: 0.2.1, 0.3.0
>
>         Attachments: hbase-810-v1.patch, lock-sequencing.jpg, locking-compatibility.jpg
>
>
> HBASE-804 was not about the good problem, this one is. Anyone that iterates through the
results of a scanner and that rewrites data back into the row at each iteration will hit a
UnknownScannerException if a split occurs. See the stack in the referred jira. Timeline :
> Split occurs, acquires a write lock and waits for scanners to finish
> The scanner in the custom code iterates and writes data until the write is blocked by
the lock
> deadlock
> The scanner timeouts thus the region splits but the USE will be thrown when next() is
called
> Inside a Map, the task will simply be retried when the first one fails. Elsewhere, it
becomes more complicated.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message