-
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-13906] Ensure that there are at least 2 dispatcher threads. #11728
Conversation
@zsxwing do you have an opinion? |
It may be legitimate to set |
OK then I'd move the max inside, so that the property value can still override it to 1 if needed. |
I'm ok with However, the root cause is there are blocking calls in the event loops but not enough threads. This could happen in other places (such as netty, akka). Ideally, we should avoid blocking calls in all event loops. However, it's hard to figure out all of them in the huge code bases :( |
d8234d8
to
b746177
Compare
Changed to |
## What changes were proposed in this pull request? Create at least two dispatcher-event-loop threads by default. Since SparkDeploySchedulerBackend (in AppClient) calls askWithRetry to CoarseGrainedScheduler in the same process, the driver needs at least two dispatcher threads to prevent the dispatcher thread from hanging. ## How was this patch tested? Manual Author: Yonathan Randolph <yonathan@gmail.com>
Jenkins test this please |
Test build #53208 has finished for PR 11728 at commit
|
Merged to master |
## What changes were proposed in this pull request? Force at least two dispatcher-event-loop threads. Since SparkDeploySchedulerBackend (in AppClient) calls askWithRetry to CoarseGrainedScheduler in the same process, there the driver needs at least two dispatcher threads to prevent the dispatcher thread from hanging. ## How was this patch tested? Manual. Author: Yonathan Randolph <yonathangmail.com> Author: Yonathan Randolph <yonathan@liftigniter.com> Closes apache#11728 from yonran/SPARK-13906.
What changes were proposed in this pull request?
Force at least two dispatcher-event-loop threads. Since SparkDeploySchedulerBackend (in AppClient) calls askWithRetry to CoarseGrainedScheduler in the same process, there the driver needs at least two dispatcher threads to prevent the dispatcher thread from hanging.
How was this patch tested?
Manual.
Author: Yonathan Randolph yonathan@gmail.com