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/09/12 10:23:36 UTC

[2/3] carbondata git commit: [CARBONDATA-1417]Added cluster tests for IUD, batch sort and global sort features

http://git-wip-us.apache.org/repos/asf/carbondata/blob/fc39b287/integration/spark-common-cluster-test/src/test/scala/org/apache/carbondata/cluster/sdv/generated/DataLoadingIUDTestCase.scala
----------------------------------------------------------------------
diff --git a/integration/spark-common-cluster-test/src/test/scala/org/apache/carbondata/cluster/sdv/generated/DataLoadingIUDTestCase.scala b/integration/spark-common-cluster-test/src/test/scala/org/apache/carbondata/cluster/sdv/generated/DataLoadingIUDTestCase.scala
new file mode 100644
index 0000000..d6fa3ca
--- /dev/null
+++ b/integration/spark-common-cluster-test/src/test/scala/org/apache/carbondata/cluster/sdv/generated/DataLoadingIUDTestCase.scala
@@ -0,0 +1,3773 @@
+
+/*
+ * 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.cluster.sdv.generated
+
+import java.sql.Timestamp
+
+import org.apache.spark.sql.Row
+import org.apache.spark.sql.common.util._
+import org.scalatest.{BeforeAndAfter, BeforeAndAfterAll, BeforeAndAfterEach}
+
+/**
+ * Test Class for DataLoadingIUDTestCase to verify all scenerios
+ */
+
+class DataLoadingIUDTestCase extends QueryTest with BeforeAndAfterAll with BeforeAndAfter with BeforeAndAfterEach {
+
+  override def beforeAll {
+    sql("use default").collect
+    sql("drop table if exists t_carbn02").collect
+    sql("drop table if exists t_carbn01").collect
+    sql("drop table if exists T_Parq1").collect
+    sql("drop table if exists table_C21").collect
+    sql("drop table if exists t_hive01").collect
+    sql("drop table if exists t_carbn2").collect
+    sql("drop table if exists t_carbn1").collect
+    sql("drop table if exists t1").collect
+    sql("drop table if exists t2").collect
+    sql("drop table if exists t_carbn21").collect
+    sql("drop table if exists t_carbn22").collect
+    sql("drop table if exists t_carbn23").collect
+    sql("drop table if exists t_carbn24").collect
+    sql("drop table if exists t_carbn25").collect
+    sql("drop table if exists t_carbn26").collect
+    sql("drop table if exists t_carbn27").collect
+    sql("drop table if exists t_carbn28").collect
+    sql("drop table if exists t_carbn20").collect
+    sql("drop table if exists t_carbn30").collect
+    sql("drop table if exists t_carbn31").collect
+    sql("drop table if exists uniqdata0001_Test").collect
+    sql("drop table if exists uniqdata").collect
+    sql("drop table if exists uniqdata1").collect
+    sql("drop table if exists uniqdata2").collect
+    sql("drop table if exists uniqdata023456").collect
+    sql("drop table if exists t_carbn01b").collect
+    sql("drop table if exists T_Hive1").collect
+    sql("drop table if exists T_Hive6").collect
+  }
+
+  override def before(fun: => Any) {
+    sql(s"""drop table if exists t_carbn01""").collect
+    sql(s"""drop table if exists default.t_carbn01""").collect
+  }
+
+  override def beforeEach(): Unit = {
+    sql(s"""drop table if exists t_carbn01""").collect
+    sql(s"""drop table if exists default.t_carbn01""").collect
+  }
+
+
+//NA
+test("IUD-01-01-01_001-001", Include) {
+   sql(s"""create table default.t_carbn01b(Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""LOAD DATA INPATH '$resourcesPath/Data/InsertData/T_Hive1.csv' INTO table default.t_carbn01B options ('DELIMITER'=',', 'QUOTECHAR'='\', 'FILEHEADER'='Active_status,Item_type_cd,Qty_day_avg,Qty_total,Sell_price,Sell_pricep,Discount_price,Profit,Item_code,Item_name,Outlet_name,Update_time,Create_date')""").collect
+  sql("create table T_Hive1(Active_status BOOLEAN, Item_type_cd TINYINT, Qty_day_avg SMALLINT, Qty_total INT, Sell_price BIGINT, Sell_pricep FLOAT, Discount_price DOUBLE , Profit DECIMAL(3,2), Item_code STRING, Item_name VARCHAR(50), Outlet_name CHAR(100), Update_time TIMESTAMP, Create_date DATE) row format delimited fields terminated by ',' collection items terminated by '$'")
+ sql(s"""LOAD DATA INPATH '$resourcesPath/Data/InsertData/T_Hive1.csv' overwrite into table T_Hive1""").collect
+ sql("create table T_Hive6(Item_code STRING, Sub_item_cd ARRAY<string>)row format delimited fields terminated by ',' collection items terminated by '$'")
+ sql(s"""load data inpath '$resourcesPath/Data/InsertData/T_Hive1.csv' overwrite into table T_Hive6""").collect
+ sql(s"""create table t_carbn02(Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into t_carbn02 select * from default.t_carbn01b limit 4""").collect
+  checkAnswer(s"""select count(*) from t_carbn01b""",
+    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_001-001")
+
+}
+       
+
+//Check for update Carbon table using a data value
+test("IUD-01-01-01_001-01", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (active_status, profit) = ('YES',1) where active_status = 'TRUE'""").collect
+  checkAnswer(s"""select active_status,profit from default.t_carbn01  where active_status='YES' group by active_status,profit""",
+    Seq(Row("YES",1.00)), "DataLoadingIUDTestCase_IUD-01-01-01_001-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using a data value on a string column where it was udpated before
+test("IUD-01-01-01_001-02", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (active_status) = ('YES') where active_status = 'TRUE'""").collect
+ sql(s"""update default.t_carbn01  set (active_status) = ('NO') where active_status = 'YES'""").collect
+  checkAnswer(s"""select active_status,profit from default.t_carbn01  where active_status='NO' group by active_status,profit""",
+    Seq(Row("NO",2.44)), "DataLoadingIUDTestCase_IUD-01-01-01_001-02")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using a data value on a string column without giving values in semi quote
+test("IUD-01-01-01_001-03", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01""").collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (active_status) = (NO) """).collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using a data value on a string column using numeric value
+test("IUD-01-01-01_001-04", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (active_status) = (234530508098098098080)""").collect
+  checkAnswer(s"""select active_status from default.t_carbn01  group by active_status""",
+    Seq(Row("234530508098098098080")), "DataLoadingIUDTestCase_IUD -01-01-01_001-04")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using a data value on a string column using numeric value in single quote
+test("IUD-01-01-01_001-05", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (active_status) = ('234530508098098098080')""").collect
+  checkAnswer(s"""select active_status from default.t_carbn01  group by active_status""",
+    Seq(Row("234530508098098098080")), "DataLoadingIUDTestCase_IUD -01-01-01_001-05")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using a data value on a string column using decimal value
+test("IUD-01-01-01_001-06", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (active_status) = (2.55860986095689088)""").collect
+  checkAnswer(s"""select active_status from default.t_carbn01  group by active_status""",
+    Seq(Row("2.55860986095689088")), "DataLoadingIUDTestCase_IUD-01 -01-01_001-06")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using a data value on a string column using decimal value
+test("IUD-01-01-01_001-07", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (active_status) = ('2.55860986095689088')""").collect
+  checkAnswer(s"""select active_status from default.t_carbn01  group by active_status""",
+    Seq(Row("2.55860986095689088")), "DataLoadingIUDTestCase_IUD-01 -01-01_001-07")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using a data value on a string column using string value which is having special characters
+test("IUD-01-01-01_001-11", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (active_status) = ('fdfdskflksdf#?…..fdffs')""").collect
+  checkAnswer(s"""select active_status from default.t_carbn01  group by active_status""",
+    Seq(Row("fdfdskflksdf#?…..fdffs")), "DataLoadingIUDTestCase_IUD-01-01-01_001-11")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using a data value on a string column using array value having ')'
+//test("IUD-01-01-01_001-12", Include) {
+//   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+// sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+// sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+// sql(s"""update default.t_carbn01  set (active_status) = ('abd$asjdh$adasj$l;sdf$*)$*)(&^)')""").collect
+//  checkAnswer(s"""select count(*) from t_carbn01b""",
+//    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_001-12")
+//   sql(s"""drop table default.t_carbn01  """).collect
+//}
+       
+
+//Check for update Carbon table for a column where column  name is mentioned incorrectly
+test("IUD-01-01-01_001-14", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_status_cd)  = ('10')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a numeric value column
+test("IUD-01-01-01_001-15", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_type_cd)  = (10)""").collect
+  checkAnswer(s"""select item_type_cd from default.t_carbn01  group by item_type_cd""",
+    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_001-15")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a numeric value column in single quote
+test("IUD-01-01-01_001-16", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_type_cd)  = ('10')""").collect
+  checkAnswer(s"""select item_type_cd from default.t_carbn01  group by item_type_cd""",
+    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_001-16")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a numeric value column using string value
+test("IUD-01-01-01_001-17", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_type_cd)  = ('Orange')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a numeric value column using decimal value
+test("IUD-01-01-01_001-18", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_type_cd)  = ('10.11')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a numeric Int value column using large numeric value
+test("IUD-01-01-01_001-19", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_type_cd)  = (2147483647)""").collect
+  checkAnswer(s"""select item_type_cd from default.t_carbn01  group by item_type_cd""",
+    Seq(Row(2147483647)), "DataLoadingIUDTestCase_IUD-01-01-01_001-19")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a numeric Int value column using large numeric negative value
+test("IUD-01-01-01_001-20", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_type_cd)  = (-2147483648)""").collect
+  checkAnswer(s"""select item_type_cd from default.t_carbn01  group by item_type_cd""",
+    Seq(Row(-2147483648)), "DataLoadingIUDTestCase_IUD-01-01-01_001-20")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a numeric Int value column using large numeric value which is beyond 32 bit
+test("IUD-01-01-01_001-21", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_type_cd)  = (-2147483649)""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a numeric BigInt value column using large numeric value which is at the boundary of 64 bit
+test("IUD-01-01-01_001-22", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (sell_price)  = (9223372036854775807)""").collect
+  checkAnswer(s"""select sell_price from default.t_carbn01  group by sell_price""",
+    Seq(Row(9223372036854775807L)), "DataLoadingIUDTestCase_IUD-01-01-01_001-22")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a decimal value column using decimal value
+test("IUD-01-01-01_001-23", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (profit) = (1.11)""").collect
+  checkAnswer(s"""select profit from default.t_carbn01  group by profit""",
+    Seq(Row(1.11)), "DataLoadingIUDTestCase_IUD-01-01-01_001-23")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a decimal value column using decimal value in quote
+test("IUD-01-01-01_001-24", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (profit)  = ('1.11')""").collect
+  checkAnswer(s"""select profit from default.t_carbn01  group by profit""",
+    Seq(Row(1.11)), "DataLoadingIUDTestCase_IUD-01-01-01_001-24")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a decimal value column using numeric value
+test("IUD-01-01-01_001-25", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (profit)  = (1)""").collect
+  checkAnswer(s"""select profit from default.t_carbn01  group by profit""",
+    Seq(Row(1.00)), "DataLoadingIUDTestCase_IUD-01-01-01_001-25")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a decimal value column (3,2) using numeric value which is greater than the allowed
+test("IUD-01-01-01_001-26", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (profit)  = (10)""").collect
+  checkAnswer(s"""select count(Active_status) from default.t_carbn01 where profit = 10 """,
+    Seq(Row(0)), "DataLoadingIUDTestCase_IUD-01-01-01_001-26")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a decimal value column using String value
+test("IUD-01-01-01_001-27", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (profit)  = ('hakshk')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a decimal value(3,2) column using a decimal value which is having 1 decimal
+test("IUD-01-01-01_001-28", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (profit)  = ('1.1')""").collect
+  checkAnswer(s"""select profit from default.t_carbn01  group by profit""",
+    Seq(Row(1.10)), "DataLoadingIUDTestCase_IUD-01-01-01_001-28")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a decimal value(3,2) column using a decimal value which is having 3 decimal
+test("IUD-01-01-01_001-29", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (profit)  = ('1.118')""").collect
+  checkAnswer(s"""select profit from default.t_carbn01  group by profit""",
+    Seq(Row(1.12)), "DataLoadingIUDTestCase_IUD-01-01-01_001-29")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a double column using a decimal value which is having 3 decimal
+test("IUD-01-01-01_001-30", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (sell_pricep)  = ('10.1116756')""").collect
+  checkAnswer(s"""select sell_pricep from default.t_carbn01  group by sell_pricep""",
+    Seq(Row(10.1116756)), "DataLoadingIUDTestCase_IUD-01-01-01_001-30")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a time stamp  value column using date timestamp
+test("IUD-01-01-01_001-31", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(update_time) = ('2016-11-04 18:13:59.113')""").collect
+  checkAnswer(s"""select update_time from default.t_carbn01  group by update_time""",
+    Seq(Row(Timestamp.valueOf("2016-11-04 18:13:59.0"))), "DataLoadingIUDTestCase_IUD-01-01-01_001-31")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a time stamp  value column using date timestamp all formats.
+test("IUD-01-01-01_001-35", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(update_time) = ('04-11-20004 18:13:59.113')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a time stamp  value column using string value
+test("IUD-01-01-01_001-32", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(update_time) = ('fhjfhjfdshf')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a time stamp  value column using numeric
+test("IUD-01-01-01_001-33", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(update_time) = (56546)""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a time stamp  value column using date 
+test("IUD-01-01-01_001-34", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(update_time) = ('2016-11-04')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a time stamp  value column using date timestamp
+test("IUD-01-01-01_001-36", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(update_time) = ('2016-11-04 18:63:59.113')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for a time stamp  value column using date timestamp
+test("IUD-01-01-01_001-37", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(update_time) = ('2016-11-04 18:13:59.113435345345433 ')""").collect
+  checkAnswer(s"""select update_time from default.t_carbn01  group by update_time""",
+    Seq(Row(Timestamp.valueOf("2016-11-04 18:13:59.0"))), "DataLoadingIUDTestCase_IUD-01-01-01_001-37")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update Carbon table using a * operation on a column value
+test("IUD-01-01-01_001-40", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(profit, item_type_cd)= (profit*1.2, item_type_cd*3)""").collect
+  checkAnswer(s"""select profit, item_type_cd from default.t_carbn01  group by profit, item_type_cd""",
+    Seq(Row(2.93,342),Row(2.93,369),Row(2.93,3),Row(2.93,6),Row(2.93,9),Row(2.93,12),Row(2.93,33),Row(2.93,39),Row(2.93,42),Row(2.93,123)), "DataLoadingIUDTestCase_IUD-01-01-01_001-40")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update Carbon table using a / operation on a column value
+test("IUD-01-01-01_001-41", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(item_type_cd)= (item_type_cd/1)""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update Carbon table using a / operation on a column value
+test("IUD-01-01-01_001-42", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(profit)= (profit/1)""").collect
+  checkAnswer(s"""select profit from default.t_carbn01  group by profit""",
+    Seq(Row(2.44)), "DataLoadingIUDTestCase_IUD-01-01-01_001-42")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update Carbon table using a - operation on a column value
+test("IUD-01-01-01_001-43", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(profit, item_type_cd)= (profit-1.2, item_type_cd-3)""").collect
+  checkAnswer(s"""select profit, item_type_cd from default.t_carbn01  group by profit, item_type_cd""",
+    Seq(Row(1.24,111),Row(1.24,120),Row(1.24,0),Row(1.24,-1),Row(1.24,-2),Row(1.24,1),Row(1.24,8),Row(1.24,10),Row(1.24,11),Row(1.24,38)), "DataLoadingIUDTestCase_IUD-01-01-01_001-43")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update Carbon table using a + operation on a column value
+test("IUD-01-01-01_001-44", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(profit, item_type_cd)= (profit+1.2, item_type_cd+qty_day_avg)""").collect
+  checkAnswer(s"""select profit, item_type_cd from default.t_carbn01  where profit = 3.64 and item_type_cd = 4291""",
+    Seq(Row(3.64,4291)), "DataLoadingIUDTestCase_IUD-01-01-01_001-44")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update Carbon table using a + operation on a column value which is string
+test("IUD-01-01-01_001-45", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set(item_code) = (item_code+1)""").collect
+  checkAnswer(s"""select count(*) from t_carbn01""",
+    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_001-45")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table without where clause
+test("IUD-01-01-01_002-01", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Update default.t_carbn01  set (active_status) = ('NO')""").collect
+  checkAnswer(s"""select active_status from default.t_carbn01  group by active_status""",
+    Seq(Row("NO")), "DataLoadingIUDTestCase_IUD-01-01-01_002-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table with where clause
+test("IUD-01-01-01_002-02", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Update default.t_carbn01  set (active_status) = ('NO') where active_status = 'TRUE' """).collect
+  checkAnswer(s"""select active_status from default.t_carbn01  where active_status='NO' group by active_status""",
+    Seq(Row("NO")), "DataLoadingIUDTestCase_IUD-01-01-01_002-02")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table with where exists clause
+test("IUD-01-01-01_002-03", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Update default.t_carbn01  X set (active_status) = ('NO') where exists (select 1 from default.t_carbn01b Y where Y.item_code = X.item_code)""").collect
+  checkAnswer(s"""select active_status from default.t_carbn01   group by active_status""",
+    Seq(Row("NO")), "DataLoadingIUDTestCase_IUD-01-01-01_002-03")
+   sql(s"""drop table default.t_carbn01""").collect
+}
+       
+
+//Check for delete Carbon table without where clause
+test("IUD-01-01-01_002-04", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Delete from default.t_carbn01 """).collect
+  checkAnswer(s"""select count(*) from default.t_carbn01 """,
+    Seq(Row(0)), "DataLoadingIUDTestCase_IUD-01-01-01_002-04")
+   sql(s"""drop table default.t_carbn01 """).collect
+}
+       
+
+//Check for delete Carbon table with where clause
+test("IUD-01-01-01_002-05", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Delete from default.t_carbn01  where active_status = 'TRUE'""").collect
+  checkAnswer(s"""select count(*) from default.t_carbn01  where active_status='TRUE'""",
+    Seq(Row(0)), "DataLoadingIUDTestCase_IUD-01-01-01_002-05")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for delete Carbon table with where exists clause
+test("IUD-01-01-01_002-06", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Delete from default.t_carbn01  X where exists (select 1 from default.t_carbn01b Y where Y.item_code = X.item_code)""").collect
+  checkAnswer(s"""select count(*) from default.t_carbn01 """,
+    Seq(Row(0)), "DataLoadingIUDTestCase_IUD-01-01-01_002-06")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+//Check for update Carbon table using query involving filters
+test("IUD-01-01-01_003-03", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set ( a.item_type_cd, a.profit) = ( select b.item_type_cd, b.profit from default.t_carbn01b b where b.item_type_cd = 2)""").collect
+  checkAnswer(s"""select item_type_cd, profit from default.t_carbn01  limit 1""",
+    Seq(Row(2,2.44)), "DataLoadingIUDTestCase_IUD-01-01-01_003-03")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using query involving sub query
+test("IUD-01-01-01_003-04", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set ( a.item_type_cd, a.Profit) = ( select b.item_type_cd, b.profit from default.t_carbn01b b where a.item_type_cd = b.item_type_cd and b.item_type_cd in (select c.item_type_cd from t_carbn02 c where c.item_type_cd=2))""").collect
+  checkAnswer(s"""select item_type_cd, profit from default.t_carbn01 order by item_type_cd limit 1""",
+    Seq(Row(1,2.44)), "DataLoadingIUDTestCase_IUD-01-01-01_003-04")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using query involving sub query
+test("IUD-01-01-01_003-04_01", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.item_type_cd, a.Profit) = (select b.item_type_cd, b.profit from default.t_carbn01b b where b.item_type_cd not in (select c.item_type_cd from t_carbn02 c where c.item_type_cd != 2) and a.item_type_cd = b.item_type_cd)""").collect
+  checkAnswer(s"""select item_type_cd, profit from default.t_carbn01 order by item_type_cd limit 1""",
+    Seq(Row(1,2.44)), "DataLoadingIUDTestCase_IUD-01-01-01_003-04_01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using query involving Logical operation
+test("IUD-01-01-01_003-05", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  A set (a.item_type_cd, a.profit) = ( select b.item_type_cd, b.profit from default.t_carbn01b b where b.profit > 1 AND b.item_type_cd <3 and a.item_type_cd = b.item_type_cd)""").collect
+  checkAnswer(s"""select item_type_cd, profit from default.t_carbn01 order by item_type_cd limit 1""",
+    Seq(Row(1,2.44)), "DataLoadingIUDTestCase_IUD-01-01-01_003-05")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using query involving group by
+test("IUD-01-01-01_003-06", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.item_type_cd, a.profit) = ( select b.item_type_cd, b.profit from default.t_carbn01b b where b.item_type_cd =2)""").collect
+  checkAnswer(s"""select item_type_cd, profit from default.t_carbn01 limit 1""",
+    Seq(Row(2,2.44)), "DataLoadingIUDTestCase_IUD-01-01-01_003-06")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using inner join and filter condition on a table to pick only non duplicate records
+test("IUD-01-01-01_003-07", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update t_carbn01 a set (a.active_status) = (select b.active_status from t_carbn01b b where a.item_type_cd = b.item_type_cd and b.item_code in (select item_code from t_carbn01b group by item_code, profit having count(*)>1))""").collect
+  checkAnswer(s"""select count(active_status) from t_carbn01 where active_status = 'true' limit 1""",
+    Seq(Row(0)), "DataLoadingIUDTestCase_IUD-01-01-01_003-07")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using query involving max
+test("IUD-01-01-01_004-01", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update t_carbn01  a set (a.item_type_cd) = ((select c.code from (select max(b.item_type_cd) as code  from t_carbn01b b) c))""").collect
+  checkAnswer(s"""select item_type_cd from default.t_carbn01 limit 1""",
+    Seq(Row(123)), "DataLoadingIUDTestCase_IUD-01-01-01_004-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table using query involving spark functions
+test("IUD-01-01-01_004-02", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.create_date) = (select to_date(b.create_date) from default.t_carbn01b b where b.update_time = '2012-01-06 06:08:05.0')""").collect
+  checkAnswer(s"""select create_date from default.t_carbn01 limit 1""",
+    Seq(Row("2012-01-20")), "DataLoadingIUDTestCase_IUD-01-01-01_004-02")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for all data types using data values
+test("IUD-01-01-01_004-03", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (active_status,item_type_cd,qty_day_avg,qty_total,sell_price,sell_pricep,discount_price,profit,item_code,item_name,outlet_name,update_time,create_date) = ('true',34,344,456,1,5.5,1.1,1.1,'hheh','gfhfhfdh','fghfdhdfh',current_timestamp,'01-10-1900') where item_code='ASD423ee'""").collect
+  checkAnswer(s"""select create_date from default.t_carbn01  where create_date = '01-10-1900' limit 1""",
+    Seq(Row("01-10-1900")), "DataLoadingIUDTestCase_IUD-01-01-01_004-03")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where source table is havign numeric and target is having string value column for update
+test("IUD-01-01-01_004-04", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.item_code) = (select b.sell_price from default.t_carbn01b b where b.sell_price=200000000003454300)""").collect
+  checkAnswer(s"""select count(*) from default.t_carbn01 """,
+    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_004-04")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where source table is havign numeric and target is having decimal value column for update
+test("IUD-01-01-01_004-05", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.profit) = (select b.item_type_cd from default.t_carbn01b b where b.item_type_cd = 2 and b.active_status='TRUE' )""").collect
+  checkAnswer(s"""select profit from default.t_carbn01  limit 1""",
+    Seq(Row(2.00)), "DataLoadingIUDTestCase_IUD-01-01-01_004-05")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where source table is having big int and target is having int value column for update
+test("IUD-01-01-01_004-06", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.item_type_cd) = (select b.sell_price from default.t_carbn01b b where b.sell_price=200000343430000000)""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where source table is having string and target is having numeric value column for update
+test("IUD-01-01-01_004-07", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.item_code) = (select b.item_type_cd from default.t_carbn01b b where b.item_code='DE3423ee')""").collect
+  checkAnswer(s"""select item_type_cd from default.t_carbn01  order by item_type_cd limit 1""",
+    Seq(Row(1)), "DataLoadingIUDTestCase_IUD-01-01-01_004-07")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where source table is having string and target is having decimal value column for update
+test("IUD-01-01-01_004-08", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.profit) = (select b.item_code from default.t_carbn01b b where b.item_code='DE3423ee')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where source table is having string and target is having timestamp column for update
+test("IUD-01-01-01_004-09", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.update_time) = (select b.item_code from default.t_carbn01b b where b.item_code='DE3423ee')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where source table is having decimal and target is having numeric column for update
+test("IUD-01-01-01_004-10", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.item_type_cd) = (select b.profit from default.t_carbn01b b where b.profit=2.445)""").collect
+  checkAnswer(s"""select count(*) from default.t_carbn01 """,
+    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_004-10")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where source table is having float and target is having numeric column for update
+test("IUD-01-01-01_004-11", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.item_type_cd) = (select b.sell_pricep from default.t_carbn01b b where b.sell_pricep=11.5)""").collect
+  checkAnswer(s"""select count(*) from default.t_carbn01 """,
+    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_004-11")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where source table is having float and target is having double column for update
+test("IUD-01-01-01_004-12", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.discount_price) = (select b.sell_pricep from default.t_carbn01b b where b.sell_pricep=11.5)""").collect
+  checkAnswer(s"""select count(*) from default.t_carbn01 """,
+    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_004-12")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where source table is having Decimal(4,3)   and target is having Decimal(3,2) column for update
+test("IUD-01-01-01_004-13", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.profit) = (select b.profit*.2 from default.t_carbn01b b where b.profit=2.444)""").collect
+  checkAnswer(s"""select count(*) from default.t_carbn01 """,
+    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_004-13")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table for all data types using query on a different table
+test("IUD-01-01-01_004-14", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.Active_status,a.Item_type_cd,a.Qty_day_avg,a.Qty_total,a.Sell_price,a.Sell_pricep,a.Discount_price,a.Profit,a.Item_code,a.Item_name,a.Outlet_name,a.Update_time,a.Create_date) = (select b.Active_status,b.Item_type_cd,b.Qty_day_avg,b.Qty_total,b.Sell_price,b.Sell_pricep,b.Discount_price,b.Profit,b.Item_code,b.Item_name,b.Outlet_name,b.Update_time,b.Create_date from default.t_carbn01b b where b.Item_type_cd=2)""").collect
+  checkAnswer(s"""select count(*) from default.t_carbn01""",
+    Seq(Row(10)), "DataLoadingIUDTestCase_IUD-01-01-01_004-14")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where a update column is having a shared dictionary. Check dictionary file being updated.
+test("IUD-01-01-01_005-11", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format' TBLPROPERTIES("COLUMNPROPERTIES.Item_code.shared_column"="sharedFolder.Item_code")""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Update default.t_carbn01  set (item_code) = ('Ram')""").collect
+  checkAnswer(s"""select item_code from default.t_carbn01  group by item_code""",
+    Seq(Row("Ram")), "DataLoadingIUDTestCase_IUD-01-01-01_005-11")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where a update column is measue and is defined with include ddictionary. Check dictionary file being updated.
+test("IUD-01-01-01_005-12", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Item_type_cd INT, Profit DECIMAL(3,2))STORED BY 'org.apache.carbondata.format' TBLPROPERTIES('DICTIONARY_INCLUDE'='Item_type_cd')""").collect
+ sql(s"""insert into default.t_carbn01  select item_type_cd, profit from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_type_cd) = (100100)""").collect
+  checkAnswer(s"""select item_type_cd from default.t_carbn01  group by item_type_cd""",
+    Seq(Row(100100)), "DataLoadingIUDTestCase_IUD-01-01-01_005-12")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where a update column is dimension and is defined with exclude dictionary. 
+test("IUD-01-01-01_005-13", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Item_type_cd INT, Profit DECIMAL(3,2))STORED BY 'org.apache.carbondata.format' TBLPROPERTIES('DICTIONARY_INCLUDE'='Item_type_cd')""").collect
+ sql(s"""insert into default.t_carbn01  select item_type_cd, profit from default.t_carbn01b""").collect
+
+  try {
+    sql(s"""update default.t_carbn01  set (item_type_cd) = ('ASASDDD')""").collect
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where a update column is dimension and is defined with exclude dictionary. 
+test("IUD-01-01-01_005-14", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format' TBLPROPERTIES('DICTIONARY_EXCLUDE'='Item_code')""").collect
+ sql(s""" insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (Item_code) = ('Ram')""").collect
+  checkAnswer(s"""select item_code from default.t_carbn01  group by item_code""",
+    Seq(Row("Ram")), "DataLoadingIUDTestCase_IUD-01-01-01_005-14")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for update Carbon table where a update column is dimension and is defined with exclude dictionary. 
+test("IUD-01-01-01_005-15", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format' TBLPROPERTIES('DICTIONARY_EXCLUDE'='Item_code')""").collect
+ sql(s""" insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (Item_code) = ('123')""").collect
+  checkAnswer(s"""select item_code from default.t_carbn01  group by item_code""",
+    Seq(Row("123")), "DataLoadingIUDTestCase_IUD-01-01-01_005-15")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update on data in multiple blocks
+test("IUD-01-01-01_006-01", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_code) = ('Ram' ) where Item_code = 'RE3423ee'""").collect
+  sql(s"""select Item_code from default.t_carbn01  where Item_code = 'RE3423ee' group by item_code""").collect
+  
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update on data in multiple blocks
+test("IUD-01-01-01_007-01", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set (item_type_cd) = ('120') where Item_type_cd = '114'""").collect
+  checkAnswer(s"""select item_type_cd from default.t_carbn01   where item_type_cd = 120 group by item_type_cd""",
+    Seq(Row(120)), "DataLoadingIUDTestCase_IUD-01-01-01_007-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//check update using parquet table
+test("IUD-01-01-02_022-01", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""drop table if exists T_Parq1""").collect
+ sql(s"""create table T_Parq1(Active_status BOOLEAN, Item_type_cd TINYINT, Qty_day_avg SMALLINT, Qty_total INT, Sell_price BIGINT, Sell_pricep FLOAT, Discount_price DOUBLE , Profit DECIMAL(3,2), Item_code STRING, Item_name VARCHAR(500), Outlet_name CHAR(100), Update_time TIMESTAMP, Create_date DATE)stored as parquet""").collect
+ sql(s"""insert into T_Parq1 select * from t_hive1""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.Active_status,a.Item_type_cd,a.Qty_day_avg,a.Qty_total,a.Sell_price,a.Sell_pricep,a.Discount_price,a.Profit,a.Item_code,a.Item_name,a.Outlet_name,a.Update_time,a.Create_date) = (select b.Active_status,b.Item_type_cd,b.Qty_day_avg,b.Qty_total,b.Sell_price,b.Sell_pricep,b.Discount_price,b.Profit,b.Item_code,b.Item_name,b.Outlet_name,b.Update_time,b.Create_date from T_Parq1 b where a.item_type_cd = b.item_type_cd)""").collect
+  checkAnswer(s"""select profit from default.t_carbn01   group by profit""",
+    Seq(Row(2.44)), "DataLoadingIUDTestCase_IUD-01-01-02_022-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update on carbon table using query on Parquet table
+test("IUD-01-01-01_009-01", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""drop table if exists T_Parq1""").collect
+ sql(s"""create table T_Parq1(Active_status BOOLEAN, Item_type_cd TINYINT, Qty_day_avg SMALLINT, Qty_total INT, Sell_price BIGINT, Sell_pricep FLOAT, Discount_price DOUBLE , Profit DECIMAL(3,2), Item_code STRING, Item_name VARCHAR(500), Outlet_name CHAR(100), Update_time TIMESTAMP, Create_date DATE)stored as parquet""").collect
+ sql(s"""insert into T_Parq1 select * from t_hive1""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  a set (a.Active_status,a.Item_type_cd,a.Qty_day_avg,a.Qty_total,a.Sell_price,a.Sell_pricep,a.Discount_price,a.Profit,a.Item_code,a.Item_name,a.Outlet_name,a.Update_time,a.Create_date) = (select b.Active_status,b.Item_type_cd,b.Qty_day_avg,b.Qty_total,b.Sell_price,b.Sell_pricep,b.Discount_price,b.Profit,b.Item_code,b.Item_name,b.Outlet_name,b.Update_time,b.Create_date from T_Parq1 b where a.item_type_cd = b.item_type_cd)""").collect
+  checkAnswer(s"""select profit from default.t_carbn01   group by profit""",
+    Seq(Row(2.44)), "DataLoadingIUDTestCase_IUD-01-01-01_009-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update on carbon table using incorrect data value
+test("IUD-01-01-01_010-01", Include) {
+  try {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""update default.t_carbn01  set Update_time = '11-11-2012 77:77:77') where item_code='ASD423ee')""").collect
+    sql(s"""NA""").collect
+    
+    assert(false)
+  } catch {
+    case _ => assert(true)
+  }
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check multiple updates on the same column - for correctness of data and horizontal compaction of delta file
+test("IUD-01-01-02_001-02", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram')""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange') where Item_code = 'Ram'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') where Item_code = 'Orange'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange') where Item_code = 'Ram'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') where Item_code = 'Orange'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange') where Item_code = 'Ram'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') where Item_code = 'Orange'""").collect
+ sql(s"""Update default.t_carbn01  set (item_code) = ('Orange') where item_code = 'Ram'""").collect
+  checkAnswer(s"""select item_code from default.t_carbn01  group by item_code""",
+    Seq(Row("Orange")), "DataLoadingIUDTestCase_IUD-01-01-02_001-02")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for compaction of delta files within a segment working fine as per the configuration
+test("IUD-01-01-02_003-01", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram')""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange') where Item_code = 'Ram'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') where Item_code = 'Orange'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange') where Item_code = 'Ram'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') where Item_code = 'Orange'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange') where Item_code = 'Ram'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') where Item_code = 'Orange'""").collect
+ sql(s"""Update default.t_carbn01  set (item_code) = ('Orange') where item_code = 'Ram'""").collect
+  checkAnswer(s"""select item_code from default.t_carbn01  group by item_code""",
+    Seq(Row("Orange")), "DataLoadingIUDTestCase_IUD-01-01-02_003-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check multiple updates on the same column - for correctness of data along with horizontal compaction of delta file
+test("IUD-01-01-02_002-01", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram')""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange') where Item_code = 'Ram'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') where Item_code = 'Orange'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange') where Item_code = 'Ram'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') where Item_code = 'Orange'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange') where Item_code = 'Ram'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') where Item_code = 'Orange'""").collect
+ sql(s"""Update default.t_carbn01  set (item_code) = ('Orange') where item_code = 'Ram'""").collect
+  checkAnswer(s"""select item_code from default.t_carbn01  group by item_code""",
+    Seq(Row("Orange")), "DataLoadingIUDTestCase_IUD-01-01-02_002-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check multiple updates on the different column - for correctness of data and horizontal compaction of delta file
+test("IUD-01-01-01_012-01", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange')""").collect
+ sql(s"""update default.t_carbn01  set (Item_type_cd) = (24523)""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Banana')""").collect
+ sql(s"""update default.t_carbn01  set (Item_type_cd) = (1111)""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange')""").collect
+ sql(s"""update default.t_carbn01  set (Item_type_cd) = (24523)""").collect
+ sql(s"""Update default.t_carbn01 set (Item_code) = ('Banana')""").collect
+ sql(s"""update default.t_carbn01  set (Item_type_cd) = (1111)""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange')""").collect
+ sql(s"""update default.t_carbn01  set (Item_type_cd) = (24523)""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Banana')""").collect
+ sql(s"""update default.t_carbn01  set (Item_type_cd) = (1111)""").collect
+  checkAnswer(s"""select item_code from default.t_carbn01  group by item_code""",
+    Seq(Row("Banana")), "DataLoadingIUDTestCase_IUD-01-01-01_012-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check for delta files handling during table compaction and not breaking the data integrity
+test("IUD-01-01-02_004-01", Include) {
+   sql(s"""create table if not exists default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') """).collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Orange') where Item_code = 'Ram'""").collect
+ sql(s"""Update default.t_carbn01  set (Item_code) = ('Ram') where Item_code = 'Orange'""").collect
+ sql(s"""ALTER TABLE T_Carbn01 COMPACT 'MINOR'""").collect
+ sql(s"""select item_code from default.t_carbn01  group by item_code""").collect
+  checkAnswer(s"""select item_code from t_carbn01  group by item_code""",
+    Seq(Row("Ram")), "DataLoadingIUDTestCase_IUD-01-01-02_004-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update by doing data insert before and after update also check data consistency, no residual file left in HDFS
+test("IUD-01-01-02_006-01", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b """).collect
+ sql(s"""update default.t_carbn01  set (profit) = (1.2) where item_type_cd = 2 """).collect
+ sql(s"""insert into t_carbn01 select * from t_carbn01b""").collect
+  checkAnswer(s"""select count(profit) from default.t_carbn01""",
+    Seq(Row(20)), "DataLoadingIUDTestCase_IUD-01-01-02_006-01")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//Check update by doing data load before and after update also check data consistency, no residual file left in HDFS
+test("IUD-01-01-02_006-02", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect
+ sql(s"""insert into default.t_carbn01  select * from default.t_carbn01b """).collect
+ sql(s"""update default.t_carbn01  set (profit) = (1.2) where item_type_cd = 2 """).collect
+ sql(s"""LOAD DATA INPATH '$resourcesPath/Data/InsertData/T_Hive1.csv' INTO table default.t_carbn01 options ('DELIMITER'=',', 'QUOTECHAR'='\', 'FILEHEADER'='Active_status,Item_type_cd,Qty_day_avg,Qty_total,Sell_price,Sell_pricep,Discount_price,Profit,Item_code,Item_name,Outlet_name,Update_time,Create_date')""").collect
+ sql(s"""select count(*) from default.t_carbn01""").collect
+  checkAnswer(s"""select count(profit) from default.t_carbn01""",
+    Seq(Row(20)), "DataLoadingIUDTestCase_IUD-01-01-02_006-02")
+   sql(s"""drop table default.t_carbn01  """).collect
+}
+       
+
+//do a delete rows after update and see that the updated columns are deleted
+test("IUD-01-01-02_006-12", Include) {
+   sql(s"""drop table IF EXISTS default.t_carbn01 """).collect
+ sql(s"""create table default.t_carbn01 (Active_status String,Item_type_cd INT,Qty_day_avg INT,Qty_total INT,Sell_price BIGINT,Sell_pricep DOUBLE,Discount_price DOUBLE,Profit DECIMAL(3,2),Item_code String,Item_name String,Outlet_name String,Update_time TIMESTAMP,Create_date String)STORED BY 'org.apache.carbondata.format'""").collect

<TRUNCATED>