[
https://issues.apache.org/jira/browse/HBASE-9278?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13749184#comment-13749184
]
Himanshu Vashishtha commented on HBASE-9278:
--------------------------------------------
Stack:
bq. ?). meta is assigned ahead of all regions but only if Jeffrey Zhong 's
fancy log splitter is enabled (which should be rare), right?
No. Meta is assigned ahead without distributed log replaying too. That's why DD
created a separate meta wal.
bq. If it is coming from a 0.94.x with meta wal feature:
It needs testing as HMaster looks at zk to know previous meta location and we
have a fresh zk state; it looks like it might skip meta logs before opening the
region (I will test this).
In any case, if we flush meta before closing previous cluster, and ask users
not to do any DDL in the proximity of upgrade, we will be safe.
> Reading Pre-namespace meta table edits kills the reader
> -------------------------------------------------------
>
> Key: HBASE-9278
> URL: https://issues.apache.org/jira/browse/HBASE-9278
> Project: HBase
> Issue Type: Bug
> Components: migration, wal
> Affects Versions: 0.95.2
> Reporter: Himanshu Vashishtha
> Assignee: Himanshu Vashishtha
> Priority: Critical
> Fix For: 0.98.0, 0.96.0
>
> Attachments: HBase-9278-v0.patch
>
>
> In upgrading to 0.96, there might be some meta/root table edits. Currently,
> we are just killing SplitLogWorker thread in case it sees any META, or ROOT
> waledit, which blocks log splitting/replaying of remaining WALs.
> {code}
> 2013-08-20 15:45:16,998 ERROR regionserver.SplitLogWorker
> (SplitLogWorker.java:run(210)) - unexpected error
> java.lang.IllegalArgumentException: .META. no longer exists. The table has
> been renamed to hbase:meta
> at org.apache.hadoop.hbase.TableName.valueOf(TableName.java:269)
> at org.apache.hadoop.hbase.TableName.valueOf(TableName.java:261)
> at
> org.apache.hadoop.hbase.regionserver.wal.HLogKey.readFields(HLogKey.java:338)
> at
> org.apache.hadoop.io.SequenceFile$Reader.next(SequenceFile.java:1898)
> at
> org.apache.hadoop.io.SequenceFile$Reader.next(SequenceFile.java:1938)
> at
> org.apache.hadoop.hbase.regionserver.wal.SequenceFileLogReader.readNext(SequenceFileLogReader.java:215)
> at
> org.apache.hadoop.hbase.regionserver.wal.ReaderBase.next(ReaderBase.java:98)
> at
> org.apache.hadoop.hbase.regionserver.wal.ReaderBase.next(ReaderBase.java:85)
> at
> org.apache.hadoop.hbase.regionserver.wal.HLogSplitter.getNextLogLine(HLogSplitter.java:582)
> at
> org.apache.hadoop.hbase.regionserver.wal.HLogSplitter.splitLogFile(HLogSplitter.java:292)
> at
> org.apache.hadoop.hbase.regionserver.wal.HLogSplitter.splitLogFile(HLogSplitter.java:209)
> at
> org.apache.hadoop.hbase.regionserver.SplitLogWorker$1.exec(SplitLogWorker.java:138)
> at
> org.apache.hadoop.hbase.regionserver.SplitLogWorker.grabTask(SplitLogWorker.java:358)
> at
> org.apache.hadoop.hbase.regionserver.SplitLogWorker.taskLoop(SplitLogWorker.java:245)
> at
> org.apache.hadoop.hbase.regionserver.SplitLogWorker.run(SplitLogWorker.java:205)
> at java.lang.Thread.run(Thread.java:662)
> 2013-08-20 15:45:16,999 INFO regionserver.SplitLogWorker
> (SplitLogWorker.java:run(212)) - SplitLogWorker localhost,60020,1377035111898
> exiting
> {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