You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Maryann Xue (JIRA)" <ji...@apache.org> on 2013/02/19 04:17:15 UTC

[jira] [Updated] (HBASE-7874) Allow RegionServer to abort "Put" if it detects that the HBase Client got SocketTimeoutException and disconnected.

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

Maryann Xue updated HBASE-7874:
-------------------------------

    Attachment: HBASE-7874-0.94.patch

add "check channel closed" in HRegion#batchMutate()
                
> Allow RegionServer to abort "Put" if it detects that the HBase Client got SocketTimeoutException and disconnected.
> ------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-7874
>                 URL: https://issues.apache.org/jira/browse/HBASE-7874
>             Project: HBase
>          Issue Type: Improvement
>          Components: regionserver
>    Affects Versions: 0.94.5
>            Reporter: Maryann Xue
>            Assignee: Maryann Xue
>            Priority: Minor
>         Attachments: HBASE-7874-0.94.patch
>
>
> Usually, when regionserver cannot catch up with the put load given by the client, what happens is region server starts to block update requests from the client until required resource has been reclaimed (i.e. memstore has been flushed). 
> But in more severe situations, the blocking time gets so long that the client begins to have SocketTimeoutException and then decides to retry, while in fact the updates are written into memstore later after they are unblocked. Even though the client has something like a binary rollback for retry intervals, this can still lead to a vicious circle, leaving the client to have very low throughput.
> Think we can enable an option to allow regionserver to check if the client has disconnected (just like what we do in scan) after coming back from "blocking", so that the regionserver has the same view as the client on whether updates are successfully committed.

--
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