Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Fixed
-
1.2.0
-
None
Description
The patch that introduced shading to Guava (SPARK-2848) tried to maintain backwards compatibility in the Java API by not relocating the "Optional" class. That causes problems when that class references package private members in the Absent and Present classes, which are now in a different package:
Exception in thread "main" java.lang.IllegalAccessError: tried to access class org.spark-project.guava.common.base.Present from class com.google.common.base.Optional at com.google.common.base.Optional.of(Optional.java:86) at org.apache.spark.api.java.JavaUtils$.optionToOptional(JavaUtils.scala:25) at org.apache.spark.api.java.JavaSparkContext.getSparkHome(JavaSparkContext.scala:542)
Attachments
Attachments
Issue Links
- links to