You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Maciej Szymkiewicz (JIRA)" <ji...@apache.org> on 2015/10/17 18:02:05 UTC

[jira] [Created] (SPARK-11167) Incorrect type resolution on heterogeneous data structures

Maciej Szymkiewicz created SPARK-11167:
------------------------------------------

             Summary: Incorrect type resolution on heterogeneous data structures
                 Key: SPARK-11167
                 URL: https://issues.apache.org/jira/browse/SPARK-11167
             Project: Spark
          Issue Type: Bug
          Components: SparkR
    Affects Versions: 1.6.0
            Reporter: Maciej Szymkiewicz


If structure contains heterogeneous incorrectly assigns type of the encountered element as type of a whole structure. This problem affects both lists:

{code}
SparkR:::infer_type(list(a=1, b="a")
## [1] "array<double>"

SparkR:::infer_type(list(a="a", b=1))
##  [1] "array<string>"
{code}

and environments:

{code}
SparkR:::infer_type(as.environment(list(a=1, b="a")))
## [1] "map<string,double>"

SparkR:::infer_type(as.environment(list(a="a", b=1)))
## [1] "map<string,string>"
{code}

This results in errors during data collection and other operations on DataFrames:

{code}
ldf <- data.frame(row.names=1:2)
ldf$foo <- list(list("1", 2), list(3, 4))
sdf <- createDataFrame(sqlContext, ldf)
collect(sdf)
## 15/10/17 17:58:57 ERROR Executor: Exception in task 0.0 in stage 9.0 (TID 9)
## scala.MatchError: 2.0 (of class java.lang.Double)
## ...
{code}



--
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