Conversation
|
Can one of the admins verify this patch? |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
…alModeRestructure
|
@raulchen, @zhijunfu , @edoakes I think that making more abstractions for CoreWorker is a great idea, but most likely the scope for future work. |
|
Test FAILed. |
|
Test FAILed. |
|
Test FAILed. |
|
@zhijunfu @raulchen I agree that all of the if-else blocks aren't ideal, but it has a key benefit in that it minimizes the differences in the local mode and normal execution paths. The main issue with the existing Python implementation is that it's too abstracted from the normal path, so it ends up being very out of sync in behavior and users see issues when trying to go from local mode to normal mode (which is the whole point of supporting local mode). We could probably achieve this with the right abstractions but just completely subbing out a full local mode worker implementation is probably not the best idea. |
|
@edoakes yeah, I agree that it's not a good idea to completely sub out local mode. I was suggesting that we should abstract the parts where local and cluster mode are different. Take task execution for example, we can have an abstract |
|
Test FAILed. |
|
Test FAILed. |
|
Test PASSed. |
edoakes
left a comment
There was a problem hiding this comment.
LGTM, let's merge it if tests pass and try to abstract the logic out more if possible in a follow-up PR.
Why are these changes needed?
This moves Local Mode (serial python execution) from separate python code to the C++ CoreWorker in order to make it more maintainable.
Related issue number
Closes #4147
Closes #5013
Closes #5379
Checks
scripts/format.shto lint the changes in this PR.