You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lens.apache.org by su...@apache.org on 2017/04/12 12:40:50 UTC
[3/4] lens git commit: Addressed final reviews and fixed checkstyle
error
http://git-wip-us.apache.org/repos/asf/lens/blob/cb5e2a77/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java
----------------------------------------------------------------------
diff --git a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java
index ba8a5e4..93dbfc3 100644
--- a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java
+++ b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBaseCubeQueries.java
@@ -37,7 +37,6 @@ import org.apache.lens.cube.error.LensCubeErrorCode;
import org.apache.lens.cube.error.NoCandidateFactAvailableException;
import org.apache.lens.cube.metadata.TimeRange;
import org.apache.lens.cube.metadata.UpdatePeriod;
-import org.apache.lens.cube.parse.CandidateTablePruneCause.CandidateTablePruneCode;
import org.apache.lens.server.api.error.LensException;
import org.apache.commons.lang.time.DateUtils;
@@ -68,15 +67,12 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
}
@Test
- public void testNoCandidateFactAvailableExceptionCompareTo() throws Exception {
- //maxCause : UNSUPPORTED_STORAGE
- NoCandidateFactAvailableException ne1 =
- (NoCandidateFactAvailableException)getLensExceptionInRewrite(
+ public void testNoUnionCandidateAndNoJoinCandidateErrorWeight() throws Exception {
+ LensException e1 = getLensExceptionInRewrite(
"select dim1, test_time_dim, msr3, msr13 from basecube where " + TWO_DAYS_RANGE, conf);
- //maxCause : STORAGE_NOT_AVAILABLE_IN_RANGE
- NoCandidateFactAvailableException ne2 = (NoCandidateFactAvailableException)
- getLensExceptionInRewrite("select dim1 from " + cubeName + " where " + LAST_YEAR_RANGE, getConf());
- assertEquals(ne1.compareTo(ne2), -1);
+ LensException e2 = getLensExceptionInRewrite("select dim1 from " + cubeName
+ + " where " + LAST_YEAR_RANGE, getConf());
+ assertEquals(e1.getErrorWeight() - e2.getErrorWeight(), 1);
}
@Test
@@ -92,53 +88,9 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
e = getLensExceptionInRewrite("select dim1, test_time_dim, msr3, msr13 from basecube where "
+ TWO_DAYS_RANGE, conf);
assertEquals(e.getErrorCode(),
- LensCubeErrorCode.NO_CANDIDATE_FACT_AVAILABLE.getLensErrorInfo().getErrorCode());
- NoCandidateFactAvailableException ne = (NoCandidateFactAvailableException) e;
- //ne.briefAndDetailedError.getBriefCause()
- //ne.getJsonMessage().brief
- assertTrue(CandidateTablePruneCode.UNSUPPORTED_STORAGE.errorFormat.equals(ne.getJsonMessage().getBrief()));
-// PruneCauses.BriefAndDetailedError pruneCauses = ne.getJsonMessage();
-// String regexp = String.format(CandidateTablePruneCode.UNSUPPORTED_STORAGE.errorFormat,
-// "Column Sets: (.*?)", "queriable together");
-// Matcher matcher = Pattern.compile(regexp).matcher(pruneCauses.getBrief());
-// assertTrue(matcher.matches(), pruneCauses.getBrief());
-// assertEquals(matcher.groupCount(), 1);
-// String columnSetsStr = matcher.group(1);
-// assertNotEquals(columnSetsStr.indexOf("test_time_dim"), -1, columnSetsStr);
-// assertNotEquals(columnSetsStr.indexOf("msr3, msr13"), -1);
-//
-// /**
-// * Verifying the BriefAndDetailedError:
-// * 1. Check for missing columns(COLUMN_NOT_FOUND)
-// * and check the respective tables for each COLUMN_NOT_FOUND
-// * 2. check for ELEMENT_IN_SET_PRUNED
-// *
-// */
-// boolean columnNotFound = false;
-// List<String> testTimeDimFactTables = Arrays.asList("c1_testfact3_raw_base",
-// "c1_testfact5_base", "c1_testfact6_base", "c1_testfact1_raw_base",
-// "c1_testfact4_raw_base", "c1_testfact3_base");
-// List<String> factTablesForMeasures = Arrays.asList(
-// "c2_testfact2_base","c2_testfact_deprecated","c1_union_join_ctx_fact1","c1_union_join_ctx_fact2",
-// "c1_union_join_ctx_fact3","c1_union_join_ctx_fact5","c1_testfact2_base",
-// "c1_union_join_ctx_fact6","c1_testfact2_raw_base","c1_testfact5_raw_base",
-// "c3_testfact_deprecated","c1_testfact_deprecated","c4_testfact_deprecated",
-// "c3_testfact2_base","c4_testfact2_base");
-// for (Map.Entry<String, List<CandidateTablePruneCause>> entry : pruneCauses.getDetails().entrySet()) {
-// if (entry.getValue().contains(CandidateTablePruneCause.columnNotFound(
-// CandidateTablePruneCode.COLUMN_NOT_FOUND, "test_time_dim"))) {
-// columnNotFound = true;
-// compareStrings(testTimeDimFactTables, entry);
-// }
-// if (entry.getValue().contains(CandidateTablePruneCause.columnNotFound(
-// CandidateTablePruneCode.COLUMN_NOT_FOUND, "msr3", "msr13"))) {
-// columnNotFound = true;
-// compareStrings(factTablesForMeasures, entry);
-// }
-// }
-// Assert.assertTrue(columnNotFound);
- // assertEquals(pruneCauses.getDetails().get("testfact1_base"),
- // Arrays.asList(new CandidateTablePruneCause(CandidateTablePruneCode.ELEMENT_IN_SET_PRUNED)));
+ LensCubeErrorCode.NO_JOIN_CANDIDATE_AVAILABLE.getLensErrorInfo().getErrorCode());
+ assertTrue(e.getMessage().contains("[msr3, msr13]"));
+
}
private void compareStrings(List<String> factTablesList, Map.Entry<String, List<CandidateTablePruneCause>> entry) {
@@ -195,16 +147,16 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
Set<String> storageCandidates = new HashSet<String>();
Set<StorageCandidate> scSet = CandidateUtil.getStorageCandidates(ctx.getCandidates());
for (StorageCandidate sc : scSet) {
- storageCandidates.add(sc.getName());
+ storageCandidates.add(sc.getStorageTable());
}
Assert.assertTrue(storageCandidates.contains("c1_testfact1_base"));
Assert.assertTrue(storageCandidates.contains("c1_testfact2_base"));
String hqlQuery = ctx.toHQL();
String expected1 =
- getExpectedQuery(cubeName, "SELECT sum(0.0) as `alias0`, sum((basecube.msr12)) as `alias1` FROM ", null,
+ getExpectedQuery(cubeName, "SELECT 0.0 as `alias0`, sum((basecube.msr12)) as `alias1` FROM ", null,
null, getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT sum((basecube.msr2)) as `alias0`, sum(0.0) as `alias1` FROM ", null,
+ getExpectedQuery(cubeName, "SELECT sum((basecube.msr2)) as `alias0`, 0.0 as `alias1` FROM ", null,
null, getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -221,21 +173,21 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
Set<String> storageCandidates = new HashSet<String>();
Set<StorageCandidate> scSet = CandidateUtil.getStorageCandidates(ctx.getCandidates());
for (StorageCandidate sc : scSet) {
- storageCandidates.add(sc.getName());
+ storageCandidates.add(sc.getStorageTable());
}
Assert.assertEquals(storageCandidates.size(), 3);
Assert.assertTrue(storageCandidates.contains("c1_testfact1_base"));
Assert.assertTrue(storageCandidates.contains("c1_testfact2_base"));
Assert.assertTrue(storageCandidates.contains("c1_testfact3_base"));
String hqlQuery = ctx.toHQL();
- String expected1 = getExpectedQuery(cubeName, "SELECT sum(0.0) as `alias0`, count(0.0) as `alias1`, "
+ String expected1 = getExpectedQuery(cubeName, "SELECT 0.0 as `alias0`, 0.0 as `alias1`, "
+ "sum((basecube.msr12)) as `alias2` FROM ", null, null,
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
- String expected2 = getExpectedQuery(cubeName, "SELECT sum((basecube.msr2)) as `alias0`, count(0.0) as `alias1`, "
- + "sum(0.0) as `alias2` FROM ", null,
+ String expected2 = getExpectedQuery(cubeName, "SELECT sum((basecube.msr2)) as `alias0`, 0.0 as `alias1`, "
+ + "0.0 as `alias2` FROM ", null,
null, getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
- String expected3 = getExpectedQuery(cubeName, "SELECT sum(0.0) as `alias0`, count((basecube.msr14)) as `alias1`, "
- + "sum(0.0) as `alias2` FROM ", null, null,
+ String expected3 = getExpectedQuery(cubeName, "SELECT 0.0 as `alias0`, count((basecube.msr14)) as `alias1`, "
+ + "0.0 as `alias2` FROM ", null, null,
getWhereForDailyAndHourly2days(cubeName, "C1_testFact3_BASE"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -251,9 +203,9 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
String hqlQuery = rewrite("select dim1, roundedmsr2, msr12 from basecube" + " where " + TWO_DAYS_RANGE, conf);
String expected1 =
getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum((basecube.msr2)) as `alias1`, "
- + "sum(0.0) as `alias2` FROM ", null, " group by basecube.dim1",
+ + "0.0 as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
- String expected2 = getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(0.0) as `alias1`, "
+ String expected2 = getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, "
+ "sum((basecube.msr12)) as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
compareContains(expected1, hqlQuery);
@@ -271,11 +223,11 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
Configuration tConf = new Configuration(conf);
tConf.setBoolean(CubeQueryConfUtil.LIGHTEST_FACT_FIRST, true);
String hqlQuery = rewrite("select dim1, roundedmsr2, msr12 from basecube" + " where " + TWO_DAYS_RANGE, tConf);
- String expected1 = getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(0.0) as `alias1`, "
+ String expected1 = getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, "
+ "sum((basecube.msr12)) as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 = getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum((basecube.msr2)) "
- + "as `alias1`, sum(0.0) as `alias2` FROM ", null, " group by basecube.dim1",
+ + "as `alias1`, 0.0 as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -292,11 +244,11 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
tConf.setBoolean(CubeQueryConfUtil.LIGHTEST_FACT_FIRST, true);
String hqlQuery = rewrite("select dim1, roundedmsr2, flooredmsr12 from basecube" + " where "
+ TWO_DAYS_RANGE, tConf);
- String expected1 = getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(0.0) as `alias1`, "
+ String expected1 = getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, "
+ "sum((basecube.msr12)) as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 = getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum((basecube.msr2)) "
- + "as `alias1`, sum(0.0) as `alias2` FROM ", null, " group by basecube.dim1",
+ + "as `alias1`, 0.0 as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -313,10 +265,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
String hqlQuery = rewrite("select dim1, msr12, roundedmsr2 from basecube" + " where " + TWO_DAYS_RANGE, conf);
String expected1 =
getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum((basecube.msr12)) as `alias1`, "
- + "sum(0.0) as `alias2` FROM", null, " group by basecube.dim1",
+ + "0.0 as `alias2` FROM", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim1) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr2)) as `alias2` FROM ", null,
+ "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, sum((basecube.msr2)) as `alias2` FROM ", null,
" group by basecube.dim1", getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -335,17 +287,17 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ TWO_DAYS_RANGE, conf);
String expected1 =
getExpectedQuery(cubeName, " SELECT (basecube.dim1) as `alias0`, (basecube.d_time) as `alias1`, "
- + "sum((basecube.msr12)) as `alias2`, sum(0.0) as `alias3`, max(0.0) as `alias4`, max(0.0) as `alias5` FROM ",
+ + "sum((basecube.msr12)) as `alias2`, 0.0 as `alias3`, 0.0 as `alias4`, 0.0 as `alias5` FROM ",
null, " group by basecube.dim1, (basecube.d_time)",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 = getExpectedQuery(
cubeName,
- "SELECT (basecube.dim1) as `alias0`, (basecube.d_time) as `alias1`, sum(0.0) as `alias2`, "
- + "sum((basecube.msr2)) as `alias3`, max(0.0) as `alias4`, max((basecube.msr3)) as `alias5` FROM ", null,
+ "SELECT (basecube.dim1) as `alias0`, (basecube.d_time) as `alias1`, 0.0 as `alias2`, "
+ + "sum((basecube.msr2)) as `alias3`, 0.0 as `alias4`, max((basecube.msr3)) as `alias5` FROM ", null,
" group by basecube.dim1, (basecube.d_time)", getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
String expected3 =
- getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, (basecube.d_time) as `alias1`, sum(0.0) "
- + "as `alias2`, sum(0.0) as `alias3`, max((basecube.msr13)) as `alias4`, max(0.0) as `alias5` FROM ", null,
+ getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, (basecube.d_time) as `alias1`, 0.0 "
+ + "as `alias2`, 0.0 as `alias3`, max((basecube.msr13)) as `alias4`, 0.0 as `alias5` FROM ", null,
" group by basecube.dim1, (basecube.d_time)", getWhereForDailyAndHourly2days(cubeName, "c1_testfact3_base"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -364,10 +316,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
// query two dim attributes
String hqlQuery = rewrite("select dim1, dim11, msr12, roundedmsr2 from basecube where " + TWO_DAYS_RANGE, conf);
String expected1 = getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, "
- + "sum((basecube.msr12)) as `alias2`, sum(0.0) as `alias3` FROM ", null, " group by basecube.dim1",
+ + "sum((basecube.msr12)) as `alias2`, 0.0 as `alias3` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 = getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, "
- + "sum(0.0) as `alias2`, sum((basecube.msr2)) as `alias3` FROM ", null, " group by basecube.dim1",
+ + "0.0 as `alias2`, sum((basecube.msr2)) as `alias3` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -406,10 +358,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
rewrite("select dim1 d1, msr12 `my msr12`, roundedmsr2 m2 from basecube where " + TWO_DAYS_RANGE, conf);
String expected1 =
getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum((basecube.msr12)) as `alias1`, "
- + "sum(0.0) as `alias2` FROM ", null, " group by basecube.dim1",
+ + "0.0 as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr2)) "
+ getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, sum((basecube.msr2)) "
+ "as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
@@ -428,10 +380,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ TWO_DAYS_RANGE, conf);
String expected1 =
getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum((basecube.msr12)) as `alias1`, "
- + "sum(0.0) as `alias2` FROM ", null, " group by basecube.dim1",
+ + "0.0 as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr2)) "
+ getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, sum((basecube.msr2)) "
+ "as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
@@ -450,10 +402,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
String expected1 =
getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum((basecube.msr12)) as `alias1`, "
- + "sum(0.0) as `alias2` FROM ", null, " group by basecube.dim1",
+ + "0.0 as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr2)) "
+ getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, sum((basecube.msr2)) "
+ "as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
@@ -473,10 +425,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
String expected1 =
getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum((basecube.msr12)) as `alias1`, "
- + "sum(0.0) as `alias2` FROM", null, " group by basecube.dim1",
+ + "0.0 as `alias2` FROM", null, " group by basecube.dim1",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr2)) "
+ getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, sum((basecube.msr2)) "
+ "as `alias2` FROM", null,
" group by basecube.dim1", getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
@@ -494,12 +446,12 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
rewrite("select reverse(dim1), ltrim(dim1), msr12, roundedmsr2 from basecube where " + TWO_DAYS_RANGE, conf);
String expected1 =
getExpectedQuery(cubeName, "SELECT reverse((basecube.dim1)) as `alias0`, ltrim((basecube.dim1)) as `alias1`, "
- + "sum((basecube.msr12)) as `alias2`, sum(0.0) as `alias3` FROM ", null,
+ + "sum((basecube.msr12)) as `alias2`, 0.0 as `alias3` FROM ", null,
" group by reverse(basecube.dim1), ltrim(basecube.dim1)",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 =
getExpectedQuery(cubeName, "SELECT reverse((basecube.dim1)) as `alias0`, ltrim((basecube.dim1)) as `alias1`, "
- + "sum(0.0) as `alias2`, sum((basecube.msr2)) as `alias3` FROM ", null,
+ + "0.0 as `alias2`, sum((basecube.msr2)) as `alias3` FROM ", null,
" group by reverse(basecube.dim1), ltrim(basecube.dim1)",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
@@ -519,11 +471,11 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
conf);
String expected1 =
getExpectedQuery(cubeName, "SELECT reverse((basecube.dim1)) as `alias0`, max((basecube.msr13)) as `alias1`, "
- + "count((basecube.msr14)) as `alias2`, sum(0.0) as `alias3` FROM", null,
+ + "count((basecube.msr14)) as `alias2`, 0.0 as `alias3` FROM", null,
" group by reverse(basecube.dim1)", getWhereForDailyAndHourly2days(cubeName, "C1_testFact3_BASE"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT reverse((basecube.dim1)) as `alias0`, max(0.0) as `alias1`, "
- + "count(0.0) as `alias2`, sum((basecube.msr2)) as `alias3` FROM", null,
+ getExpectedQuery(cubeName, "SELECT reverse((basecube.dim1)) as `alias0`, 0.0 as `alias1`, "
+ + "0.0 as `alias2`, sum((basecube.msr2)) as `alias3` FROM", null,
" group by reverse(basecube.dim1)", getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -541,10 +493,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
String hqlQuery = rewrite("select dim1, avg(msr12), avg(msr2) from basecube where " + TWO_DAYS_RANGE, conf);
String expected1 =
getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, avg((basecube.msr12)) as `alias1`,"
- + " avg(0.0) as `alias2` FROM ", null, " group by basecube.dim1",
+ + " 0.0 as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForHourly2days(cubeName, "C1_testfact2_raw_base"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, avg(0.0) as `alias1`, avg((basecube.msr2)) "
+ getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, avg((basecube.msr2)) "
+ "as `alias2` FROM ", null, " group by basecube.dim1",
getWhereForHourly2days(cubeName, "C1_testfact1_raw_base"));
compareContains(expected1, hqlQuery);
@@ -560,13 +512,13 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
// query with join
String hqlQuery = rewrite("select dim2chain.name, msr12, roundedmsr2 from basecube where " + TWO_DAYS_RANGE, conf);
String expected1 = getExpectedQuery(cubeName,
- "SELECT (dim2chain.name) as `alias0`, sum((basecube.msr12)) as `alias1`, sum(0.0) as `alias2` FROM ",
+ "SELECT (dim2chain.name) as `alias0`, sum((basecube.msr12)) as `alias1`, 0.0 as `alias2` FROM ",
" JOIN " + getDbName()
+ "c1_testdim2tbl dim2chain ON basecube.dim2 = "
+ " dim2chain.id and (dim2chain.dt = 'latest') ", null,
" group by dim2chain.name", null, getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
String expected2 = getExpectedQuery(cubeName,
- "SELECT (dim2chain.name) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr2)) as `alias2` FROM ", " JOIN "
+ "SELECT (dim2chain.name) as `alias0`, 0.0 as `alias1`, sum((basecube.msr2)) as `alias2` FROM ", " JOIN "
+ getDbName()
+ "c1_testdim2tbl dim2chain ON basecube.dim2 = "
+ " dim2chain.id and (dim2chain.dt = 'latest') ", null,
@@ -585,12 +537,12 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
// query with denorm variable
String hqlQuery = rewrite("select dim2, msr13, roundedmsr2 from basecube where " + TWO_DAYS_RANGE, conf);
String expected1 = getExpectedQuery(cubeName, "SELECT (dim2chain.id) as `alias0`, max((basecube.msr13)) "
- + "as `alias1`, sum(0.0) as `alias2` FROM ", " JOIN " + getDbName()
+ + "as `alias1`, 0.0 as `alias2` FROM ", " JOIN " + getDbName()
+ "c1_testdim2tbl dim2chain ON basecube.dim12 = "
+ " dim2chain.id and (dim2chain.dt = 'latest') ", null, " group by dim2chain.id", null,
getWhereForHourly2days(cubeName, "C1_testFact3_RAW_BASE"));
String expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim2) as `alias0`, max(0.0) as `alias1`, sum((basecube.msr2)) as `alias2` FROM ", null,
+ "SELECT (basecube.dim2) as `alias0`, 0.0 as `alias1`, sum((basecube.msr2)) as `alias2` FROM ", null,
" group by basecube.dim2", getWhereForHourly2days(cubeName, "C1_testfact1_raw_base"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -607,12 +559,12 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
String hqlQuery = rewrite("select dim2, msr13, roundedmsr2 from basecube where dim2 == 10 and " + TWO_DAYS_RANGE,
conf);
String expected1 = getExpectedQuery(cubeName, "SELECT (dim2chain.id) as `alias0`, max((basecube.msr13)) "
- + "as `alias1`, sum(0.0) as `alias2` FROM ", " JOIN " + getDbName()
+ + "as `alias1`, 0.0 as `alias2` FROM ", " JOIN " + getDbName()
+ "c1_testdim2tbl dim2chain ON basecube.dim12 = "
+ " dim2chain.id and (dim2chain.dt = 'latest') ", "dim2chain.id == 10", " group by dim2chain.id", null,
getWhereForHourly2days(cubeName, "C1_testFact3_RAW_BASE"));
String expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim2) as `alias0`, max(0.0) as `alias1`, sum((basecube.msr2)) as `alias2` FROM ",
+ "SELECT (basecube.dim2) as `alias0`, 0.0 as `alias1`, sum((basecube.msr2)) as `alias2` FROM ",
"basecube.dim2 == 10", " group by basecube.dim2",
getWhereForHourly2days(cubeName, "C1_testfact1_raw_base"));
compareContains(expected1, hqlQuery);
@@ -634,14 +586,14 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
conf);
String expected1 =
getExpectedQuery(cubeName, "SELECT (((basecube.dim1) != 'x') and ((dim2chain.id) != 10)) as `alias0`, "
- + "sum(0.0) as `alias1`, avg(((basecube.msr13) + (basecube.msr14))) as `alias2` FROM ", " JOIN "
+ + "0.0 as `alias1`, avg(((basecube.msr13) + (basecube.msr14))) as `alias2` FROM ", " JOIN "
+ getDbName() + "c1_testdim2tbl dim2chain ON basecube.dim12 = "
+ " dim2chain.id and (dim2chain.dt = 'latest') ", null,
" group by basecube.dim1 != 'x' AND dim2chain.id != 10", null,
getWhereForHourly2days(cubeName, "C1_testfact3_raw_base"));
String expected2 =
getExpectedQuery(cubeName, "SELECT (((basecube.dim1) != 'x') and ((basecube.dim2) != 10)) as `alias0`, "
- + "sum((basecube.msr2)) as `alias1`, avg(0.0) as `alias2` FROM", null,
+ + "sum((basecube.msr2)) as `alias1`, 0.0 as `alias2` FROM", null,
" group by basecube.dim1 != 'x' AND basecube.dim2 != 10",
getWhereForHourly2days(cubeName, "C1_testfact1_raw_base"));
compareContains(expected1, hqlQuery);
@@ -664,14 +616,14 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ TWO_DAYS_RANGE, conf);
String expected1 =
getExpectedQuery(cubeName, "SELECT (((basecube.dim1) != 'x') and ((dim2chain.id) != 10)) as `alias0`, "
- + "sum(0.0) as `alias1`, avg(((basecube.msr13) + (basecube.msr14))) as `alias2` FROM ", " JOIN " + getDbName()
+ + "0.0 as `alias1`, avg(((basecube.msr13) + (basecube.msr14))) as `alias2` FROM ", " JOIN " + getDbName()
+ "c1_testdim2tbl dim2chain ON basecube.dim12 = " + " dim2chain.id and (dim2chain.dt = 'latest') ",
"(basecube.dim1 != 'x' AND dim2chain.id != 10) == true",
" group by basecube.dim1 != 'x' AND dim2chain.id != 10", null,
getWhereForHourly2days(cubeName, "C1_testfact3_raw_base"));
String expected2 =
getExpectedQuery(cubeName, "SELECT (((basecube.dim1) != 'x') and ((basecube.dim2) != 10)) as `alias0`, "
- + "sum((basecube.msr2)) as `alias1`, avg(0.0) as `alias2` FROM ",
+ + "sum((basecube.msr2)) as `alias1`, 0.0 as `alias2` FROM ",
"(basecube.dim1 != 'x' AND basecube.dim2 != 10) == true",
" group by basecube.dim1 != 'x' AND basecube.dim2 != 10",
getWhereForHourly2days(cubeName, "C1_testfact1_raw_base"));
@@ -692,12 +644,12 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
String hqlQuery =
rewrite("select booleancut, round(sum(msr2)/1000), msr13 from basecube where " + TWO_DAYS_RANGE, tconf);
String expected1 =
- getExpectedQuery(cubeName, "SELECT (basecube.booleancut) as `alias0`, sum(0.0) as `alias1`, "
+ getExpectedQuery(cubeName, "SELECT (basecube.booleancut) as `alias0`, 0.0 as `alias1`, "
+ "max((basecube.msr13)) as `alias2` FROM", null, " "
+ "group by basecube.booleancut", getWhereForDailyAndHourly2days(cubeName, "C1_testfact6_base"));
String expected2 =
getExpectedQuery(cubeName, "SELECT (basecube.booleancut) as `alias0`, sum((basecube.msr2)) as `alias1`, "
- + "max(0.0) as `alias2` FROM ", null, " group by basecube.booleancut",
+ + "0.0 as `alias2` FROM ", null, " group by basecube.booleancut",
getWhereForDailyAndHourly2days(cubeName, "C1_testfact5_base"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -717,10 +669,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ TWO_DAYS_RANGE, tconf);
String expected1 =
getExpectedQuery(cubeName, "SELECT sum(case when ((basecube.dim22) = 'x') then (basecube.msr12) else 0 end) "
- + "as `alias0`, sum(0.0) as `alias1` FROM ", null, null,
+ + "as `alias0`, 0.0 as `alias1` FROM ", null, null,
getWhereForHourly2days(cubeName, "C1_testfact2_raw_base"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT sum(0.0) as `alias0`, sum((basecube.msr1)) as `alias1` FROM ", null, null,
+ getExpectedQuery(cubeName, "SELECT 0.0 as `alias0`, sum((basecube.msr1)) as `alias1` FROM ", null, null,
getWhereForHourly2days(cubeName, "c1_testfact1_raw_base"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -737,10 +689,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ TWO_DAYS_RANGE, tconf);
String expected1 =
getExpectedQuery(cubeName, "SELECT sum(case when ((basecube.dim13) = 'x') then (basecube.msr12) else 0 end) "
- + "as `alias0`, sum(0.0) as `alias1` FROM ", null, null,
+ + "as `alias0`, 0.0 as `alias1` FROM ", null, null,
getWhereForHourly2days(cubeName, "C1_testfact2_raw_base"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT sum(0.0) as `alias0`, sum((basecube.msr1)) as `alias1` FROM ", null, null,
+ getExpectedQuery(cubeName, "SELECT 0.0 as `alias0`, sum((basecube.msr1)) as `alias1` FROM ", null, null,
getWhereForHourly2days(cubeName, "c1_testfact1_raw_base"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -757,11 +709,11 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "where " + TWO_DAYS_RANGE, tconf);
String expected1 =
getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(case when ((basecube.dim13) = 'x') "
- + "then (basecube.msr12) else 0 end) as `alias1`, sum(0.0) as `alias2` FROM ", null,
+ + "then (basecube.msr12) else 0 end) as `alias1`, 0.0 as `alias2` FROM ", null,
" group by basecube.dim1 ",
getWhereForHourly2days(cubeName, "C1_testfact2_raw_base"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr1)) "
+ getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, sum((basecube.msr1)) "
+ "as `alias2` FROM", null,
" group by basecube.dim1 ", getWhereForHourly2days(cubeName, "c1_testfact1_raw_base"));
compareContains(expected1, hqlQuery);
@@ -783,10 +735,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "and sum(msr1) > 500", tconf);
String expected1 =
getExpectedQuery(cubeName, "SELECT sum(case when ((basecube.dim13) = 'x') then (basecube.msr12) else 0 end) "
- + "as `alias0`, sum(0.0) as `alias1` FROM ", null, "",
+ + "as `alias0`, 0.0 as `alias1` FROM ", null, "",
getWhereForHourly2days(cubeName, "C1_testfact2_raw_base"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT sum(0.0) as `alias0`, sum((basecube.msr1)) as `alias1` FROM ", null, "",
+ getExpectedQuery(cubeName, "SELECT 0.0 as `alias0`, sum((basecube.msr1)) as `alias1` FROM ", null, "",
getWhereForHourly2days(cubeName, "c1_testfact1_raw_base"));
compareContains(expected1, hqlQuery);
compareContains(expected2, hqlQuery);
@@ -805,10 +757,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "and sum(msr1) > 500", tconf);
String expected1 =
getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(case when ((basecube.dim13) = 'x') then "
- + "(basecube.msr12) else 0 end) as `alias1`, sum(0.0) as `alias2` FROM", null, " group by basecube.dim1",
+ + "(basecube.msr12) else 0 end) as `alias1`, 0.0 as `alias2` FROM", null, " group by basecube.dim1",
getWhereForHourly2days(cubeName, "C1_testfact2_raw_base"));
String expected2 =
- getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr1)) "
+ getExpectedQuery(cubeName, "SELECT (basecube.dim1) as `alias0`, 0.0 as `alias1`, sum((basecube.msr1)) "
+ "as `alias2` FROM", null, " group by basecube.dim1",
getWhereForHourly2days(cubeName, "c1_testfact1_raw_base"));
compareContains(expected1, hqlQuery);
@@ -903,10 +855,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "having roundedmsr2 > 0", conf);
expected1 = getExpectedQuery(cubeName,
"SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum((basecube.msr12)) "
- + "as `alias2`, sum(0.0) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
+ + "as `alias2`, 0.0 as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum(0.0) as `alias2`, "
+ "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, 0.0 as `alias2`, "
+ "sum((basecube.msr2)) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
@@ -922,10 +874,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "having msr12 > 2 and roundedmsr2 > 0", conf);
expected1 = getExpectedQuery(cubeName,
"SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum((basecube.msr12)) as `alias2`, "
- + "sum(0.0) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
+ + "0.0 as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum(0.0) as `alias2`, "
+ "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, 0.0 as `alias2`, "
+ "sum((basecube.msr2)) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
@@ -941,11 +893,11 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "having msr12+roundedmsr2 <= 1000 and msr12 > 2 and roundedmsr2 > 0", conf);
expected1 = getExpectedQuery(cubeName,
"SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum((basecube.msr12)) as `alias2`, "
- + "sum(0.0) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
+ + "0.0 as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum(0.0) as `alias2`, "
+ "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, 0.0 as `alias2`, "
+ "sum((basecube.msr2)) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
@@ -961,10 +913,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "having msr12+roundedmsr2 <= 1000", conf);
expected1 = getExpectedQuery(cubeName,
"SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum((basecube.msr12)) as `alias2`, "
- + "sum(0.0) as `alias3` FROM", null, " group by basecube.dim1, basecube.dim11",
+ + "0.0 as `alias3` FROM", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum(0.0) as `alias2`, sum((basecube.msr2)) "
+ "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, 0.0 as `alias2`, sum((basecube.msr2)) "
+ "as `alias3` FROM", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
@@ -981,10 +933,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "having round(msr12+roundedmsr2) <= 1000", conf);
expected1 = getExpectedQuery(cubeName,
"SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum((basecube.msr12)) as `alias2`, "
- + "sum(0.0) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
+ + "0.0 as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
expected2 = getExpectedQuery(cubeName,
- " SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum(0.0) as `alias2`, "
+ " SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, 0.0 as `alias2`, "
+ "sum((basecube.msr2)) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
@@ -1006,10 +958,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "having msr12 > 2 and roundedmsr2 > 0", conf);
expected1 = getExpectedQuery(cubeName,
"SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum((basecube.msr12)) as `alias2`, "
- + "sum(0.0) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
+ + "0.0 as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum(0.0) as `alias2`, "
+ "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, 0.0 as `alias2`, "
+ "sum((basecube.msr2)) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
String begin = "select (basecube.alias0) as `dim1`, (basecube.alias1) as `dim11` from";
@@ -1024,10 +976,10 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "having msr12 > 2 and roundedmsr2 > 0 and msr2 > 100", conf);
expected1 = getExpectedQuery(cubeName,
"SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum((basecube.msr12)) as `alias2`, "
- + "sum(0.0) as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
+ + "0.0 as `alias3` FROM ", null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum(0.0) as `alias2`, "
+ "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, 0.0 as `alias2`, "
+ "sum((basecube.msr2)) as `alias3` FROM ", null,
" group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
@@ -1043,11 +995,11 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "having msr12+roundedmsr2 <= 1000", conf);
expected1 = getExpectedQuery(cubeName,
"SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum((basecube.msr12)) "
- + "as `alias2`, sum(0.0) as `alias3` FROM ",
+ + "as `alias2`, 0.0 as `alias3` FROM ",
null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum(0.0) as `alias2`, "
+ "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, 0.0 as `alias2`, "
+ "sum((basecube.msr2)) as `alias3` FROM ",
null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
@@ -1064,11 +1016,11 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "having msr12 > 2 and roundedmsr2 > 0 and msr12+roundedmsr2 <= 1000", conf);
expected1 = getExpectedQuery(cubeName,
"SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum((basecube.msr12)) as `alias2`, "
- + "sum(0.0) as `alias3` FROM ",
+ + "0.0 as `alias3` FROM ",
null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum(0.0) as `alias2`, "
+ "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, 0.0 as `alias2`, "
+ "sum((basecube.msr2)) as `alias3` FROM ",
null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
@@ -1086,11 +1038,11 @@ public class TestBaseCubeQueries extends TestQueryRewrite {
+ "having msr12 > 2 or roundedmsr2 > 0 or msr12+roundedmsr2 <= 1000", conf);
expected1 = getExpectedQuery(cubeName,
"SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum((basecube.msr12)) as `alias2`, "
- + "sum(0.0) as `alias3` FROM ",
+ + "0.0 as `alias3` FROM ",
null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact2_BASE"));
expected2 = getExpectedQuery(cubeName,
- "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, sum(0.0) as `alias2`, "
+ "SELECT (basecube.dim1) as `alias0`, (basecube.dim11) as `alias1`, 0.0 as `alias2`, "
+ "sum((basecube.msr2)) as `alias3` FROM ",
null, " group by basecube.dim1, basecube.dim11",
getWhereForDailyAndHourly2days(cubeName, "C1_testFact1_BASE"));
http://git-wip-us.apache.org/repos/asf/lens/blob/cb5e2a77/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java
----------------------------------------------------------------------
diff --git a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java
index 4331843..5c57781 100644
--- a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java
+++ b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBetweenTimeRangeWriter.java
@@ -20,6 +20,7 @@
package org.apache.lens.cube.parse;
import static java.util.Optional.*;
+
import static org.apache.lens.cube.metadata.DateFactory.*;
import static org.apache.lens.cube.metadata.UpdatePeriod.DAILY;
@@ -122,7 +123,7 @@ public class TestBetweenTimeRangeWriter extends TestTimeRangeWriter {
@DataProvider
public Object[][] getBoundTypes() {
- return new Object[][]{{OPEN, OPEN}, {OPEN,CLOSED},{CLOSED,OPEN},{CLOSED,CLOSED}};
+ return new Object[][]{{OPEN, OPEN}, {OPEN, CLOSED}, {CLOSED, OPEN}, {CLOSED, CLOSED}};
}
@Test(dataProvider = "getBoundTypes")
@@ -150,7 +151,8 @@ public class TestBetweenTimeRangeWriter extends TestTimeRangeWriter {
}
- private void validateBetweenBoundTypes(String whereClause, DateFormat format, int testStartOffset, int testEndOffset) {
+ private void validateBetweenBoundTypes(String whereClause, DateFormat format,
+ int testStartOffset, int testEndOffset) {
String expected = getBetweenClause("test", "dt", getDateWithOffset(DAILY, testStartOffset),
getDateWithOffset(DAILY, testEndOffset), ofNullable(format).orElseGet(DAILY::format));
Assert.assertEquals(expected, whereClause);
http://git-wip-us.apache.org/repos/asf/lens/blob/cb5e2a77/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java
----------------------------------------------------------------------
diff --git a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java
index 2bf1ef8..9fbeb41 100644
--- a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java
+++ b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestBridgeTableQueries.java
@@ -206,7 +206,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
String query = "select usersports.name, msr2, msr12 from basecube where " + TWO_DAYS_RANGE;
String hqlQuery = rewrite(query, hConf);
String expected1 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, sum(0.0) as `alias2` FROM ",
+ "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, 0.0 as `alias2` FROM ",
" join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as balias0" + " from "
@@ -215,7 +215,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ " group by user_interests.user_id) usersports" + " on userdim.id = usersports.user_id ", null,
"group by usersports.balias0", null, getWhereForDailyAndHourly2days("basecube", "c1_testfact1_base"));
String expected2 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr12)) as `alias2` FROM ",
+ "SELECT (usersports.balias0) as `alias0`, 0.0 as `alias1`, sum((basecube.msr12)) as `alias2` FROM ",
" join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as balias0" + " from "
@@ -238,7 +238,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
query = "select sports, msr2, msr12 from basecube where " + TWO_DAYS_RANGE;
hqlQuery = rewrite(query, hConf);
expected1 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, sum(0.0) as `alias2` FROM ",
+ "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, 0.0 as `alias2` FROM ",
" join " + getDbName() + "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as balias0" + " from "
+ getDbName() + "c1_user_interests_tbl user_interests" + " join " + getDbName()
@@ -246,7 +246,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ " group by user_interests.user_id) usersports" + " on userdim.id = usersports.user_id ", null,
"group by usersports.balias0", null, getWhereForDailyAndHourly2days("basecube", "c1_testfact1_base"));
expected2 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr12)) "
+ "SELECT (usersports.balias0) as `alias0`, 0.0 as `alias1`, sum((basecube.msr12)) "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as balias0" + " from "
@@ -625,7 +625,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ " and usersports.name = 'CRICKET'";
String hqlQuery = rewrite(query, hConf);
String expected1 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, sum(0.0) "
+ "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, 0.0 "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as balias0" + " from "
@@ -635,7 +635,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
" and array_contains(usersports.balias0,'CRICKET') group by usersports.balias0", null,
getWhereForDailyAndHourly2days("basecube", "c1_testfact1_base"));
String expected2 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr12)) "
+ "SELECT (usersports.balias0) as `alias0`, 0.0 as `alias1`, sum((basecube.msr12)) "
+ "as `alias2` FROM", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as balias0" + " from "
@@ -656,7 +656,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
query = "select sports, msr2, msr12 from basecube where " + TWO_DAYS_RANGE + " and sports = 'CRICKET'";
hqlQuery = rewrite(query, hConf);
expected1 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, sum(0.0) "
+ "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, 0.0 "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as balias0" + " from "
@@ -666,7 +666,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
"and array_contains(usersports.balias0,'CRICKET') group by usersports.balias0", null,
getWhereForDailyAndHourly2days("basecube", "c1_testfact1_base"));
expected2 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr12)) "
+ "SELECT (usersports.balias0) as `alias0`, 0.0 as `alias1`, sum((basecube.msr12)) "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as balias0" + " from "
@@ -693,7 +693,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ " and usersports.name = 'CRICKET,FOOTBALL'";
String hqlQuery = rewrite(query, conf);
String expected1 = getExpectedQuery("basecube",
- "SELECT (usersports.name) as `alias0`, sum((basecube.msr2)) as `alias1`, sum(0.0) as `alias2` FROM ",
+ "SELECT (usersports.name) as `alias0`, sum((basecube.msr2)) as `alias1`, 0.0 as `alias2` FROM ",
" join " + getDbName() + "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as name" + " from "
+ getDbName() + "c1_user_interests_tbl user_interests" + " join " + getDbName()
@@ -702,7 +702,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
" and usersports.name = 'CRICKET,FOOTBALL' group by usersports.name", null,
getWhereForDailyAndHourly2days("basecube", "c1_testfact1_base"));
String expected2 = getExpectedQuery("basecube",
- "SELECT (usersports.name) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr12)) as `alias2` FROM ",
+ "SELECT (usersports.name) as `alias0`, 0.0 as `alias1`, sum((basecube.msr12)) as `alias2` FROM ",
" join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as name" + " from "
@@ -724,7 +724,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ " and sports = 'CRICKET,FOOTBALL'";
hqlQuery = rewrite(query, conf);
expected1 = getExpectedQuery("basecube",
- "SELECT (usersports.name) as `alias0`, sum((basecube.msr2)) as `alias1`, sum(0.0) "
+ "SELECT (usersports.name) as `alias0`, sum((basecube.msr2)) as `alias1`, 0.0 "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as name" + " from "
@@ -734,7 +734,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
" and usersports.name = 'CRICKET,FOOTBALL' group by usersports.name", null,
getWhereForDailyAndHourly2days("basecube", "c1_testfact1_base"));
expected2 = getExpectedQuery("basecube",
- "SELECT (usersports.name) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr12)) "
+ "SELECT (usersports.name) as `alias0`, 0.0 as `alias1`, sum((basecube.msr12)) "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as name" + " from "
@@ -878,7 +878,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ " and usersports.name in ('CRICKET', 'FOOTBALL')";
String hqlQuery = rewrite(query, hConf);
String expected1 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, sum(0.0) "
+ "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, 0.0 "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id, collect_set(substr(usersports.name, 3)) as balias0, "
@@ -890,7 +890,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ " group by usersports.balias0", null,
getWhereForDailyAndHourly2days("basecube", "c1_testfact1_base"));
String expected2 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr12)) as `alias2` FROM "
+ "SELECT (usersports.balias0) as `alias0`, 0.0 as `alias1`, sum((basecube.msr12)) as `alias2` FROM "
, " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id, collect_set(substr(usersports.name, 3)) as balias0, "
@@ -915,7 +915,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ "('CRICKET', 'FOOTBALL')";
hqlQuery = rewrite(query, hConf);
expected1 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, sum(0.0) "
+ "SELECT (usersports.balias0) as `alias0`, sum((basecube.msr2)) as `alias1`, 0.0 "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id, collect_set(substr((usersports.name), 3)) as balias0, "
@@ -927,7 +927,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ " group by usersports.balias0", null,
getWhereForDailyAndHourly2days("basecube", "c1_testfact1_base"));
expected2 = getExpectedQuery("basecube",
- "SELECT (usersports.balias0) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr12)) "
+ "SELECT (usersports.balias0) as `alias0`, 0.0 as `alias1`, sum((basecube.msr12)) "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id, collect_set(substr((usersports.name), 3)) as balias0,"
@@ -957,7 +957,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ " and usersports.name = 'CRICKET,FOOTBALL'";
String hqlQuery = rewrite(query, conf);
String expected1 = getExpectedQuery("basecube",
- "SELECT substr((usersports.name), 3) as `alias0`, sum((basecube.msr2)) as `alias1`, sum(0.0) "
+ "SELECT substr((usersports.name), 3) as `alias0`, sum((basecube.msr2)) as `alias1`, 0.0 "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as name" + " from "
@@ -967,7 +967,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
" and usersports.name = 'CRICKET,FOOTBALL' group by substr(usersports.name, 3)", null,
getWhereForDailyAndHourly2days("basecube", "c1_testfact1_base"));
String expected2 = getExpectedQuery("basecube",
- "SELECT substr((usersports.name), 3) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr12)) "
+ "SELECT substr((usersports.name), 3) as `alias0`, 0.0 as `alias1`, sum((basecube.msr12)) "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as name" + " from "
@@ -990,7 +990,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
+ "'CRICKET,FOOTBALL'";
hqlQuery = rewrite(query, conf);
expected1 = getExpectedQuery("basecube",
- "SELECT substr((usersports.name), 3) as `alias0`, sum((basecube.msr2)) as `alias1`, sum(0.0) "
+ "SELECT substr((usersports.name), 3) as `alias0`, sum((basecube.msr2)) as `alias1`, 0.0 "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as name" + " from "
@@ -1000,7 +1000,7 @@ public class TestBridgeTableQueries extends TestQueryRewrite {
" and usersports.name = 'CRICKET,FOOTBALL' group by substr(usersports.name, 3)", null,
getWhereForDailyAndHourly2days("basecube", "c1_testfact1_base"));
expected2 = getExpectedQuery("basecube",
- "SELECT substr((usersports.name), 3) as `alias0`, sum(0.0) as `alias1`, sum((basecube.msr12)) "
+ "SELECT substr((usersports.name), 3) as `alias0`, 0.0 as `alias1`, sum((basecube.msr12)) "
+ "as `alias2` FROM ", " join " + getDbName()
+ "c1_usertable userdim ON basecube.userid = userdim.id "
+ " join (select user_interests.user_id as user_id,collect_set(usersports.name) as name" + " from "
http://git-wip-us.apache.org/repos/asf/lens/blob/cb5e2a77/lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java
----------------------------------------------------------------------
diff --git a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java
index 6c9afdd..bab1080 100644
--- a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java
+++ b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestCubeRewriter.java
@@ -30,7 +30,6 @@ import static org.testng.Assert.*;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
-import java.util.stream.Stream;
import org.apache.lens.cube.error.LensCubeErrorCode;
import org.apache.lens.cube.error.NoCandidateDimAvailableException;
@@ -52,7 +51,6 @@ import org.apache.hadoop.hive.ql.processors.CommandProcessorResponse;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
-import com.google.common.base.Splitter;
import com.google.common.collect.Iterables;
import com.google.common.collect.Sets;
import lombok.extern.slf4j.Slf4j;
@@ -79,8 +77,8 @@ public class TestCubeRewriter extends TestQueryRewrite {
@Test
public void testQueryWithNow() throws Exception {
- LensException e = getLensExceptionInRewrite( // rewrites with original time_range_in
- "select SUM(msr2) from testCube where " + getTimeRangeString("NOW - 2DAYS", "NOW"), getConf());
+ LensException e = getLensExceptionInRewrite(
+ "select SUM(msr2) from testCube where " + getTimeRangeString("NOW - 2DAYS", "NOW"), getConf());
assertEquals(e.getErrorCode(), LensCubeErrorCode.NO_CANDIDATE_FACT_AVAILABLE.getLensErrorInfo().getErrorCode());
}
@@ -1059,7 +1057,7 @@ public class TestCubeRewriter extends TestQueryRewrite {
pr2.addPruningMsg(new CubeDimensionTable(new Table("test", "citydim")),
CandidateTablePruneCause.expressionNotEvaluable("testexp1", "testexp2"));
NoCandidateDimAvailableException ne2 = new NoCandidateDimAvailableException(pr2);
- assertEquals(ne1.compareTo(ne2), -12);
+ assertEquals(ne1.compareTo(ne2), -7);
}
@Test
@@ -1089,6 +1087,7 @@ public class TestCubeRewriter extends TestQueryRewrite {
new HashMap<String, CandidateTablePruneCause.CandidateTablePruneCode>() {
{
put("c1_statetable", CandidateTablePruneCause.CandidateTablePruneCode.NO_PARTITIONS);
+ put("c6_statetable", CandidateTablePruneCause.CandidateTablePruneCode.UNSUPPORTED_STORAGE);
}
}))
);
@@ -1391,7 +1390,7 @@ public class TestCubeRewriter extends TestQueryRewrite {
Date nextToNextDay = DateUtils.addDays(nextDay, 1);
HashSet<String> storageTables = Sets.newHashSet();
for (StorageCandidate sc : CandidateUtil.getStorageCandidates(candidate)) {
- storageTables.add(sc.getName());
+ storageTables.add(sc.getStorageTable());
}
TreeSet<FactPartition> expectedPartsQueried = Sets.newTreeSet();
for (TimePartition p : Iterables.concat(
http://git-wip-us.apache.org/repos/asf/lens/blob/cb5e2a77/lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java
----------------------------------------------------------------------
diff --git a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java
index 7874a66..d97c0e6 100644
--- a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java
+++ b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestDenormalizationResolver.java
@@ -19,13 +19,13 @@
package org.apache.lens.cube.parse;
-import static com.google.common.collect.Lists.newArrayList;
-import static com.google.common.collect.Sets.newHashSet;
-
import static org.apache.lens.cube.metadata.DateFactory.*;
import static org.apache.lens.cube.parse.CandidateTablePruneCause.columnNotFound;
import static org.apache.lens.cube.parse.CubeTestSetup.*;
+import static com.google.common.collect.Lists.newArrayList;
+import static com.google.common.collect.Sets.newHashSet;
+
import java.util.*;
import org.apache.lens.cube.error.NoCandidateFactAvailableException;
@@ -194,7 +194,7 @@ public class TestDenormalizationResolver extends TestQueryRewrite {
"select dim2big2, max(msr3)," + " msr2 from testCube" + " where " + TWO_DAYS_RANGE, tconf);
NoCandidateFactAvailableException ne = (NoCandidateFactAvailableException) e;
PruneCauses.BriefAndDetailedError error = ne.getJsonMessage();
- Assert.assertEquals(error.getBrief(), CandidateTablePruneCode.UNSUPPORTED_STORAGE.errorFormat);
+ Assert.assertEquals(error.getBrief(), CandidateTablePruneCode.INVALID_DENORM_TABLE.errorFormat);
Map<HashSet<String>, List<CandidateTablePruneCause>> enhanced = error.enhanced();
Map<Set<String>, List<CandidateTablePruneCause>> expected = Maps.newHashMap();
@@ -343,7 +343,7 @@ public class TestDenormalizationResolver extends TestQueryRewrite {
CubeQueryContext cubeql = rewriteCtx("select citydim.zipcode, citydim.statename from" + " citydim", tConf);
Set<String> candidateDims = new HashSet<>();
for (CandidateDim cdim : cubeql.getCandidateDims().get(cubeql.getMetastoreClient().getDimension("citydim"))) {
- candidateDims.add(cdim.getName());
+ candidateDims.add(cdim.getStorageTable());
}
// city_table2 contains stateid, but not zipcode - it should have been removed.
Assert.assertFalse(candidateDims.contains("city_table2"));
http://git-wip-us.apache.org/repos/asf/lens/blob/cb5e2a77/lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java
----------------------------------------------------------------------
diff --git a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java
index d4ffefe..d3938c1 100644
--- a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java
+++ b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestTimeRangeResolver.java
@@ -19,23 +19,14 @@
package org.apache.lens.cube.parse;
-import static com.google.common.collect.Sets.newHashSet;
import static org.apache.lens.cube.metadata.DateFactory.*;
-import static org.apache.lens.cube.parse.CandidateTablePruneCause.CandidateTablePruneCode.COLUMN_NOT_FOUND;
-import static org.apache.lens.cube.parse.CandidateTablePruneCause.CandidateTablePruneCode.PART_COL_DOES_NOT_EXIST;
-import static
- org.apache.lens.cube.parse.CandidateTablePruneCause.CandidateTablePruneCode.STORAGE_NOT_AVAILABLE_IN_RANGE;
import static org.apache.lens.cube.parse.CandidateTablePruneCause.CandidateTablePruneCode.TIME_RANGE_NOT_ANSWERABLE;
import static org.apache.lens.cube.parse.CandidateTablePruneCause.CandidateTablePruneCode.UNSUPPORTED_STORAGE;
import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertTrue;
import java.util.*;
-import java.util.stream.Collectors;
-import org.apache.lens.cube.error.NoCandidateFactAvailableException;
-import org.apache.lens.cube.metadata.TimeRange;
import org.apache.lens.server.api.LensConfConstants;
import org.apache.lens.server.api.error.LensException;
@@ -47,7 +38,6 @@ import org.joda.time.DateTime;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
-import com.google.common.collect.Sets;
public class TestTimeRangeResolver extends TestQueryRewrite {
@@ -72,16 +62,9 @@ public class TestTimeRangeResolver extends TestQueryRewrite {
@Test
public void testFactValidity() throws ParseException, LensException, HiveException, ClassNotFoundException {
- LensException e =
- getLensExceptionInRewrite("select msr2 from " + cubeName + " where " + LAST_YEAR_RANGE,
- getConf());
- NoCandidateFactAvailableException ne = (NoCandidateFactAvailableException) e;
- PruneCauses.BriefAndDetailedError causes = ne.getJsonMessage();
- assertTrue(causes.getBrief().contains("No storages available for all of these time ranges: "
- + "[dt [2016-01-01-00:00:00,000 to 2017-01-01-00:00:00,000)]"), causes.getBrief());
- assertEquals(causes.getDetails().values().stream().flatMap(Collection::stream)
- .map(CandidateTablePruneCause::getCause).collect(Collectors.toSet()), newHashSet(COLUMN_NOT_FOUND,
- PART_COL_DOES_NOT_EXIST, UNSUPPORTED_STORAGE, STORAGE_NOT_AVAILABLE_IN_RANGE));
+ String query = "select msr2 from " + cubeName + " where " + LAST_YEAR_RANGE;
+ LensException e = getLensExceptionInRewrite(query, getConf());
+ assertEquals(e.getErrorInfo().getErrorName(), "NO_UNION_CANDIDATE_AVAILABLE");
}
@Test
@@ -118,14 +101,9 @@ public class TestTimeRangeResolver extends TestQueryRewrite {
Configuration conf = getConf();
DateTime dt = new DateTime(1990, 3, 23, 12, 0, 0, 0);
conf.setLong(LensConfConstants.QUERY_CURRENT_TIME_IN_MILLIS, dt.getMillis());
- NoCandidateFactAvailableException e =
- (NoCandidateFactAvailableException)getLensExceptionInRewrite(
- "select msr12 from basecube where time_range_in(d_time, 'now.day-275days','now')", conf);
- TimeRange timeRange = e.getCubeQueryContext().getTimeRanges().get(0);
- // Month starts from zero.
- Calendar from = new GregorianCalendar(1989, 5, 21, 0, 0, 0);
- assertEquals(timeRange.getFromDate(), from.getTime());
- assertEquals(timeRange.getToDate(), dt.toDate());
+ String query = "select msr12 from basecube where time_range_in(d_time, 'now.day-275days','now')";
+ LensException e = getLensExceptionInRewrite(query, conf);
+ assertEquals(e.getMessage(), "NO_CANDIDATE_FACT_AVAILABLE[Range not answerable]");
}
/**
@@ -137,7 +115,7 @@ public class TestTimeRangeResolver extends TestQueryRewrite {
private static List<CandidateTablePruneCause> findPruningMessagesForStorage(String stoargeName,
PruneCauses<StorageCandidate> allStoragePruningMsgs) {
for (StorageCandidate sc : allStoragePruningMsgs.keySet()) {
- if (sc.getName().equals(stoargeName)) {
+ if (sc.getStorageTable().equals(stoargeName)) {
return allStoragePruningMsgs.get(sc);
}
}
http://git-wip-us.apache.org/repos/asf/lens/blob/cb5e2a77/lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java
----------------------------------------------------------------------
diff --git a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java
index f5f7f3e..0119f2e 100644
--- a/lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java
+++ b/lens-cube/src/test/java/org/apache/lens/cube/parse/TestUnionAndJoinCandidates.java
@@ -25,8 +25,6 @@ import static org.apache.lens.cube.parse.TestCubeRewriter.compareContains;
import static org.testng.Assert.*;
-import jodd.util.StringUtil;
-import org.apache.hadoop.util.StringUtils;
import org.apache.lens.server.api.LensServerAPITestUtil;
import org.apache.lens.server.api.error.LensException;
@@ -36,6 +34,8 @@ import org.apache.hadoop.hive.ql.parse.ParseException;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
+import jodd.util.StringUtil;
+
public class TestUnionAndJoinCandidates extends TestQueryRewrite {
private Configuration conf;
@@ -76,7 +76,7 @@ public class TestUnionAndJoinCandidates extends TestQueryRewrite {
assertEquals(StringUtil.count(rewrittenQuery, "sum((basecube.union_join_ctx_msr1))"), 2);
}
- @Test
+ @Test
public void testFinalCandidateRewrittenQuery() throws ParseException, LensException {
try {
// Query with non projected measure in having clause.
@@ -85,12 +85,12 @@ public class TestUnionAndJoinCandidates extends TestQueryRewrite {
String whereCond = " union_join_ctx_zipcode = 'a' and union_join_ctx_cityid = 'b' and "
+ "(" + TWO_MONTHS_RANGE_UPTO_DAYS + ")";
String rewrittenQuery = rewrite("select " + colsSelected + " from basecube where " + whereCond + having, conf);
- String expectedInnerSelect1 = "SELECT (basecube.union_join_ctx_cityid) as `alias0`, sum(0.0) as `alias1`, "
+ String expectedInnerSelect1 = "SELECT (basecube.union_join_ctx_cityid) as `alias0`, 0.0 as `alias1`, "
+ "sum((basecube.union_join_ctx_msr1)) as `alias2` FROM TestQueryRewrite.c1_union_join_ctx_fact1 basecube ";
- String expectedInnerSelect2 = "SELECT (basecube.union_join_ctx_cityid) as `alias0`, sum(0.0) as `alias1`, "
+ String expectedInnerSelect2 = "SELECT (basecube.union_join_ctx_cityid) as `alias0`, 0.0 as `alias1`, "
+ "sum((basecube.union_join_ctx_msr1)) as `alias2` FROM TestQueryRewrite.c1_union_join_ctx_fact2 basecube ";
String expectedInnerSelect3 = " SELECT (basecube.union_join_ctx_cityid) as `alias0`, "
- + "sum((basecube.union_join_ctx_msr2)) as `alias1`, sum(0.0) as `alias2` "
+ + "sum((basecube.union_join_ctx_msr2)) as `alias1`, 0.0 as `alias2` "
+ "FROM TestQueryRewrite.c1_union_join_ctx_fact3 basecube ";
String outerHaving = "HAVING (sum((basecube.alias2)) > 100)";
compareContains(expectedInnerSelect1, rewrittenQuery);
@@ -111,14 +111,14 @@ public class TestUnionAndJoinCandidates extends TestQueryRewrite {
expectedInnerSelect1 = "SELECT (basecube.union_join_ctx_cityid) as `alias0`, (cubecityjoinunionctx.name) "
+ "as `alias1`, case when (basecube.union_join_ctx_cityid) is null then 0 else "
+ "(basecube.union_join_ctx_cityid) end as `alias2`, sum((basecube.union_join_ctx_msr1)) as `alias3`, "
- + "sum(0.0) as `alias4` FROM TestQueryRewrite.c1_union_join_ctx_fact1 basecube";
+ + "0.0 as `alias4` FROM TestQueryRewrite.c1_union_join_ctx_fact1 basecube";
expectedInnerSelect2 = "SELECT (basecube.union_join_ctx_cityid) as `alias0`, (cubecityjoinunionctx.name) "
+ "as `alias1`, case when (basecube.union_join_ctx_cityid) is null then 0 else "
+ "(basecube.union_join_ctx_cityid) end as `alias2`, sum((basecube.union_join_ctx_msr1)) as `alias3`, "
- + "sum(0.0) as `alias4` FROM TestQueryRewrite.c1_union_join_ctx_fact2";
+ + "0.0 as `alias4` FROM TestQueryRewrite.c1_union_join_ctx_fact2";
expectedInnerSelect3 = "SELECT (basecube.union_join_ctx_cityid) as `alias0`, (cubecityjoinunionctx.name) "
+ "as `alias1`, case when (basecube.union_join_ctx_cityid) is null then 0 else "
- + "(basecube.union_join_ctx_cityid) end as `alias2`, sum(0.0) as `alias3`, "
+ + "(basecube.union_join_ctx_cityid) end as `alias2`, 0.0 as `alias3`, "
+ "sum((basecube.union_join_ctx_msr2)) as `alias4` FROM TestQueryRewrite.c1_union_join_ctx_fact3";
String outerGroupBy = "GROUP BY (basecube.alias0), (basecube.alias1), (basecube.alias2)";
compareContains(outerSelect, rewrittenQuery);
@@ -142,12 +142,12 @@ public class TestUnionAndJoinCandidates extends TestQueryRewrite {
+ "as `(sum(union_join_ctx_msr1) + 10)` FROM ";
expectedInnerSelect1 = "SELECT (basecube.union_join_ctx_cityid) as `alias0`, "
+ "(cubecityjoinunionctx.name) as `alias1`, sum((basecube.union_join_ctx_msr1)) as `alias2`, "
- + "sum(0.0) as `alias3`, sum(0.0) as `alias4` FROM";
+ + "0.0 as `alias3`, 0.0 as `alias4` FROM";
expectedInnerSelect2 = "SELECT (basecube.union_join_ctx_cityid) as `alias0`, "
+ "(cubecityjoinunionctx.name) as `alias1`, sum((basecube.union_join_ctx_msr1)) as `alias2`, "
- + "sum(0.0) as `alias3`, sum(0.0) as `alias4` FROM";
+ + "0.0 as `alias3`, 0.0 as `alias4` FROM";
expectedInnerSelect3 = "SELECT (basecube.union_join_ctx_cityid) as `alias0`, (cubecityjoinunionctx.name) "
- + "as `alias1`, sum(0.0) as `alias2`, sum((basecube.union_join_ctx_msr2)) as `alias3`, "
+ + "as `alias1`, 0.0 as `alias2`, sum((basecube.union_join_ctx_msr2)) as `alias3`, "
+ "sum(case when ((basecube.union_join_ctx_msr2) > 0) then (basecube.union_join_ctx_msr2) else 0 end) "
+ "as `alias4` FROM";
String innerGroupBy = "GROUP BY (basecube.union_join_ctx_cityid), (cubecityjoinunionctx.name)";