You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Sean R. Owen (Jira)" <ji...@apache.org> on 2019/12/16 19:00:03 UTC

[jira] [Created] (SPARK-30272) Remove usage of Guava that breaks in Guava 27

Sean R. Owen created SPARK-30272:
------------------------------------

             Summary: Remove usage of Guava that breaks in Guava 27
                 Key: SPARK-30272
                 URL: https://issues.apache.org/jira/browse/SPARK-30272
             Project: Spark
          Issue Type: Improvement
          Components: Spark Core, SQL
    Affects Versions: 3.0.0
            Reporter: Sean R. Owen
            Assignee: Sean R. Owen


Background:
https://issues.apache.org/jira/browse/SPARK-29250
https://github.com/apache/spark/pull/25932

Hadoop 3.2.1 will update Guava from 11 to 27. There are a number of methods that changed between those releases, typically just a rename, but, means one set of code can't work with both, while we want to work with Hadoop 2.x and 3.x. Among them:

- Objects.toStringHelper was moved to MoreObjects; we can just use the Commons Lang3 equivalent
- Objects.hashCode etc were renamed; use java.util.Objects equivalents
- MoreExecutors.sameThreadExecutor() became directExecutor(); for same-thread execution we can use a dummy implementation of ExecutorService / Executor
- TypeToken.isAssignableFrom become isSupertypeOf; work around with reflection

There is probably more to the Guava issue than just this change, but it will make Spark itself work with more versions and reduce our exposure to Guava along the way anyway.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org