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 2016/02/28 17:17:18 UTC

[jira] [Created] (SPARK-13540) Scala object can't be added to OuterScopes

Cheng Lian created SPARK-13540:
----------------------------------

             Summary: Scala object can't be added to OuterScopes
                 Key: SPARK-13540
                 URL: https://issues.apache.org/jira/browse/SPARK-13540
             Project: Spark
          Issue Type: Bug
            Reporter: Cheng Lian


Add the following test case to {{DatasetSuite}} to reproduce this issue:
{code}
object OuterObject {
  case class InnerClass(a: String)
}

test("foo") {
  OuterScopes.addOuterScope(OuterObject)
  Seq(OuterObject.InnerClass("foo")).toDS()
}
{code}
Exception thrown:
{noformat}
org.apache.spark.sql.AnalysisException: Unable to generate an encoder for inner class `org.apache.spark.sql.OuterObject$InnerClass` without access to the scope that this class was defined in.
{noformat}
The reason is that the class name added to {{OuterScope}} is the the one with {{$}} suffix (class name of the object), while the Java declaring class of {{InnerClass}} is the one without {{$}} suffix.



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