Thanks Vladimir, you're right, the ruby based Shell cannot support custom parameters(at least for 0.94.6-cdh4.4.0). I added some debug log in the HBase source code which also proved it. The java code does work. I also added comments in the ticket. CheersRamon
> From: [email protected] > To: [email protected] > Date: Tue, 5 Nov 2013 09:43:40 -0800 > Subject: RE: How to change split policy of a specific existing table(not > global)? > > There is a ticket for that :) > > https://issues.apache.org/jira/browse/HBASE-9218 > > Best regards, > Vladimir Rodionov > Principal Platform Engineer > Carrier IQ, www.carrieriq.com > e-mail: [email protected] > > ________________________________________ > From: [email protected] [[email protected]] On Behalf Of Stack > [[email protected]] > Sent: Tuesday, November 05, 2013 7:53 AM > To: Hbase-User > Subject: Re: How to change split policy of a specific existing table(not > global)? > > On Tue, Nov 5, 2013 at 6:04 AM, WangRamon <[email protected]> wrote: > > > Hi JM > > Thanks for your help, yes, as you said the syntax is totally correct as it > > can be executed in HBase Shell without any errors. > > By checking the source code of class HRegion which initialise the region > > policy from HTableDescriptor, not sure if that SPLIT_POLICY value can be > > dynamically changed after a table(and its first child region) is created? > > > > > 1) If you look in the Web UI, do you see you new attribute set for this > > > table? > > I don't know there is a specific UI which i can view the new attributes > > except the master-status UI, if that's the UI you are talking about, i can > > only see the MAX_FILESIZE property is set correctly:{NAME => > > 'SPLIT_TEST_BIG', MAX_FILESIZE => '107374182400', FAMILIES => [{NAME => > > 'f1'}]} > > > > What JMS said. > > Seems like you are looking at the right place in the UI. > > After altering the table, if you do > > hbase> describe "SPLIT_TEST_BIG" > > ... do you see the new attribute set? > > If not, the shell must be not setting this attribute properly (bug). > > St.Ack > > > > > > > > 2) How have you verified that it doesn't work? What do you have on the > > logs? > > I use YCSB to insert data into that table, and i did saw there are some > > new regions created after i running the test for a while. And here is the > > LOG i get from one of the region severs: > > 2013-11-05 08:34:46,571 DEBUG > > org.apache.hadoop.hbase.regionserver.IncreasingToUpperBoundRegionSplitPolicy: > > ShouldSplit because f1 size=414926238, sizeToCheck=134217728, > > regionsWithCommonTable=1 > > Any idea? > > ThanksRamon > > > > > From: [email protected] > > > Date: Tue, 5 Nov 2013 07:40:04 -0500 > > > Subject: Re: How to change split policy of a specific existing table(not > > global)? > > > To: [email protected] > > > > > > This seems to be correct. > > > > > > 2 questions. > > > > > > 1) If you look in the Web UI, do you see you new attribute set for this > > > table? > > > 2) How have you verified that it doesn't work? What do you have on the > > logs? > > > > > > JM > > > > > > > > > 2013/11/5 WangRamon <[email protected]> > > > > > > > Hi Folks > > > > I'm trying to change the default split policy of an existing table in > > > > HBase 0.94.6-cdh4.4.0. The way i think should work is by using HBase > > Shell, > > > > so i executed the following command in the SHELL: > > > > disable 'SPLIT_TEST_BIG'alter 'SPLIT_TEST_BIG', {METHOD => 'table_att', > > > > 'SPLIT_POLICY' => > > > > > > 'org.apache.hadoop.hbase.regionserver.ConstantSizeRegionSplitPolicy'}alter > > > > 'SPLIT_TEST_BIG', {METHOD => 'table_att', 'MAX_FILESIZE' => > > > > '107374182400'}enable 'SPLIT_TEST_BIG' > > > > > > > > But it doesn't work, only the 'MAX_FILESIZE' property get changed, the > > > > table still uses the default split policy which is > > > > 'IncreasingToUpperBoundRegionSplitPolicy', so can anyone tell me what > > is > > > > the correct way to do it, thanks! > > > > CheersRamon > > > > > > Confidentiality Notice: The information contained in this message, including > any attachments hereto, may be confidential and is intended to be read only > by the individual or entity to whom this message is addressed. If the reader > of this message is not the intended recipient or an agent or designee of the > intended recipient, please note that any review, use, disclosure or > distribution of this message or its attachments, in any form, is strictly > prohibited. If you have received this message in error, please immediately > notify the sender and/or [email protected] and delete or destroy > any copy of this message and its attachments.
