From 7886a2498178ded085497d6204b4b367f56ce0c8 Mon Sep 17 00:00:00 2001 From: "Zhong, Yanghong" Date: Tue, 10 Mar 2020 16:44:15 +0800 Subject: [PATCH] KYLIN-4418 Bug fix for ShardingHash.getShard in HBaseLookupRowEncoder --- .../kylin/storage/hbase/lookup/HBaseLookupRowEncoder.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/lookup/HBaseLookupRowEncoder.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/lookup/HBaseLookupRowEncoder.java index 72694659924..51bd32b7fd3 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/lookup/HBaseLookupRowEncoder.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/lookup/HBaseLookupRowEncoder.java @@ -88,7 +88,8 @@ public byte[] encodeRowKey(String[] keys) { } byte[] result = new byte[RowConstants.ROWKEY_SHARDID_LEN + keyByteBuffer.position()]; System.arraycopy(keyByteBuffer.array(), 0, result, RowConstants.ROWKEY_SHARDID_LEN, keyByteBuffer.position()); - short shard = ShardingHash.getShard(result, RowConstants.ROWKEY_SHARDID_LEN, result.length, shardNum); + short shard = ShardingHash.getShard(result, RowConstants.ROWKEY_SHARDID_LEN, + result.length - RowConstants.ROWKEY_SHARDID_LEN, shardNum); BytesUtil.writeShort(shard, result, 0, RowConstants.ROWKEY_SHARDID_LEN); return result; }