hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chunhui Shen" <zju...@163.com>
Subject Re:Re: review request: HBASE-7403 Online Merge
Date Sat, 16 Mar 2013 14:25:11 GMT
Kevin,
Could we repair overlapping regions by hbck now, except offline merge?  I think not, if so,
please tell me the issue, thanks
 
Regarding non adjacent regions merge,  we will throw the exception as the following:
 
+    if (!forcible && !HRegionInfo.areAdjacent(regionStateA.getRegion(),
+            regionStateB.getRegion())) {
+      throw new ServiceException("Unable to merge not adjacent regions "
+          + regionStateA.getRegion().getRegionNameAsString() + ", "
+          + regionStateB.getRegion().getRegionNameAsString()
+          + " where forcible = " + forcible);
+    }
 
Using force flag to merge non adjacent regions, I think it's easy to understand and could
manually merge any two regions if user want. Not only for repairing case, also testing case
 
Therefore, I think Ted' thought would limit the freedom of regions merge.
 
Maybe we are worried about the inconsistency if user incorrectly call a force regions merge,
 I think it is similar with HBaseAdmin#assignRegion possibly triggering multi-assign
 
Cheers
Chunhui

At 2013-03-16 21:21:44,"Kevin O'dell" <kevin.odell@cloudera.com> wrote:
>Ted,
>
>  Why would we use that merge tool when hbck will repair that?  Should we
>throw a warning and tell the user to run repair first?
>On Mar 16, 2013 9:17 AM, "Ted" <yuzhihong@gmail.com> wrote:
>
>> Chunhui replied to this question on review board.
>>
>> Basically the force option is to repair overlapping regions or table with
>> hole in its regions.
>>
>> Personally I think online merge should detect merging regions with hole in
>> between them and not require force flag in that case because logically
>> they're adjacent.
>>
>> Cheers
>>
>> On Mar 16, 2013, at 5:52 AM, Jean-Marc Spaggiari <jean-marc@spaggiari.org>
>> wrote:
>>
>> > Hi Ted,
>> >
>> > I jut gave it a look.
>> >
>> > I have updated it on the RB.
>> >
>> > Overall, this is very good and I'm eager to see that integrated! I'm
>> > waiting for this feature since the beginning ;)
>> >
>> > Regarding non adjacent regions merge? Will the system still be
>> > consistent after that? Or will hbck report some regions overlaps?
>> >
>> > JM
>> >
>> >
>> > 2013/3/16 Ted Yu <yuzhihong@gmail.com>:
>> >> Hi,
>> >> On behalf of Chunhui, I am requesting review for HBASE-7403 Online
>> Merge.
>> >>
>> >> This JIRA was created 3 months ago.
>> >> Chunhui has responded to review comments very promptly, including a
>> major
>> >> rewrite around the time split transaction was rewritten.
>> >>
>> >> This feature has widely been requested. I feel the patch is mostly
>> ready to
>> >> go in.
>> >> Here is brief recap of the steps.
>> >>
>> >> Process of merging two regions:
>> >>
>> >> a.client sends RPC (dispatch merging regions) to master
>> >> b.master moves the regions together (on the regionserver where the more
>> >> heavily loaded region resided)
>> >> c.master sends RPC (merge regions) to this regionserver
>> >> d.Regionserver executes the region merge transaction in the thread pool
>> >>
>> >> I think step b is a nice simplification for the problem. In previous
>> >> versions of the patch, the two merging regions stay on respective
>> servers
>> >> which required more complex coordination through zookeeper.
>> >>
>> >> High level comment as well as detailed review are both welcome.
>> >>
>> >> Thanks
>>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message