You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@carbondata.apache.org by ra...@apache.org on 2017/01/20 17:39:55 UTC
[47/50] [abbrv] incubator-carbondata git commit: Fix Insert into
query when used different names.
Fix Insert into query when used different names.
Project: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/commit/3b9671ff
Tree: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/tree/3b9671ff
Diff: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/diff/3b9671ff
Branch: refs/heads/branch-1.0
Commit: 3b9671ff256f1a5e25824fae3752f25241845cea
Parents: 4a1f6ae
Author: ravipesala <ra...@gmail.com>
Authored: Fri Jan 20 20:38:09 2017 +0530
Committer: Venkata Ramana G <ra...@huawei.com>
Committed: Fri Jan 20 21:05:56 2017 +0530
----------------------------------------------------------------------
.../allqueries/InsertIntoCarbonTableTestCase.scala | 15 +++++++++++++++
.../sql/execution/CarbonLateDecodeStrategy.scala | 17 +++++++++++++++++
2 files changed, 32 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/3b9671ff/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/allqueries/InsertIntoCarbonTableTestCase.scala
----------------------------------------------------------------------
diff --git a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/allqueries/InsertIntoCarbonTableTestCase.scala b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/allqueries/InsertIntoCarbonTableTestCase.scala
index db85393..776e531 100644
--- a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/allqueries/InsertIntoCarbonTableTestCase.scala
+++ b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/allqueries/InsertIntoCarbonTableTestCase.scala
@@ -165,6 +165,21 @@ class InsertIntoCarbonTableTestCase extends QueryTest with BeforeAndAfterAll {
""").show
}
+ test("insert->insert with different names and aliases") {
+ sql("DROP TABLE IF EXISTS uniqdata")
+ sql("DROP TABLE IF EXISTS student")
+
+ // Create table
+ sql(
+ s"""
+ CREATE TABLE uniqdata (CUST_ID int,CUST_NAME String,ACTIVE_EMUI_VERSION string, DOB timestamp, DOJ timestamp, BIGINT_COLUMN1 bigint,BIGINT_COLUMN2 bigint,DECIMAL_COLUMN1 decimal(30,10), DECIMAL_COLUMN2 decimal(36,10),Double_COLUMN1 double, Double_COLUMN2 double,INTEGER_COLUMN1 int) STORED BY 'org.apache.carbondata.format' TBLPROPERTIES ("TABLE_BLOCKSIZE"= "256 MB")
+ """.stripMargin)
+ sql(s"""CREATE TABLE student (CUST_ID2 int,CUST_ADDR String,ACTIVE_EMUI_VERSION string, DOB timestamp, DOJ timestamp, BIGINT_COLUMN1 bigint,BIGINT_COLUMN2 bigint,DECIMAL_COLUMN1 decimal(30,10), DECIMAL_COLUMN2 decimal(36,10),Double_COLUMN1 double, Double_COLUMN2 double,INTEGER_COLUMN1 int) STORED BY 'org.apache.carbondata.format' TBLPROPERTIES ("TABLE_BLOCKSIZE"= "256 MB")""")
+
+ sql(s"""LOAD DATA inpath '${resourcesPath + "/data_with_all_types.csv"}' INTO table uniqdata options('DELIMITER'=',', 'FILEHEADER'='CUST_ID, CUST_NAME, ACTIVE_EMUI_VERSION, DOB, DOJ, BIGINT_COLUMN1, BIGINT_COLUMN2, DECIMAL_COLUMN1, DECIMAL_COLUMN2, Double_COLUMN1, Double_COLUMN2, INTEGER_COLUMN1')""")
+ sql("""insert into student select * from uniqdata""")
+ }
+
test("insert into existing load-pass") {
val timeStampPropOrig = CarbonProperties.getInstance().getProperty(CarbonCommonConstants.CARBON_TIMESTAMP_FORMAT)
CarbonProperties.getInstance()
http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/3b9671ff/integration/spark2/src/main/scala/org/apache/spark/sql/execution/CarbonLateDecodeStrategy.scala
----------------------------------------------------------------------
diff --git a/integration/spark2/src/main/scala/org/apache/spark/sql/execution/CarbonLateDecodeStrategy.scala b/integration/spark2/src/main/scala/org/apache/spark/sql/execution/CarbonLateDecodeStrategy.scala
index 11166bf..3e0e9c0 100644
--- a/integration/spark2/src/main/scala/org/apache/spark/sql/execution/CarbonLateDecodeStrategy.scala
+++ b/integration/spark2/src/main/scala/org/apache/spark/sql/execution/CarbonLateDecodeStrategy.scala
@@ -292,6 +292,23 @@ private[sql] class CarbonLateDecodeStrategy extends SparkStrategy {
attr
}
}
+ case alias @ Alias(attr: AttributeReference, name) =>
+ if (needDecoder.exists(_.name.equalsIgnoreCase(attr.name))) {
+ alias
+ } else {
+ val dict = map.get(attr.name)
+ if (dict.isDefined && dict.get) {
+ alias.transform {
+ case attrLocal: AttributeReference =>
+ AttributeReference(attr.name,
+ IntegerType,
+ attr.nullable,
+ attr.metadata)(attr.exprId, attr.qualifier)
+ }
+ } else {
+ alias
+ }
+ }
case others => others
}
}