hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ben Lau (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (HBASE-17720) Possible bug in FlushSnapshotSubprocedure
Date Thu, 02 Mar 2017 20:55:45 GMT

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

Ben Lau resolved HBASE-17720.
    Resolution: Duplicate

> Possible bug in FlushSnapshotSubprocedure
> -----------------------------------------
>                 Key: HBASE-17720
>                 URL: https://issues.apache.org/jira/browse/HBASE-17720
>             Project: HBase
>          Issue Type: Bug
>          Components: dataloss, snapshots
>            Reporter: Ben Lau
> I noticed that FlushSnapshotSubProcedure differs from MemstoreFlusher in that it does
not appear to explicitly handle a DroppedSnapshotException.  In the primary codepath when
flushing memstores, (see MemStoreFlusher.flushRegion()), there is a try/catch for DroppedSnapshotException
that will abort the regionserver to replay WALs to avoid data loss.  I don't see this in FlushSnapshotSubProcedure.
 Is this an accidental omission or is there a reason this isn't present?  
> I'm not too familiar with procedure V1 or V2.  I assume it is the case that if a participant
dies that all other participants will terminate any outstanding operations for the procedure?
 If so and if this lack of RS.abort() for DroppedSnapshotException is a bug, then it can't
be fixed naively otherwise I assume a failed flush on 1 region server could cause a cascade
of RS abortions on the cluster.

This message was sent by Atlassian JIRA

View raw message