You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Stephen Yuan Jiang (JIRA)" <ji...@apache.org> on 2015/08/29 06:23:47 UTC

[jira] [Updated] (HBASE-13993) WALProcedureStore fencing is not effective if new WAL rolls

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

Stephen Yuan Jiang updated HBASE-13993:
---------------------------------------
    Parent Issue: HBASE-14336  (was: HBASE-12439)

> WALProcedureStore fencing is not effective if new WAL rolls 
> ------------------------------------------------------------
>
>                 Key: HBASE-13993
>                 URL: https://issues.apache.org/jira/browse/HBASE-13993
>             Project: HBase
>          Issue Type: Sub-task
>          Components: master
>            Reporter: Enis Soztutar
>            Assignee: Enis Soztutar
>             Fix For: 2.0.0, 1.2.0, 1.1.2
>
>         Attachments: HBASE-13993-v2.patch, HBASE-13993-v3.patch, hbase-13993_v1.patch
>
>
> WAL fencing for the WALProcedureStore is a bit different than the fencing done for region server WALs. 
> In case of this sequence of events, the WAL is not fenced (especially with HBASE-13832 patch): 
>  - master1 creates WAL with logId = 1: {{/MasterProcWALs/state-00000000000000000001.log}} 
>  - master2 takes over, fences logId = 1 with recoverLease(), creates logId=2: {{/MasterProcWALs/state-00000000000000000002.log}}.
>  - master2 writes some procedures and rolls the logId2, and creates logId = 3, and deletes logId = 2. 
>  - master1 now tries to write a procedure, gets lease mismatch, rolls the log from 1 to 2, and succeeds the write since it can write logId = 2 (master2 uses logId=3 now). 
>  



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