[ https://issues.apache.org/jira/browse/HBASE-7507?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13584990#comment-13584990 ]
chunhui shen commented on HBASE-7507: ------------------------------------- bq.The other possible candidates in a running cluster I can see are Compaction and Log rolling Failure hdfs operation of Compaction and Log rolling won't cause RS to abort, so I think these failures are acceptable. > Make memstore flush be able to retry after exception > ---------------------------------------------------- > > Key: HBASE-7507 > URL: https://issues.apache.org/jira/browse/HBASE-7507 > Project: HBase > Issue Type: Bug > Affects Versions: 0.94.3 > Reporter: chunhui shen > Assignee: chunhui shen > Priority: Critical > Fix For: 0.96.0 > > Attachments: 7507-94.patch, 7507-trunk v1.patch, 7507-trunk v2.patch, > 7507-trunkv3.patch > > > We will abort regionserver if memstore flush throws exception. > I thinks we could do retry to make regionserver more stable because file > system may be not ok in a transient time. e.g. Switching namenode in the > NamenodeHA environment > {code} > HRegion#internalFlushcache(){ > ... > try { > ... > }catch(Throwable t){ > DroppedSnapshotException dse = new DroppedSnapshotException("region: " + > Bytes.toStringBinary(getRegionName())); > dse.initCause(t); > throw dse; > } > ... > } > MemStoreFlusher#flushRegion(){ > ... > region.flushcache(); > ... > try { > }catch(DroppedSnapshotException ex){ > server.abort("Replay of HLog required. Forcing server shutdown", ex); > } > ... > } > {code} -- 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