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)