http://apache-carbondata-dev-mailing-list-archive.168.s1.nabble.com/jira-Updated-CARBONDATA-180-give-proper-error-message-when-dataloading-with-wrong-delimiter-value-tp1440.html
> give proper error message when dataloading with wrong delimiter value
> ---------------------------------------------------------------------
>
> Key: CARBONDATA-180
> URL:
https://issues.apache.org/jira/browse/CARBONDATA-180> Project: CarbonData
> Issue Type: Bug
> Reporter: QiangCai
> Assignee: QiangCai
> Priority: Minor
> Fix For: 0.2.0-incubating, 0.1.1-incubating
>
>
> Reproduce:
> CREATE TABLE IF NOT EXISTS t3
> (ID Int, date Timestamp, country String, name String, phonetype String, serialname String, salary Int)
> STORED BY 'carbondata'
> LOAD DATA LOCAL INPATH 'data.csv' into table t3 options('DELIMITER'='#', 'FILEHEADER'='ID,date,country,name,phonetype,serialname,salary')
> File name:data.csv
> 1,2015/7/23,china,aaa1,phone197,ASD69643,15000
> 2,2015/7/24,china,aaa2,phone756,ASD42892,15001
> 3,2015/7/25,china,aaa3,phone1904,ASD37014,15002
> Exception:
> ERROR 26-08 11:44:12,881 - generate global dictionary failed
> java.lang.ArrayIndexOutOfBoundsException: 2
> at org.apache.carbondata.spark.util.GlobalDictionaryUtil$$anonfun$pruneDimensions$1$$anonfun$apply$1$$anonfun$apply$mcV$sp$1.apply(GlobalDictionaryUtil.scala:79)
> at org.apache.carbondata.spark.util.GlobalDictionaryUtil$$anonfun$pruneDimensions$1$$anonfun$apply$1$$anonfun$apply$mcV$sp$1.apply(GlobalDictionaryUtil.scala:76)
> at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
> at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:108)
> at org.apache.carbondata.spark.util.GlobalDictionaryUtil$$anonfun$pruneDimensions$1$$anonfun$apply$1.apply$mcV$sp(GlobalDictionaryUtil.scala:76)
> at scala.util.control.Breaks.breakable(Breaks.scala:37)
> at org.apache.carbondata.spark.util.GlobalDictionaryUtil$$anonfun$pruneDimensions$1.apply(GlobalDictionaryUtil.scala:75)
> at org.apache.carbondata.spark.util.GlobalDictionaryUtil$$anonfun$pruneDimensions$1.apply(GlobalDictionaryUtil.scala:74)
> at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
> at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:108)
> at org.apache.carbondata.spark.util.GlobalDictionaryUtil$.pruneDimensions(GlobalDictionaryUtil.scala:74)
> at org.apache.carbondata.spark.util.GlobalDictionaryUtil$.generateGlobalDictionary(GlobalDictionaryUtil.scala:697)
> at org.apache.spark.sql.execution.command.LoadTable.run(carbonTableSchema.scala:1159)
> at org.apache.spark.sql.execution.ExecutedCommand.sideEffectResult$lzycompute(commands.scala:57)
> at org.apache.spark.sql.execution.ExecutedCommand.sideEffectResult(commands.scala:57)
> at org.apache.spark.sql.execution.ExecutedCommand.doExecute(commands.scala:69)
> at org.apache.spark.sql.execution.SparkPlan$$anonfun$execute$5.apply(SparkPlan.scala:140)
> at org.apache.spark.sql.execution.SparkPlan$$anonfun$execute$5.apply(SparkPlan.scala:138)
> at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:147)
> at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:138)
> at org.apache.spark.sql.SQLContext$QueryExecution.toRdd$lzycompute(SQLContext.scala:933)
> at org.apache.spark.sql.SQLContext$QueryExecution.toRdd(SQLContext.scala:933)
> at org.apache.spark.sql.DataFrame.<init>(DataFrame.scala:144)
> at org.apache.spark.sql.DataFrame.<init>(DataFrame.scala:129)
> at org.apache.carbondata.spark.rdd.CarbonDataFrameRDD.<init>(CarbonDataFrameRDD.scala:23)
> at org.apache.spark.sql.CarbonContext.sql(CarbonContext.scala:130)
> at org.apache.carbondata.examples.CarbonExample$.main(CarbonExample.scala:42)
> at org.apache.carbondata.examples.CarbonExample.main(CarbonExample.scala)