-
Notifications
You must be signed in to change notification settings - Fork 28.1k
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
[SPARK-32119][CORE] ExecutorPlugin doesn't work with Standalone Cluster and Kubernetes with --jars #28939
Conversation
Hi, @sarutak . Do you think we can consider this as a |
Marked as |
Thanks, @sarutak . That's enough~ |
Test build #124605 has finished for PR 28939 at commit
|
The failure seems relevant.
|
cc @vanzin FYI |
@@ -1254,7 +1255,7 @@ class SparkSubmitSuite | |||
|public void init(PluginContext ctx, Map<String, String> extraConf) { | |||
| String str = null; | |||
| try (BufferedReader reader = | |||
| new BufferedReader(new InputStreamReader(new FileInputStream($tempFileName)))) { | |||
| new BufferedReader(new InputStreamReader(new FileInputStream("$tempFileName")))) { |
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.
Oh, interesting. Previously, this test case succeeds with "
?
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, I replaced "test.txt"
with $tempFileName
just before the first push so, it's a miss-replacement.
Test build #124622 has finished for PR 28939 at commit
|
retest this please. |
Test build #124628 has finished for PR 28939 at commit
|
Those failed tests passed on my laptop so I'll extend the timeout of the newly added testcase to 30 secs just in case. |
Test build #124682 has finished for PR 28939 at commit
|
cc: @LucaCanali |
This appears to have issues with Kubernetes in my tests, when adding |
@LucaCanali Thank you for the feedback. I'll look into the cause. |
Test build #124941 has started for PR 28939 at commit |
retest this please. |
Test build #125113 has started for PR 28939 at commit |
retest this please. |
Test build #125260 has started for PR 28939 at commit |
retest this please. |
Test build #125458 has started for PR 28939 at commit |
Hmm, how flaky it is... |
retest this please. |
Kubernetes integration test status failure |
This looks good to me - once Tom's comment is addressed. |
Test build #127425 has finished for PR 28939 at commit
|
Oops, I've forgotten to remove the unused code. Thanks. |
Kubernetes integration test starting |
Test build #127438 has finished for PR 28939 at commit
|
Kubernetes integration test status failure |
retest this please. |
Kubernetes integration test starting |
Kubernetes integration test status failure |
retest this please. |
Kubernetes integration test starting |
Test build #127445 has finished for PR 28939 at commit
|
Kubernetes integration test status failure |
Test build #127449 has finished for PR 28939 at commit
|
retest this please. |
Kubernetes integration test starting |
Kubernetes integration test status failure |
test this please |
Kubernetes integration test starting |
Test build #127457 has finished for PR 28939 at commit
|
Kubernetes integration test status failure |
Test build #127459 has finished for PR 28939 at commit
|
Thanks @sarutak ! |
…er and Kubernetes with --jars ### What changes were proposed in this pull request? This PR changes Executor to load jars and files added by --jars and --files on Executor initialization. To avoid downloading those jars/files twice, they are assosiated with `startTime` as their uploaded timestamp. ### Why are the changes needed? ExecutorPlugin can't work with Standalone Cluster and Kubernetes when a jar which contains plugins and files used by the plugins are added by --jars and --files option with spark-submit. This is because jars and files added by --jars and --files are not loaded on Executor initialization. I confirmed it works with YARN because jars/files are distributed as distributed cache. ### Does this PR introduce _any_ user-facing change? Yes. jars/files added by --jars and --files are downloaded on each executor on initialization. ### How was this patch tested? Added a new testcase. Closes apache#28939 from sarutak/fix-plugin-issue. Authored-by: Kousuke Saruta <sarutak@oss.nttdata.com> Signed-off-by: Mridul Muralidharan <mridul<at>gmail.com>
…er and Kubernetes with --jars This PR changes Executor to load jars and files added by --jars and --files on Executor initialization. To avoid downloading those jars/files twice, they are assosiated with `startTime` as their uploaded timestamp. ExecutorPlugin can't work with Standalone Cluster and Kubernetes when a jar which contains plugins and files used by the plugins are added by --jars and --files option with spark-submit. This is because jars and files added by --jars and --files are not loaded on Executor initialization. I confirmed it works with YARN because jars/files are distributed as distributed cache. Yes. jars/files added by --jars and --files are downloaded on each executor on initialization. Added a new testcase. Closes apache#28939 from sarutak/fix-plugin-issue. Authored-by: Kousuke Saruta <sarutak@oss.nttdata.com> Signed-off-by: Mridul Muralidharan <mridul<at>gmail.com>
What changes were proposed in this pull request?
This PR changes Executor to load jars and files added by --jars and --files on Executor initialization.
To avoid downloading those jars/files twice, they are assosiated with
startTime
as their uploaded timestamp.Why are the changes needed?
ExecutorPlugin can't work with Standalone Cluster and Kubernetes
when a jar which contains plugins and files used by the plugins are added by --jars and --files option with spark-submit.
This is because jars and files added by --jars and --files are not loaded on Executor initialization.
I confirmed it works with YARN because jars/files are distributed as distributed cache.
Does this PR introduce any user-facing change?
Yes. jars/files added by --jars and --files are downloaded on each executor on initialization.
How was this patch tested?
Added a new testcase.