Enis Soztutar created HBASE-13993:
-------------------------------------

             Summary: 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
            Reporter: Enis Soztutar
            Assignee: Enis Soztutar
             Fix For: 2.0.0, 1.2.0, 1.1.2, 1.3.0


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)

Reply via email to