[
https://issues.apache.org/jira/browse/HBASE-1212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13511343#comment-13511343
]
Jean-Marc Spaggiari commented on HBASE-1212:
--------------------------------------------
Based on Ryan's comment on March 3rd 2011 I did some more testing.
Here is how I proceed:
Creation of a test table.
Truncate the test table if already there and not empty.
Insert 100000 records
hbck => ok.
Split into 256 regions using HTML interface
Balancer + major_compact
Try to merge all the regions 2 by 2 until only 1 region remaining or until
error.
If no error, restart from split. (Usually need to do it twice)
Now, at this stage, I have 2 regions with the same sequence ID that I'm not
able to merge with the current un-patched HRegion code.
Displayed:starting merge of regions:
testtable,?\xEC\x80C^\xB2Q\xE8,1354799289826.eb1b2213a6b09a9d989c39abe3d6d18b.
and
testtable,?\xEC\xF9\x88\xBE{Sb,1354799292172.2d81e98f11bdda12dbf06c11eefefb39.
into new region {NAME =>
'testtable,?\xEC\x80C^\xB2Q\xE8,1354799434888.e4e403c2bf3b3b2561f26bfb70ef48d1.',
STARTKEY => '?\xEC\x80C^\xB2Q\xE8', ENDKEY => '?\xEDw\xF5\x16\xC4\x81\xB7',
ENCODED => e4e403c2bf3b3b2561f26bfb70ef48d1,} with start key
<?\xEC\x80C^\xB2Q\xE8> and end key <?\xEDw\xF5\x16\xC4\x81\xB7>
Start-hbase, hbck => One issue on the newly created region (HBASE-7287
e4e403c2bf3b3b2561f26bfb70ef48d)
rowcount => 12/12/06 08:15:14 INFO mapred.JobClient: ROWS=100000
Apply HBASE-1212 patch, stop HBase and restart the merge.
Merge went well up to the end (all regions merged 2 by 2 until only 1 region
remaining)
Start-hbase, hbck => One issue on the newly created region (HBASE-7287
e4e403c2bf3b3b2561f26bfb70ef48d) Same as before, so no additionnal issue
because of HBASE-1212.
rowcount => 12/12/06 08:21:54 INFO mapred.JobClient: ROWS=100000
The issue created by the merge when not patched (HBASE-7287 or HBASE-1212) is
just an empty directory created which can be manually removed.
If we apply HBASE-1212, then there is no more needs to apply HBASE-7287. If we
want to make more tests for HBASE-1212 then it might be good to apply
HBASE-7287 to avoid system inconsistencies.
Based on my tests I can confirm that we can remove the sequenceID check and the
merge will still be working fine even if 2 files got the same sequenceID.
> 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
> Attachments: failure.log, HBASE-1212.patch
>
>
> 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.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira