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 2017/12/23 13:34:12 UTC

carbondata git commit: [CARBONDATA-1911] Added Insert into query test case for parquet & hive from Carbon Table

Repository: carbondata
Updated Branches:
  refs/heads/master 7997f226b -> 8a295b5ff


[CARBONDATA-1911] Added Insert into query test case for parquet & hive from Carbon Table

Added test cases for insert into operation for parquet & hive from Carbon Table

This closes #1683


Project: http://git-wip-us.apache.org/repos/asf/carbondata/repo
Commit: http://git-wip-us.apache.org/repos/asf/carbondata/commit/8a295b5f
Tree: http://git-wip-us.apache.org/repos/asf/carbondata/tree/8a295b5f
Diff: http://git-wip-us.apache.org/repos/asf/carbondata/diff/8a295b5f

Branch: refs/heads/master
Commit: 8a295b5ffd9a00d2997c67cf1e3f3e73d015ad38
Parents: 7997f22
Author: Manohar <ma...@gmail.com>
Authored: Tue Dec 19 18:47:16 2017 +0530
Committer: Jacky Li <ja...@qq.com>
Committed: Sat Dec 23 21:34:02 2017 +0800

----------------------------------------------------------------------
 .../InsertIntoNonCarbonTableTestCase.scala      | 108 +++++++++++++++++++
 1 file changed, 108 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/carbondata/blob/8a295b5f/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/insertQuery/InsertIntoNonCarbonTableTestCase.scala
