You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Cheng Lian (JIRA)" <ji...@apache.org> on 2015/06/18 20:42:00 UTC
[jira] [Created] (SPARK-8448) ORC data source doesn't support
column names with comma
Cheng Lian created SPARK-8448:
---------------------------------
Summary: ORC data source doesn't support column names with comma
Key: SPARK-8448
URL: https://issues.apache.org/jira/browse/SPARK-8448
Project: Spark
Issue Type: Bug
Components: SQL
Affects Versions: 1.4.0
Reporter: Cheng Lian
Spark shell snippet for reproduction:
{code}
sqlContext.range(0, 10).select('id as "a, b").write.format("orc").save("/tmp/foo")
{code}
Exception thrown:
{noformat}
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
at java.util.ArrayList.rangeCheck(ArrayList.java:653)
at java.util.ArrayList.get(ArrayList.java:429)
at org.apache.hadoop.hive.ql.io.orc.OrcStruct$OrcStructInspector.<init>(OrcStruct.java:190)
at org.apache.hadoop.hive.ql.io.orc.OrcStruct.createObjectInspector(OrcStruct.java:529)
at org.apache.hadoop.hive.ql.io.orc.OrcSerde.initialize(OrcSerde.java:106)
at org.apache.spark.sql.hive.orc.OrcOutputWriter.<init>(OrcRelation.scala:76)
at org.apache.spark.sql.hive.orc.OrcRelation$$anon$1.newInstance(OrcRelation.scala:200)
at org.apache.spark.sql.sources.DefaultWriterContainer.initWriters(commands.scala:410)
at org.apache.spark.sql.sources.BaseWriterContainer.executorSideSetup(commands.scala:318)
at org.apache.spark.sql.sources.InsertIntoHadoopFsRelation.org$apache$spark$sql$sources$InsertIntoHadoopFsRelation$$writeRows$1(commands.scala:147)
at org.apache.spark.sql.sources.InsertIntoHadoopFsRelation$$anonfun$insert$1.apply(commands.scala:135)
at org.apache.spark.sql.sources.InsertIntoHadoopFsRelation$$anonfun$insert$1.apply(commands.scala:135)
at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:63)
at org.apache.spark.scheduler.Task.run(Task.scala:70)
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:213)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
{noformat}
This is because ORC SerDe requires a property named {{columns}}, which is a comma separated list of output column names.
We should catch this case at analysis phase and throw an {{AnalysisException}} with a more helpful error message.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org