hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lukas (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HBASE-1212) merge tool expects regions all have different sequence ids
Date Wed, 02 Mar 2011 16:14:39 GMT

    [ https://issues.apache.org/jira/browse/HBASE-1212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13001467#comment-13001467

Lukas commented on HBASE-1212:

Hi there,
When using util.merge on a table (created under hbase 0.20.6, but now running under 0.90.1)
I get the following exception very often (which I think is the result of this jira):
FATAL util.Merge: Merge failed
java.io.IOException: Files have same sequenceid: 1283640296746
	at org.apache.hadoop.hbase.regionserver.HRegion.merge(HRegion.java:2785)
	at org.apache.hadoop.hbase.util.Merge.merge(Merge.java:287)
	at org.apache.hadoop.hbase.util.Merge.mergeTwoRegions(Merge.java:238)
	at org.apache.hadoop.hbase.util.Merge.run(Merge.java:110)
	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
	at org.apache.hadoop.hbase.util.Merge.main(Merge.java:379)

Unfortunately at this point some families of the region were already moved to the new merged
region which leaves the table in an inconsistent state.
Is there any way to detect this failure case before running the merge tool (except for opening
the store files in advance and calling getMaxSequenceId)?

Same issue is also mentioned in the [comments|https://issues.apache.org/jira/browse/HBASE-1621?focusedCommentId=12993477#comment-12993477]
of HBASE-1621

> merge tool expects regions all have different sequence ids
> ----------------------------------------------------------
>                 Key: HBASE-1212
>                 URL: https://issues.apache.org/jira/browse/HBASE-1212
>             Project: HBase
>          Issue Type: Bug
>            Reporter: stack
> Currently merging two regions, the merge tool will compare their sequence ids.  If same,
it will decrement one.  It needs to do this because on region open, files are keyed by their
sequenceid; if two the same, one will erase the other.
> Well, with the move to the aggregating hfile format, the sequenceid is written when the
file is created and its no longer written into an aside file but as metadata on to the end
of the file.  Changing the sequenceid is no longer an option.
> This issue is about figuring a solution for the rare case where two store files have
same sequence id AND we want to merge the two regions.

This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message