rickyma opened a new pull request, #1537:
URL: https://github.com/apache/incubator-uniffle/pull/1537

   ### What changes were proposed in this pull request?
   
   Memory may leak in exceptional scenarios when flushing events
   
   ### Why are the changes needed?
   
   A follow-up PR for: https://github.com/apache/incubator-uniffle/pull/1459
   
   I found out that memory may leak in exceptional scenarios when flushing 
events.
   <img width="560" alt="企业微信截图_17086201359387" 
src="https://github.com/apache/incubator-uniffle/assets/13834479/e7b77e82-4336-4123-b59a-621346edd613";>
   <img width="811" alt="企业微信截图_1708620172540" 
src="https://github.com/apache/incubator-uniffle/assets/13834479/931eeb38-0c1b-4cfb-83be-485b74c10e17";>
   
   After this PR, the memory will not leak and the exception's stack trace will 
be like:
   [2024-02-23 14:25:02.614] [LocalFileFlushEventThreadPool-54] [ERROR] 
DefaultFlushEventHandler.handleEventAndUpdateMetrics - Unexpected exceptions 
happened due to
   java.lang.NullPointerException
           at 
org.apache.uniffle.server.ShuffleTaskInfo.getMaxConcurrencyPerPartitionToWrite(ShuffleTaskInfo.java:109)
           at 
org.apache.uniffle.server.ShuffleFlushManager.getMaxConcurrencyPerPartitionWrite(ShuffleFlushManager.java:198)
           at 
org.apache.uniffle.server.ShuffleFlushManager.processFlushEvent(ShuffleFlushManager.java:149)
           at 
org.apache.uniffle.server.DefaultFlushEventHandler.handleEventAndUpdateMetrics(DefaultFlushEventHandler.java:88)
           at 
org.apache.uniffle.server.DefaultFlushEventHandler.lambda$dispatchEvent$0(DefaultFlushEventHandler.java:205)
           at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
           at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
           at java.lang.Thread.run(Thread.java:750)
   
   We can talk about the above exception in another issue after this PR is 
merged.
   
   ### Does this PR introduce _any_ user-facing change?
   
   No.
   
   ### How was this patch tested?
   
   Existing UTs.
   


-- 
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