hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anastasia Braginsky (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-17487) Throw exception when pushing pipeline to snapshot fails twice
Date Fri, 20 Jan 2017 10:12:26 GMT

    [ https://issues.apache.org/jira/browse/HBASE-17487?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15831503#comment-15831503

Anastasia Braginsky commented on HBASE-17487:

[~anoop.hbase], you are saying:

bq. Ya if we dont expect the loop to run more than 2 times, lets fail the op. I feel its ok..

This is exactly what is currently happens in the code. The snapshot() invocation just fails
with no side-effect. 


bq. How about throwing exception (e.g. IllegalStateException) in the if block when, in the
remote possibility, the 3rd iteration happens. 

I do not think this is necessary, the call for snapshot() currently doesn't expect an exception
to happen and to add this is a change in lots of places. I agree that we can change the log
to error instead of warning. Alternatively, if you plan to catch the exception inside the
snapshot() method so what is the point of throwing it? How do you plan to manage the exception?

> Throw exception when pushing pipeline to snapshot fails twice
> -------------------------------------------------------------
>                 Key: HBASE-17487
>                 URL: https://issues.apache.org/jira/browse/HBASE-17487
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Ted Yu
>            Assignee: Ted Yu
>            Priority: Minor
>         Attachments: 17487.v2.txt
> In CompactingMemStore#pushPipelineToSnapshot() , there is limit of 3 iterations of pipeline.swap()
call after which an empty ImmutableSegment is used as snapshot.
> However, there should be at most two iterations in pushPipelineToSnapshot() since during
the second iteration there is no concurrent write to memstore.
> We should throw exception in the 3rd iteration to signify that this scenario should never

This message was sent by Atlassian JIRA

View raw message