Skip to content

Conversation

@kostya-sh
Copy link

Both akka 2.3.x and hadoop-2.x use protobuf 2.5 so only hadoop-1 build needs
custom 2.3.4-spark akka version that shades protobuf-2.5

This change also updates akka version (for hadoop-2.x profiles only) to the
latest 2.3.11 as akka-zeromq_2.11 is not available for akka 2.3.4.

This partially fixes SPARK-7042 (for hadoop-2.x builds)

Both akka 2.3.x and hadoop-2.x use protobuf 2.5 so only hadoop-1 build needs
custom 2.3.4-spark akka version that shades protobuf-2.5

This change also updates akka version (for hadoop-2.x profiles only) to the
latest 2.3.11 as akka-zeromq_2.11 is not available for akka 2.3.4.

This partially fixes SPARK-7042 (for hadoop-2.x builds)
@srowen
Copy link
Member

srowen commented May 29, 2015

OK to test

@srowen
Copy link
Member

srowen commented May 29, 2015

Jenkins, add to whitelist

@SparkQA
Copy link

SparkQA commented May 29, 2015

Test build #33728 has finished for PR 6492 at commit dc195b0.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@srowen
Copy link
Member

srowen commented Jun 6, 2015

I'm inclined to pull this in if in fact it works with Scala 2.11 this time around, as reported on the JIRA. 2.3.11 is claimed to be a drop in replacement for earlier 2.3.x: http://akka.io/news/2015/05/12/akka-2.3.11-released.html Tests pass. OK to try out for master? @pwendell

@pwendell
Copy link
Contributor

pwendell commented Jun 6, 2015

Yep LGTM

srowen pushed a commit that referenced this pull request Jun 7, 2015
Both akka 2.3.x and hadoop-2.x use protobuf 2.5 so only hadoop-1 build needs
custom 2.3.4-spark akka version that shades protobuf-2.5

This change also updates akka version (for hadoop-2.x profiles only) to the
latest 2.3.11 as akka-zeromq_2.11 is not available for akka 2.3.4.

This partially fixes SPARK-7042 (for hadoop-2.x builds)

Author: Konstantin Shaposhnikov <[email protected]>

Closes #6492 from kostya-sh/SPARK-7042 and squashes the following commits:

dc195b0 [Konstantin Shaposhnikov] [SPARK-7042] [BUILD] use the standard akka artifacts with hadoop-2.x
@srowen
Copy link
Member

srowen commented Jun 8, 2015

@kostya-sh I merged this, but it didn't auto-close due to a sync problem. You can close this PR.

@kostya-sh
Copy link
Author

@srowen, thank you. Closing the pull request now.

@kostya-sh kostya-sh closed this Jun 8, 2015
@nchammas
Copy link
Contributor

Heads up: This PR appears to have broken Spark when built against Hadoop 1. I've been having trouble coming up with a simple repro, but spark-perf tests succeed on preceding commits and fail starting precisely on this one.

For the spark-perf tests, Spark is being built as follows:

./make-distribution.sh --skip-java-test -Dhadoop.version=1.2.1 -Phadoop-1

@kostya-sh
Copy link
Author

@nchammas, what errors are you getting?

@kostya-sh
Copy link
Author

@nchammas, also what version of maven did you use to build Spark?

A quick test shows that at least maven-3.1.1 is broken (by not taking active profile into account when resolving transitive dependencies) and maven-3.3.3 (the latest) seems to work.

3.1.1 (note that that both 2.3.11 and 2.3.4-spark akka versions are referenced):

> mvn dependency:tree -Phadoop-1  | grep akka
[INFO] +- org.spark-project.akka:akka-remote_2.10:jar:2.3.4-spark:compile
[INFO] |  +- org.spark-project.akka:akka-actor_2.10:jar:2.3.4-spark:compile
[INFO] +- org.spark-project.akka:akka-slf4j_2.10:jar:2.3.4-spark:compile
[INFO] +- org.spark-project.akka:akka-testkit_2.10:jar:2.3.4-spark:test
[INFO] |  +- com.typesafe.akka:akka-remote_2.10:jar:2.3.11:compile
[INFO] |  |  +- com.typesafe.akka:akka-actor_2.10:jar:2.3.11:compile
[INFO] |  +- com.typesafe.akka:akka-slf4j_2.10:jar:2.3.11:compile
...

3.3.3 (only 2.3.4-spark akka version)

[INFO] +- org.spark-project.akka:akka-remote_2.10:jar:2.3.4-spark:compile
[INFO] |  +- org.spark-project.akka:akka-actor_2.10:jar:2.3.4-spark:compile
[INFO] +- org.spark-project.akka:akka-slf4j_2.10:jar:2.3.4-spark:compile
[INFO] +- org.spark-project.akka:akka-testkit_2.10:jar:2.3.4-spark:test
[INFO] |  +- org.spark-project.akka:akka-remote_2.10:jar:2.3.4-spark:compile
[INFO] |  |  +- org.spark-project.akka:akka-actor_2.10:jar:2.3.4-spark:compile
[INFO] |  +- org.spark-project.akka:akka-slf4j_2.10:jar:2.3.4-spark:compile
[INFO] |  +- org.spark-project.akka:akka-remote_2.10:jar:2.3.4-spark:compile
[INFO] |  |  +- org.spark-project.akka:akka-actor_2.10:jar:2.3.4-spark:compile
[INFO] |  +- org.spark-project.akka:akka-slf4j_2.10:jar:2.3.4-spark:compile
...

