Sergey Shelukhin created HBASE-8597:
---------------------------------------
Summary: compaction record (probably) can block WAL cleanup
forever if region is closed without edits
Key: HBASE-8597
URL: https://issues.apache.org/jira/browse/HBASE-8597
Project: HBase
Issue Type: Bug
Affects Versions: 0.95.0
Reporter: Sergey Shelukhin
Assignee: Sergey Shelukhin
A region is opened by a server, major compaction is performed, that triggers a
split, and the region is closed and split. There's no indication of memstore
flush for this region.
After that, LogRoller repeatedly tries to request the flush of this region due
to large number HLogs, but fails to flush it for hours because the region is
not in online regions.
It seems that what's happening is that when we append entries to WAL, we add
them to "earliest unflushed seqNums per region" in FSHLog. However, compaction
now adds compaction record to WAL, which also affects this map. If the
compaction record is the first entry for this region to go into some WAL, and
there are no writes to the region after that, there will be no memstore flush
and the entry will never be removed.
In fact "flushing" for compaction record doesn't make sense, there's no
preservation of the record outside WAL; so, we probably should not add it to
"latest unflushed" map.
--
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