-
Notifications
You must be signed in to change notification settings - Fork 28.7k
[SPARK-12413] Fix Mesos ZK persistence #10366
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
add to whitelist |
// | ||
// Due to https://issues.scala-lang.org/browse/SI-6654, `filterKeys` returns an | ||
// unserializable object,so we must call `.map(identity)` on the result. | ||
val environmentVariables = request.environmentVariables.filterKeys(!_.equals("SPARK_HOME")).map(identity) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this line will fail style tests because it's too long. Need to break it into 2
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed. thanks.
Test build #47959 has finished for PR 10366 at commit
|
I was able to verify SI-6654 in the REPL and I believe this patch is the correct fix:
|
LGTM, retest this please |
@mgummelt is this still WIP? If not can you remove that from the title? Also, any updates from your integration tests? |
I included [WIP] to indicate that my integration test hasn't finished yet (still pending). Code should be frozen though. Would you like me to remove [WIP]? |
Yes |
val environmentVariables = request.environmentVariables.filterKeys(!_.equals("SPARK_HOME")) | ||
.map(identity) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, there's a slightly nicer way...
// Do not use `filterKeys` here to avoid SI-6654, which breaks ZK persistence
val environmentVariables = request.environmentVariables.filter { case (k, _) =>
k != "SPARK_HOME"
}
so we don't have to do the weird filterKeys(...).map(identity)
thing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, that's better. Fixed.
Fixed |
Test build #2226 has started for PR 10366 at commit |
Test build #2225 has started for PR 10366 at commit |
Test failure looks like some sort of timeout? https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/47962/console |
It's OK, we have 2 builds that are actually running. Hopefully one of them will pass. |
retest this please. I'm not sure why it's timing out on tests. AFAIK this file isn't even used in tests. |
Test build #2229 has started for PR 10366 at commit |
Test build #47960 has finished for PR 10366 at commit
|
retest this please |
Test build #47974 has finished for PR 10366 at commit
|
Test build #2228 has finished for PR 10366 at commit
|
Test build #2230 has finished for PR 10366 at commit
|
Will this make 1.6.0? |
LGTM. Thanks @mgummelt for catching and fixing this! |
LGTM as well. |
LGTM. Merging into |
I believe this fixes SPARK-12413. I'm currently running an integration test to verify. Author: Michael Gummelt <mgummelt@mesosphere.io> Closes #10366 from mgummelt/fix-zk-mesos. (cherry picked from commit 2bebaa3) Signed-off-by: Kousuke Saruta <sarutak@oss.nttdata.co.jp>
Note: I'm reverting this patch in master only since #10329, the better alternative, is merged there. |
@andrewor14 makes sense. Thank you! |
@@ -99,7 +99,11 @@ private[mesos] class MesosSubmitRequestServlet( | |||
// cause spark-submit script to look for files in SPARK_HOME instead. | |||
// We only need the ability to specify where to find spark-submit script | |||
// which user can user spark.executor.home or spark.home configurations. | |||
val environmentVariables = request.environmentVariables.filterKeys(!_.equals("SPARK_HOME")) | |||
// | |||
// Do not use `filterKeys` here to avoid SI-6654, which breaks ZK persistence |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should a scalastyle rule be added which prevents filterKeys to be used in future PRs ?
I believe this fixes SPARK-12413. I'm currently running an integration test to verify.