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/06 06:14:00 UTC
carbondata git commit: [CARBONDATA-1411][CARBONDATA-1414] Show
Segment command gives Null Pointer Exception after updation
Repository: carbondata
Updated Branches:
refs/heads/master 04b63af6d -> 08ef3bb53
[CARBONDATA-1411][CARBONDATA-1414] Show Segment command gives Null Pointer Exception after updation
This closes #1304
Project: http://git-wip-us.apache.org/repos/asf/carbondata/repo
Commit: http://git-wip-us.apache.org/repos/asf/carbondata/commit/08ef3bb5
Tree: http://git-wip-us.apache.org/repos/asf/carbondata/tree/08ef3bb5
Diff: http://git-wip-us.apache.org/repos/asf/carbondata/diff/08ef3bb5
Branch: refs/heads/master
Commit: 08ef3bb536d12d7fbdfad9168c64ffe48d8bc01a
Parents: 04b63af
Author: chenliang613 <ch...@apache.org>
Authored: Thu Aug 31 16:00:56 2017 +0800
Committer: Ravindra Pesala <ra...@gmail.com>
Committed: Wed Sep 6 11:43:36 2017 +0530
----------------------------------------------------------------------
.../testsuite/iud/UpdateCarbonTableTestCase.scala | 14 ++++++++++++++
.../sql/execution/command/carbonTableSchema.scala | 9 +++++++--
.../sql/execution/command/carbonTableSchema.scala | 9 +++++++--
3 files changed, 28 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/carbondata/blob/08ef3bb5/integration/spark-common-test/src/test/scala/org/apache/carbondata/spark/testsuite/iud/UpdateCarbonTableTestCase.scala
----------------------------------------------------------------------
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 ff0aadf..623416b 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
@@ -390,6 +390,20 @@ class UpdateCarbonTableTestCase extends QueryTest with BeforeAndAfterAll {
}
}
+ test("test show segment after updating data : JIRA-1411,JIRA-1414") {
+ sql("""drop table if exists iud.show_segment""").show
+ sql("""create table iud.show_segment (c1 string,c2 int,c3 string,c5 string) STORED BY 'org.apache.carbondata.format'""")
+ sql(s"""LOAD DATA LOCAL INPATH '$resourcesPath/IUD/dest.csv' INTO table iud.show_segment""")
+ val before_update = sql("""show segments for table iud.show_segment""").toDF()
+ sql("""update iud.show_segment d set (d.c3, d.c5 ) = (select s.c33,s.c55 from iud.source2 s where d.c1 = s.c11) where 1 = 1""").show()
+ val after_update = sql("""show segments for table iud.show_segment""").toDF()
+ checkAnswer(
+ before_update,
+ after_update
+ )
+ sql("""drop table if exists iud.show_segment""").show
+ }
+
test("Failure of update operation due to bad record with proper error message") {
try {
CarbonProperties.getInstance()
http://git-wip-us.apache.org/repos/asf/carbondata/blob/08ef3bb5/integration/spark/src/main/scala/org/apache/spark/sql/execution/command/carbonTableSchema.scala
----------------------------------------------------------------------
diff --git a/integration/spark/src/main/scala/org/apache/spark/sql/execution/command/carbonTableSchema.scala b/integration/spark/src/main/scala/org/apache/spark/sql/execution/command/carbonTableSchema.scala
index d8ede13..a8d9050 100644
--- a/integration/spark/src/main/scala/org/apache/spark/sql/execution/command/carbonTableSchema.scala
+++ b/integration/spark/src/main/scala/org/apache/spark/sql/execution/command/carbonTableSchema.scala
@@ -561,11 +561,16 @@ case class LoadTable(
val dimensions = carbonTable.getDimensionByTableName(
carbonTable.getFactTableName).asScala.toArray
// add the start entry for the new load in the table status file
- CommonUtil.
- readAndUpdateLoadProgressInTableMeta(carbonLoadModel, storePath, isOverwriteExist)
+ if (!updateModel.isDefined) {
+ CommonUtil.
+ readAndUpdateLoadProgressInTableMeta(carbonLoadModel, storePath, isOverwriteExist)
+ }
if (isOverwriteExist) {
LOGGER.info(s"Overwrite is in progress for carbon table with $dbName.$tableName")
}
+ if (null == carbonLoadModel.getLoadMetadataDetails) {
+ CommonUtil.readLoadMetadataDetails(carbonLoadModel, storePath)
+ }
if (carbonLoadModel.getLoadMetadataDetails.isEmpty && carbonLoadModel.getUseOnePass &&
StringUtils.isEmpty(columnDict) && StringUtils.isEmpty(allDictionaryPath)) {
LOGGER.info(s"Cannot use single_pass=true for $dbName.$tableName during the first load")
http://git-wip-us.apache.org/repos/asf/carbondata/blob/08ef3bb5/integration/spark2/src/main/scala/org/apache/spark/sql/execution/command/carbonTableSchema.scala
----------------------------------------------------------------------
diff --git a/integration/spark2/src/main/scala/org/apache/spark/sql/execution/command/carbonTableSchema.scala b/integration/spark2/src/main/scala/org/apache/spark/sql/execution/command/carbonTableSchema.scala
index d610780..9170550 100644
--- a/integration/spark2/src/main/scala/org/apache/spark/sql/execution/command/carbonTableSchema.scala
+++ b/integration/spark2/src/main/scala/org/apache/spark/sql/execution/command/carbonTableSchema.scala
@@ -775,11 +775,16 @@ case class LoadTable(
GlobalDictionaryUtil.updateTableMetadataFunc = LoadTable.updateTableMetadata
val storePath = relation.tableMeta.storePath
// add the start entry for the new load in the table status file
- CommonUtil.
- readAndUpdateLoadProgressInTableMeta(carbonLoadModel, storePath, isOverwriteTable)
+ if (!updateModel.isDefined) {
+ CommonUtil.
+ readAndUpdateLoadProgressInTableMeta(carbonLoadModel, storePath, isOverwriteTable)
+ }
if (isOverwriteTable) {
LOGGER.info(s"Overwrite of carbon table with $dbName.$tableName is in progress")
}
+ if (null == carbonLoadModel.getLoadMetadataDetails) {
+ CommonUtil.readLoadMetadataDetails(carbonLoadModel, storePath)
+ }
if (carbonLoadModel.getLoadMetadataDetails.isEmpty && carbonLoadModel.getUseOnePass &&
StringUtils.isEmpty(column_dict) && StringUtils.isEmpty(all_dictionary_path)) {
LOGGER.info(s"Cannot use single_pass=true for $dbName.$tableName during the first load")