From dfb773397cf5454cc3efea7a079cdd225f3774c5 Mon Sep 17 00:00:00 2001 From: Woonduk Kang Date: Tue, 10 Dec 2013 09:06:06 +0000 Subject: [PATCH] =?UTF-8?q?[=EA=B0=95=EC=9A=B4=EB=8D=95]=20[PINPOINT-241]?= =?UTF-8?q?=20trace=EC=9D=98=20region=20=EC=AA=BC=EA=B0=9C=EB=8A=94=20?= =?UTF-8?q?=EC=A0=95=EC=B1=85=EB=B3=80=EA=B2=BD=2032=EA=B8=B0=EC=A4=80?= =?UTF-8?q?=EC=9C=BC=EB=A1=9C=20=EB=B3=80=EA=B2=BD=ED=95=98=EC=98=80?= =?UTF-8?q?=EC=9D=8C.=20real=EC=9A=A9=20hbase=20reset=EB=8F=84=20=EB=A7=8C?= =?UTF-8?q?=EB=93=AC.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://svn.bds.nhncorp.com/pe/hippo-server/trunk@3012 84d0f5b1-2673-498c-a247-62c4ff18d310 --- .../regionsplit/PreSplitRegionsTest.java | 59 ++++++++++++++----- 1 file changed, 44 insertions(+), 15 deletions(-) diff --git a/src/test/java/com/nhn/pinpoint/collector/regionsplit/PreSplitRegionsTest.java b/src/test/java/com/nhn/pinpoint/collector/regionsplit/PreSplitRegionsTest.java index 7bf29c407..8b1519266 100644 --- a/src/test/java/com/nhn/pinpoint/collector/regionsplit/PreSplitRegionsTest.java +++ b/src/test/java/com/nhn/pinpoint/collector/regionsplit/PreSplitRegionsTest.java @@ -3,36 +3,65 @@ package com.nhn.pinpoint.collector.regionsplit; import java.util.ArrayList; import java.util.List; +import com.sematext.hbase.wd.AbstractRowKeyDistributor; import org.junit.Test; import com.sematext.hbase.wd.RowKeyDistributorByHashPrefix.OneByteSimpleHash; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration("classpath:applicationContext-test.xml") public class PreSplitRegionsTest { - int traceRegionNumber = 64; + int traceRegionNumber = 32; int traceIndexRegionNumber = 32; int agentStatRegionNumber = 32; String tracesFormat = "create 'Traces', { NAME => 'S', TTL => 604800 }, { NAME => 'A', TTL => 604800 }, { NAME => 'T', TTL => 604800 }, %s"; String traceIndexFormat = "create 'ApplicationTraceIndex', { NAME => 'I', TTL => 604800 }, %s"; String agentStatFormat = "create 'AgentStat', { NAME => 'S', TTL => 604800 }, %s"; - + + @Autowired + @Qualifier("rowKeyDistributor") + private AbstractRowKeyDistributor rowKeyDistributor; + @Test public void traceRegions() { - List regions = new ArrayList(); - - int width = 256 / traceRegionNumber; - for (int onebyte=width; onebyte<256; onebyte+=width) { - String region = "\\x" + Integer.toString((onebyte & 0xff) + 0x100, 16).substring(1); - for (int i = 0; i < 15; i++) { - region += "\\x00"; - } - System.out.println(region); - regions.add(region); - } - - printCommand(tracesFormat, regions); + List regions = new ArrayList(); + + OneByteSimpleHash hash = new OneByteSimpleHash(traceRegionNumber); + for (byte[] each : hash.getAllPossiblePrefixes()) { + byte onebyte = each[0]; + if (onebyte == 0) { + continue; + } + + String region = "\\x" + Integer.toString((onebyte & 0xff) + 0x100, 16).substring(1); + for (int i = 0; i < 15; i++) { + region += "\\x00"; + } + regions.add(region); + } + + printCommand(tracesFormat, regions); } + + + @Test + public void range() { + System.out.println("------------------------"); + for (int i =0 ; i< 255; i++) { + byte[] bytes = new byte[1]; + bytes[0] = (byte) i; + byte[] distributedKey = rowKeyDistributor.getDistributedKey(bytes); + System.out.println("distributedKey:" + distributedKey[0]); + } + System.out.println("------------------------"); + } @Test public void applicationTraceIndexRegions() {