You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@carbondata.apache.org by ja...@apache.org on 2018/07/24 00:46:11 UTC
carbondata git commit: [CARBONDATA-2534][MV] Fix substring expression
not working in MV creation
Repository: carbondata
Updated Branches:
refs/heads/master 4014b0f54 -> 2c291d620
[CARBONDATA-2534][MV] Fix substring expression not working in MV creation
Problem: The column generated when subquery expression column present is wrong while creating of MV table.
Solution: Corrected the column name by removing special characters.
This closes #2476
Project: http://git-wip-us.apache.org/repos/asf/carbondata/repo
Commit: http://git-wip-us.apache.org/repos/asf/carbondata/commit/2c291d62
Tree: http://git-wip-us.apache.org/repos/asf/carbondata/tree/2c291d62
Diff: http://git-wip-us.apache.org/repos/asf/carbondata/diff/2c291d62
Branch: refs/heads/master
Commit: 2c291d620a4f5585689f764a5e8ececeee09c735
Parents: 4014b0f
Author: ravipesala <ra...@gmail.com>
Authored: Sun Jul 15 17:42:59 2018 +0530
Committer: Jacky Li <ja...@qq.com>
Committed: Tue Jul 24 08:45:54 2018 +0800
----------------------------------------------------------------------
.../org/apache/carbondata/mv/datamap/MVHelper.scala | 7 ++++++-
.../apache/carbondata/mv/rewrite/MVCreateTestCase.scala | 12 ++++++++++++
2 files changed, 18 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/carbondata/blob/2c291d62/datamap/mv/core/src/main/scala/org/apache/carbondata/mv/datamap/MVHelper.scala
----------------------------------------------------------------------
diff --git a/datamap/mv/core/src/main/scala/org/apache/carbondata/mv/datamap/MVHelper.scala b/datamap/mv/core/src/main/scala/org/apache/carbondata/mv/datamap/MVHelper.scala
index fe761c0..8f79d64 100644
--- a/datamap/mv/core/src/main/scala/org/apache/carbondata/mv/datamap/MVHelper.scala
+++ b/datamap/mv/core/src/main/scala/org/apache/carbondata/mv/datamap/MVHelper.scala
@@ -119,7 +119,12 @@ object MVHelper {
}
def updateColumnName(attr: Attribute): String = {
- val name = attr.name.replace("(", "_").replace(")", "").replace(" ", "_").replace("=", "")
+ val name =
+ attr.name.replace("(", "_")
+ .replace(")", "")
+ .replace(" ", "_")
+ .replace("=", "")
+ .replace(",", "")
attr.qualifier.map(qualifier => qualifier + "_" + name).getOrElse(name)
}
http://git-wip-us.apache.org/repos/asf/carbondata/blob/2c291d62/datamap/mv/core/src/test/scala/org/apache/carbondata/mv/rewrite/MVCreateTestCase.scala
----------------------------------------------------------------------
diff --git a/datamap/mv/core/src/test/scala/org/apache/carbondata/mv/rewrite/MVCreateTestCase.scala b/datamap/mv/core/src/test/scala/org/apache/carbondata/mv/rewrite/MVCreateTestCase.scala
index 4056f92..7ac3c83 100644
--- a/datamap/mv/core/src/test/scala/org/apache/carbondata/mv/rewrite/MVCreateTestCase.scala
+++ b/datamap/mv/core/src/test/scala/org/apache/carbondata/mv/rewrite/MVCreateTestCase.scala
@@ -750,6 +750,18 @@ class MVCreateTestCase extends QueryTest with BeforeAndAfterAll {
sql("drop table if exists test1")
}
+ test("jira carbondata-2534") {
+
+ sql("drop datamap if exists MV_exp")
+ sql("create datamap MV_exp using 'mv' as select sum(salary),substring(empname,2,5),designation from fact_table1 group by substring(empname,2,5),designation")
+ sql("rebuild datamap MV_exp")
+ val frame = sql(
+ "select sum(salary),substring(empname,2,5),designation from fact_table1 group by substring(empname,2,5),designation")
+ val analyzed = frame.queryExecution.analyzed
+ assert(verifyMVDataMap(analyzed, "MV_exp"))
+ sql("drop datamap if exists MV_exp")
+ }
+
def verifyMVDataMap(logicalPlan: LogicalPlan, dataMapName: String): Boolean = {
val tables = logicalPlan collect {
case l: LogicalRelation => l.catalogTable.get