You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2018/02/04 00:51:53 UTC
[50/50] [abbrv] kylin git commit: KYLIN-3211 add Exception message
for the illegal IntDimEnc length
KYLIN-3211 add Exception message for the illegal IntDimEnc length
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/04b32207
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/04b32207
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/04b32207
Branch: refs/heads/sync
Commit: 04b3220739713a7d157e6a286fabea5a5036fad4
Parents: 4ade239
Author: Yifei Wu <va...@gmail.com>
Authored: Mon Jan 29 21:20:08 2018 +0800
Committer: Li Yang <li...@apache.org>
Committed: Sun Feb 4 08:45:40 2018 +0800
----------------------------------------------------------------------
.../main/java/org/apache/kylin/dimension/IntDimEnc.java | 10 ++++++----
.../java/org/apache/kylin/dimension/IntDimEncTest.java | 5 +++--
2 files changed, 9 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/04b32207/core-metadata/src/main/java/org/apache/kylin/dimension/IntDimEnc.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/dimension/IntDimEnc.java b/core-metadata/src/main/java/org/apache/kylin/dimension/IntDimEnc.java
index 3650200..6ce003b 100644
--- a/core-metadata/src/main/java/org/apache/kylin/dimension/IntDimEnc.java
+++ b/core-metadata/src/main/java/org/apache/kylin/dimension/IntDimEnc.java
@@ -34,12 +34,13 @@ import org.slf4j.LoggerFactory;
* deprecated use IntegerDimEnc instead
* @deprecated
*/
-public class IntDimEnc extends DimensionEncoding implements Serializable{
+public class IntDimEnc extends DimensionEncoding implements Serializable {
private static final long serialVersionUID = 1L;
private static Logger logger = LoggerFactory.getLogger(IntDimEnc.class);
- private static final long[] CAP = { 0, 0xffL, 0xffffL, 0xffffffL, 0xffffffffL, 0xffffffffffL, 0xffffffffffffL, 0xffffffffffffffL, Long.MAX_VALUE };
+ private static final long[] CAP = { 0, 0xffL, 0xffffL, 0xffffffL, 0xffffffffL, 0xffffffffffL, 0xffffffffffffL,
+ 0xffffffffffffffL, Long.MAX_VALUE };
public static final String ENCODING_NAME = "int";
@@ -67,7 +68,7 @@ public class IntDimEnc extends DimensionEncoding implements Serializable{
public IntDimEnc(int len) {
if (len <= 0 || len >= CAP.length)
- throw new IllegalArgumentException();
+ throw new IllegalArgumentException("the length of IntDimEnc is " + len + ", which should be 1-8");
this.fixedLen = len;
}
@@ -87,7 +88,8 @@ public class IntDimEnc extends DimensionEncoding implements Serializable{
long integer = Long.parseLong(valueStr);
if (integer > CAP[fixedLen]) {
if (avoidVerbose++ % 10000 == 0) {
- logger.warn("Expect at most " + fixedLen + " bytes, but got " + valueStr + ", will truncate, hit times:" + avoidVerbose);
+ logger.warn("Expect at most " + fixedLen + " bytes, but got " + valueStr + ", will truncate, hit times:"
+ + avoidVerbose);
}
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/04b32207/core-metadata/src/test/java/org/apache/kylin/dimension/IntDimEncTest.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/test/java/org/apache/kylin/dimension/IntDimEncTest.java b/core-metadata/src/test/java/org/apache/kylin/dimension/IntDimEncTest.java
index 0f55b3e..fc4163b 100644
--- a/core-metadata/src/test/java/org/apache/kylin/dimension/IntDimEncTest.java
+++ b/core-metadata/src/test/java/org/apache/kylin/dimension/IntDimEncTest.java
@@ -31,18 +31,19 @@ import org.junit.Test;
public class IntDimEncTest {
@Test
- public void testConstructor() {
+ public void testBadConstructor() {
try {
new IntDimEnc(0);
Assert.fail();
} catch (IllegalArgumentException e) {
// expect
+ Assert.assertEquals("the length of IntDimEnc is 0, which should be 1-8", e.getMessage());
}
try {
new IntDimEnc(9);
Assert.fail();
} catch (IllegalArgumentException e) {
- // expect
+ Assert.assertEquals("the length of IntDimEnc is 9, which should be 1-8", e.getMessage());
}
new IntDimEnc(8);
}