@zsxwing
Copy link
Member

zsxwing commented Jun 11, 2015

3.2.5 has the same issue, too

mvn -Phadoop-1 dependency:tree | grep akka
[INFO] +- org.spark-project.akka:akka-remote_2.10:jar:2.3.4-spark:compile
[INFO] |  +- org.spark-project.akka:akka-actor_2.10:jar:2.3.4-spark:compile
[INFO] +- org.spark-project.akka:akka-slf4j_2.10:jar:2.3.4-spark:compile
[INFO] +- org.spark-project.akka:akka-testkit_2.10:jar:2.3.4-spark:test
[INFO] |  +- com.typesafe.akka:akka-remote_2.10:jar:2.3.11:compile
[INFO] |  |  +- com.typesafe.akka:akka-actor_2.10:jar:2.3.11:compile
[INFO] |  +- com.typesafe.akka:akka-slf4j_2.10:jar:2.3.11:compile
[INFO] |  +- com.typesafe.akka:akka-remote_2.10:jar:2.3.11:compile
[INFO] |  |  +- com.typesafe.akka:akka-actor_2.10:jar:2.3.11:compile
[INFO] |  +- com.typesafe.akka:akka-slf4j_2.10:jar:2.3.11:compile

@srowen
Copy link
Member

srowen commented Jun 11, 2015

So let's require Maven 3.3 -- problem solved!

I'm going to just say it: what about dropping Hadoop 1.x support in Spark 1.5? Java 6 support is going away too.

@nchammas
Copy link
Contributor

@kostya-sh @zsxwing - I was using Maven 3.2.5. Lemme try with 3.3 and confirm that that fixes things.

The top level error was this:

15/06/09 17:02:10 ERROR ActorSystemImpl: Uncaught fatal error from thread [sparkDriver-akka.remote.default-remote-dispatcher-6] shutting down ActorSystem [sparkDriver]
java.lang.VerifyError: class akka.remote.WireFormats$AkkaControlMessage overrides final method getUnknownFields.()Lcom/google/protobuf/UnknownFieldSet;
...
15/06/09 17:02:20 ERROR SparkContext: Error initializing SparkContext.
java.util.concurrent.TimeoutException: Futures timed out after [10000 milliseconds]

@srowen - Do you want to start a discussion on the dev list about both requiring Maven 3.3 and dropping Hadoop 1 support (perhaps in separate threads)?

@nchammas
Copy link
Contributor

OK, I confirmed that using Maven 3.3.3 resolves my issue.

nchammas added a commit to databricks/spark-perf that referenced this pull request Jun 12, 2015
Versions of Maven older than 3.3.0 apparently have [a bug in how they handle transitive dependencies](apache/spark#6492 (comment)).

I confirmed that upgrading to Maven 3.3.3 resolves at least the particular manifestation of this bug that I ran into.

Author: Nicholas Chammas <[email protected]>

Closes #75 from nchammas/maven-333 and squashes the following commits:

3e751ab [Nicholas Chammas] Upgrade to latest Maven release
asfgit pushed a commit that referenced this pull request Jun 15, 2015
Versions of Maven older than 3.3.0 apparently have [a bug in how they handle transitive dependencies](#6492 (comment)).

I confirmed that upgrading to Maven 3.3.3 resolves at least the particular manifestation of this bug that I ran into.

Author: Nicholas Chammas <[email protected]>

Closes #6770 from nchammas/maven-333 and squashes the following commits:

6bed2d9 [Nicholas Chammas] upgrade to Maven 3.3.3
nemccarthy pushed a commit to nemccarthy/spark that referenced this pull request Jun 19, 2015
Both akka 2.3.x and hadoop-2.x use protobuf 2.5 so only hadoop-1 build needs
custom 2.3.4-spark akka version that shades protobuf-2.5

This change also updates akka version (for hadoop-2.x profiles only) to the
latest 2.3.11 as akka-zeromq_2.11 is not available for akka 2.3.4.

This partially fixes SPARK-7042 (for hadoop-2.x builds)

Author: Konstantin Shaposhnikov <[email protected]>

Closes apache#6492 from kostya-sh/SPARK-7042 and squashes the following commits:

dc195b0 [Konstantin Shaposhnikov] [SPARK-7042] [BUILD] use the standard akka artifacts with hadoop-2.x
nemccarthy pushed a commit to nemccarthy/spark that referenced this pull request Jun 19, 2015
Versions of Maven older than 3.3.0 apparently have [a bug in how they handle transitive dependencies](apache#6492 (comment)).

I confirmed that upgrading to Maven 3.3.3 resolves at least the particular manifestation of this bug that I ran into.

Author: Nicholas Chammas <[email protected]>

Closes apache#6770 from nchammas/maven-333 and squashes the following commits:

6bed2d9 [Nicholas Chammas] upgrade to Maven 3.3.3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants