Uh oh!
There was an error while loading. Please reload this page.
[SPARK-30235][CORE] Switching off host local disk reading of shuffle blocks in case of useOldFetchProtocol - #26869
[SPARK-30235][CORE] Switching off host local disk reading of shuffle blocks in case of useOldFetchProtocol#26869attilapiros wants to merge 4 commits into
Conversation
SparkQA
commented
Dec 12, 2019
Test build #115245 has finished for PR 26869 at commit
|
Uh oh!
There was an error while loading. Please reload this page.
BTW, @attilapiros . Could you recover the original PR template? |
SparkQA
commented
Dec 15, 2019
Test build #115357 has finished for PR 26869 at commit
|
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
SparkQA
commented
Dec 17, 2019
Test build #115426 has finished for PR 26869 at commit
|
SparkQA
commented
Dec 17, 2019
Test build #115434 has finished for PR 26869 at commit
|
attilapiros
commented
Dec 17, 2019
jenkins retest this please |
SparkQA
commented
Dec 17, 2019
Test build #115450 has finished for PR 26869 at commit
|
vanzin
commented
Dec 17, 2019
Merging to master. |
What changes were proposed in this pull request?
When
spark.shuffle.useOldFetchProtocolis enabled then switching off the direct disk reading of host-local shuffle blocks and falling back to remote block fetching (and this way avoiding theGetLocalDirsForExecutorsblock transfer message which is introduced from Spark 3.0.0).Why are the changes needed?
In
[SPARK-27651][Core] Avoid the network when shuffle blocks are fetched from the same hosta new block transfer message is introduced,GetLocalDirsForExecutors. This new message could be sent to the external shuffle service and as it is not supported by the previous version of external shuffle service it should be avoided whenspark.shuffle.useOldFetchProtocolis true.In the migration guide I changed the exception type as
org.apache.spark.network.shuffle.protocol.BlockTransferMessage.Decoder#fromByteBufferthrows a IllegalArgumentException with the given text and uses the message type which is just a simple number (byte). I have checked and this is true for version 2.4.4 too.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
This specific case (considering one extra boolean to switch off host local disk reading feature) is not tested but existing tests were run.