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

Ted Yu commented on HBASE-17487:
--------------------------------

bq. however stopping here for the case of the infinite loop causing by any error

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

> Potential data loss when pipeline is pushed to snapshot
> -------------------------------------------------------
>
>                 Key: HBASE-17487
>                 URL: https://issues.apache.org/jira/browse/HBASE-17487
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Ted Yu
>            Assignee: Ted Yu
>         Attachments: 17487.v1.txt
>
>
> In CompactingMemStore#pushPipelineToSnapshot() , there is limit of 3 
> iterations of pipeline.swap() call after which an empty ImmutableSegment is 
> used as snapshot.
> However, after 3rd iteration, the return value from swap() is not checked.
> If the 3rd swap() call is successful, the versioned list would be swapped 
> with null in pipeline and snapshot being overwritten with the empty 
> ImmutableSegment.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to