Ngone51 commented on a change in pull request #33078:
URL: https://github.com/apache/spark/pull/33078#discussion_r670915006



##########
File path: 
common/network-shuffle/src/main/java/org/apache/spark/network/shuffle/RemoteBlockPushResolver.java
##########
@@ -778,11 +773,6 @@ public void onComplete(String streamId) throws IOException 
{
               // IOException to the client. This may increase the chunk size 
however the increase is
               // still limited because of the limit on the number of 
IOExceptions for a
               // particular shuffle partition.
-            } catch (NullPointerException e) {
-              throw new RuntimeException(
-                String.format("The merged shuffle partition info for appId %s 
shuffleId %s "
-                  + "reduceId %s has been cleaned up", partitionInfo.appId,
-                  partitionInfo.shuffleId, partitionInfo.reduceId));

Review comment:
       I agree that this way we'd avoid NPE reference but just wonder it can't 
tell the NPE reason explicitly. NPE can not only cause by 
`AppShufflePartitionInfo` cleanup but also by potential buggy code. In the way 
you proposed, I can't see how it could distinguish these two cases.
   
   And, how about we add an atomic flag to indicate `AppShufflePartitionInfo` 
whether it's cleaned up or not. Then, when never we try to write the partition, 
we check the flag first.
   




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to