From 36002d6d7d55077b2add3ee8961ad7aee2f01718 Mon Sep 17 00:00:00 2001 From: chenerlu Date: Thu, 29 Jun 2017 11:36:10 +0800 Subject: [PATCH 1/4] add test case when record more than one pagesize --- .../iud/DeleteCarbonTableTestCase.scala | 27 ++++++++++++++++++- .../iud/UpdateCarbonTableTestCase.scala | 23 ++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) diff --git a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala index 2e59c9cde38..0ca74d14376 100644 --- a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala +++ b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala @@ -16,7 +16,7 @@ */ package org.apache.carbondata.spark.testsuite.iud -import org.apache.spark.sql.Row +import org.apache.spark.sql.{Row, SaveMode} import org.apache.spark.sql.common.util.QueryTest import org.scalatest.BeforeAndAfterAll @@ -105,6 +105,31 @@ class DeleteCarbonTableTestCase extends QueryTest with BeforeAndAfterAll { Seq(Row(3)) ) } + + test("Records more than one pagesize after delete operation ") { + sql("DROP TABLE IF EXISTS default.carbon2") + import sqlContext.implicits._ + val df = sqlContext.sparkContext.parallelize(1 to 20000000) + .map(x => (x+"a", "b", x)) + .toDF("c1", "c2", "c3") + df.write + .format("carbondata") + .option("tableName", "carbon2") + .option("tempCSV", "true") + .option("compress", "true") + .mode(SaveMode.Overwrite) + .save() + + checkAnswer(sql("select count(*) from default.carbon2"), Seq(Row(20000000))) + + sql("delete from default.carbon2 where c1='99999a'").show() + + checkAnswer(sql("select count(*) from default.carbon2"), Seq(Row(19999999))) + + sql("DROP TABLE IF EXISTS default.carbon2") + } + + override def afterAll { sql("use default") sql("drop database if exists iud_db cascade") diff --git a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala index 79fda301d7d..e43a89ef0e8 100644 --- a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala +++ b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala @@ -409,6 +409,29 @@ class UpdateCarbonTableTestCase extends QueryTest with BeforeAndAfterAll { sql("DROP TABLE IF EXISTS default.carbon1") } + test("Records more than one pagesize after update operation ") { + sql("DROP TABLE IF EXISTS default.carbon2") + import sqlContext.implicits._ + val df = sqlContext.sparkContext.parallelize(1 to 20000000) + .map(x => (x+"a", "b", x)) + .toDF("c1", "c2", "c3") + df.write + .format("carbondata") + .option("tableName", "carbon2") + .option("tempCSV", "true") + .option("compress", "true") + .mode(SaveMode.Overwrite) + .save() + + checkAnswer(sql("select count(*) from default.carbon2"), Seq(Row(20000000))) + + sql("update default.carbon2 set (c1)=('test123') where c1='99999a'").show() + + checkAnswer(sql("select count(*) from default.carbon2"), Seq(Row(20000000))) + + sql("DROP TABLE IF EXISTS default.carbon2") + } + override def afterAll { sql("use default") sql("drop database if exists iud cascade") From 6be8a3b5a6669a2278ffca46bd7d9a798ff6f527 Mon Sep 17 00:00:00 2001 From: chenerlu Date: Thu, 29 Jun 2017 17:36:54 +0800 Subject: [PATCH 2/4] delete unnecessary test case --- .../iud/UpdateCarbonTableTestCase.scala | 23 ------------------- 1 file changed, 23 deletions(-) diff --git a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala index e43a89ef0e8..79fda301d7d 100644 --- a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala +++ b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala @@ -409,29 +409,6 @@ class UpdateCarbonTableTestCase extends QueryTest with BeforeAndAfterAll { sql("DROP TABLE IF EXISTS default.carbon1") } - test("Records more than one pagesize after update operation ") { - sql("DROP TABLE IF EXISTS default.carbon2") - import sqlContext.implicits._ - val df = sqlContext.sparkContext.parallelize(1 to 20000000) - .map(x => (x+"a", "b", x)) - .toDF("c1", "c2", "c3") - df.write - .format("carbondata") - .option("tableName", "carbon2") - .option("tempCSV", "true") - .option("compress", "true") - .mode(SaveMode.Overwrite) - .save() - - checkAnswer(sql("select count(*) from default.carbon2"), Seq(Row(20000000))) - - sql("update default.carbon2 set (c1)=('test123') where c1='99999a'").show() - - checkAnswer(sql("select count(*) from default.carbon2"), Seq(Row(20000000))) - - sql("DROP TABLE IF EXISTS default.carbon2") - } - override def afterAll { sql("use default") sql("drop database if exists iud cascade") From 46f7a746f02f8cab357447614c290e731f198098 Mon Sep 17 00:00:00 2001 From: chenerlu Date: Fri, 30 Jun 2017 10:38:49 +0800 Subject: [PATCH 3/4] add test case for IUD feature --- .../testsuite/iud/DeleteCarbonTableTestCase.scala | 10 ++++++---- .../testsuite/iud/UpdateCarbonTableTestCase.scala | 2 ++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala index 0ca74d14376..b19d79091c6 100644 --- a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala +++ b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala @@ -109,7 +109,7 @@ class DeleteCarbonTableTestCase extends QueryTest with BeforeAndAfterAll { test("Records more than one pagesize after delete operation ") { sql("DROP TABLE IF EXISTS default.carbon2") import sqlContext.implicits._ - val df = sqlContext.sparkContext.parallelize(1 to 20000000) + val df = sqlContext.sparkContext.parallelize(1 to 2000000) .map(x => (x+"a", "b", x)) .toDF("c1", "c2", "c3") df.write @@ -120,11 +120,13 @@ class DeleteCarbonTableTestCase extends QueryTest with BeforeAndAfterAll { .mode(SaveMode.Overwrite) .save() - checkAnswer(sql("select count(*) from default.carbon2"), Seq(Row(20000000))) + checkAnswer(sql("select count(*) from default.carbon2"), Seq(Row(2000000))) - sql("delete from default.carbon2 where c1='99999a'").show() + sql("delete from default.carbon2 where c1 = '99999a'").show() - checkAnswer(sql("select count(*) from default.carbon2"), Seq(Row(19999999))) + checkAnswer(sql("select count(*) from default.carbon2"), Seq(Row(1999999))) + + checkAnswer(sql("select * from default.carbon2 where c1 = '99999a'"), Seq()) sql("DROP TABLE IF EXISTS default.carbon2") } diff --git a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala index 79fda301d7d..c8a1c63c398 100644 --- a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala +++ b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala @@ -406,6 +406,8 @@ class UpdateCarbonTableTestCase extends QueryTest with BeforeAndAfterAll { checkAnswer(sql("select count(*) from default.carbon1"), Seq(Row(36000))) + checkAnswer(sql("select * from default.carbon1 where c1 = 'test123'"), Row("test123","b",9999)) + sql("DROP TABLE IF EXISTS default.carbon1") } From 4381ce86cfff330757ac95de815f2c8bf07aae76 Mon Sep 17 00:00:00 2001 From: chenerlu Date: Fri, 30 Jun 2017 10:41:26 +0800 Subject: [PATCH 4/4] add test case for IUD feature --- .../spark/testsuite/iud/DeleteCarbonTableTestCase.scala | 2 -- 1 file changed, 2 deletions(-) diff --git a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala index b19d79091c6..d24f7b2e814 100644 --- a/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala +++ b/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/DeleteCarbonTableTestCase.scala @@ -20,8 +20,6 @@ import org.apache.spark.sql.{Row, SaveMode} import org.apache.spark.sql.common.util.QueryTest import org.scalatest.BeforeAndAfterAll -import org.apache.carbondata.core.constants.CarbonCommonConstants -import org.apache.carbondata.core.util.CarbonProperties class DeleteCarbonTableTestCase extends QueryTest with BeforeAndAfterAll { override def beforeAll {