----------------------------------------------------------------------
diff --git a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/insertQuery/InsertIntoNonCarbonTableTestCase.scala b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/insertQuery/InsertIntoNonCarbonTableTestCase.scala
new file mode 100644
index 0000000..a745672
--- /dev/null
+++ b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/insertQuery/InsertIntoNonCarbonTableTestCase.scala
@@ -0,0 +1,108 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.carbondata.spark.testsuite.insertQuery
+
+import org.apache.spark.sql.Row
+import org.apache.spark.sql.test.util.QueryTest
+import org.scalatest.BeforeAndAfterAll
+
+
+class InsertIntoNonCarbonTableTestCase extends QueryTest with BeforeAndAfterAll {
+  override def beforeAll {
+    sql("drop table if exists TCarbonSource")
+    sql(
+      "create table TCarbonSource (imei string,deviceInformationId int,MAC string,deviceColor " +
+      "string,device_backColor string,modelId string,marketName string,AMSize string,ROMSize " +
+      "string,CUPAudit string,CPIClocked string,series string,productionDate timestamp,bomCode " +
+      "string,internalModels string, deliveryTime string, channelsId string, channelsName string " +
+      ", deliveryAreaId string, deliveryCountry string, deliveryProvince string, deliveryCity " +
+      "string,deliveryDistrict string, deliveryStreet string, oxSingleNumber string, " +
+      "ActiveCheckTime string, ActiveAreaId string, ActiveCountry string, ActiveProvince string, " +
+      "Activecity string, ActiveDistrict string, ActiveStreet string, ActiveOperatorId string, " +
+      "Active_releaseId string, Active_EMUIVersion string, Active_operaSysVersion string, " +
+      "Active_BacVerNumber string, Active_BacFlashVer string, Active_webUIVersion string, " +
+      "Active_webUITypeCarrVer string,Active_webTypeDataVerNumber string, Active_operatorsVersion" +
+      " string, Active_phonePADPartitionedVersions string, Latest_YEAR int, Latest_MONTH int, " +
+      "Latest_DAY Decimal(30,10), Latest_HOUR string, Latest_areaId string, Latest_country " +
+      "string, Latest_province string, Latest_city string, Latest_district string, Latest_street " +
+      "string, Latest_releaseId string, Latest_EMUIVersion string, Latest_operaSysVersion string," +
+      " Latest_BacVerNumber string, Latest_BacFlashVer string, Latest_webUIVersion string, " +
+      "Latest_webUITypeCarrVer string, Latest_webTypeDataVerNumber string, " +
+      "Latest_operatorsVersion string, Latest_phonePADPartitionedVersions string, " +
+      "Latest_operatorId string, gamePointDescription string,gamePointId double,contractNumber " +
+      "BigInt) STORED BY 'org.apache.carbondata.format'")
+    sql(
+      s"LOAD DATA INPATH '$resourcesPath/100_olap.csv' INTO table TCarbonSource options " +
+      "('DELIMITER'=',', 'QUOTECHAR'='\', 'FILEHEADER'='imei,deviceInformationId,MAC,deviceColor," +
+      "device_backColor,modelId,marketName,AMSize,ROMSize,CUPAudit,CPIClocked,series," +
+      "productionDate,bomCode,internalModels,deliveryTime,channelsId,channelsName,deliveryAreaId," +
+      "deliveryCountry,deliveryProvince,deliveryCity,deliveryDistrict,deliveryStreet," +
+      "oxSingleNumber,ActiveCheckTime,ActiveAreaId,ActiveCountry,ActiveProvince,Activecity," +
+      "ActiveDistrict,ActiveStreet,ActiveOperatorId,Active_releaseId,Active_EMUIVersion," +
+      "Active_operaSysVersion,Active_BacVerNumber,Active_BacFlashVer,Active_webUIVersion," +
+      "Active_webUITypeCarrVer,Active_webTypeDataVerNumber,Active_operatorsVersion," +
+      "Active_phonePADPartitionedVersions,Latest_YEAR,Latest_MONTH,Latest_DAY,Latest_HOUR," +
+      "Latest_areaId,Latest_country,Latest_province,Latest_city,Latest_district,Latest_street," +
+      "Latest_releaseId,Latest_EMUIVersion,Latest_operaSysVersion,Latest_BacVerNumber," +
+      "Latest_BacFlashVer,Latest_webUIVersion,Latest_webUITypeCarrVer," +
+      "Latest_webTypeDataVerNumber,Latest_operatorsVersion,Latest_phonePADPartitionedVersions," +
+      "Latest_operatorId,gamePointDescription,gamePointId,contractNumber', " +
+      "'bad_records_logger_enable'='false','bad_records_action'='FORCE')")
+  }
+
+  test("insert into hive") {
+    sql("drop table if exists thive2")
+    sql(
+      "create table thive2 row format delimited fields terminated by '\017' stored as textfile as" +
+      " select imei,deviceInformationId,MAC from TCarbonSource")
+    checkAnswer(
+      sql(
+        "select imei,deviceInformationId,MAC from TCarbonSource order by imei, " +
+        "deviceInformationId,MAC"),
+      sql("select imei,deviceInformationId,MAC from thive2 order by imei,deviceInformationId,MAC")
+    )
+    sql("drop table thive2")
+  }
+  test("insert into parquet") {
+    sql("drop table if exists tparquet")
+    sql("create table tparquet(imei string,deviceInformationId int) STORED AS PARQUET")
+    sql("insert into tparquet select imei,deviceInformationId from TCarbonSource")
+    checkAnswer(
+      sql("select imei,deviceInformationId from TCarbonSource order by imei,deviceInformationId"),
+      sql("select imei,deviceInformationId from tparquet order by imei,deviceInformationId")
+    )
+    sql("drop table tparquet")
+  }
+  test("insert into hive conditional") {
+    sql("drop table if exists thive_cond")
+    sql(
+      "create table thive_cond row format delimited fields terminated by '\017' stored as " +
+      "textfile as SELECT(CASE WHEN imei IS NOT NULL THEN imei ELSE MAC END) AS temp FROM " +
+      "TCarbonSource limit 10")
+    checkAnswer(
+      sql("select count(*) from thive_cond"),
+      Seq(Row(10))
+    )
+    sql("drop table thive_cond")
+  }
+
+  override def afterAll {
+    sql("DROP TABLE IF EXISTS TCarbonSource")
+  }
+}
\ No newline at end of file