You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gluten.apache.org by "maoyuwei1 (via GitHub)" <gi...@apache.org> on 2026/10/14 05:57:08 UTC

[I] [CELEBORN] FailedShuffleCleaner instance is never returned to CelebornShuffleManager, leaking its ScheduledExecutorService on stop() [gluten]

maoyuwei1 opened a new issue, #13279:
URL: https://github.com/apache/gluten/issues/13279

   ### Backend
   
   VL (Velox)
   
   ### Bug description
   
   CelebornUtils.fetchCleanFailedShuffle(lifecycleManager, celebornConf, failedShuffleCleaner) and stageRerun(...) take failedShuffleCleaner as an output parameter and assign the newly created FailedShuffleCleaner instance to it. 
   
   Because Java is pass-by-value, reassigning a method parameter is not visible to the caller — CelebornShuffleManager.failedShuffleCleaner stays null forever.
   
   org.apache.spark.shuffle.gluten.celeborn.CelebornShuffleManager
   
   <img width="1351" height="634" alt="Image" src="https://github.com/user-attachments/assets/68fd2142-dfca-4823-91e1-b9ab6fe94214" />
   
   <img width="783" height="706" alt="Image" src="https://github.com/user-attachments/assets/ff02f63c-0f31-483a-b0c1-543f470cd34f" />
   
   becomes dead code. The cleaner's internal ScheduledExecutorService is never shut down, and keeps strong references to LifecycleManager and its pending shuffle-id collections, leaking both threads and objects. This accumulates across SparkContext lifecycles and is most visible on long-lived drivers (e.g., Spark Thrrift Server), where each restart leaves orphaned cleaner threads and repeated invalid clean log entries.
   
   Expected behavior
   stageRerun/fetchCleanFailedShuffle should return the created instance so the caller can store it and stop() can release it.
   
   ### Gluten version
   
   _No response_
   
   ### Spark version
   
   None
   
   ### Spark configurations
   
   _No response_
   
   ### System information
   
   _No response_
   
   ### Relevant logs
   
   ```bash
   
   ```


-- 
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: commits-unsubscribe@gluten.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@gluten.apache.org
For additional commands, e-mail: commits-help@gluten.apache.org


Re: [I] [CELEBORN] FailedShuffleCleaner instance is never returned to CelebornShuffleManager, leaking its ScheduledExecutorService on stop() [gluten]

Posted by "maoyuwei1 (via GitHub)" <gi...@apache.org>.
maoyuwei1 commented on issue #13279:
URL: https://github.com/apache/gluten/issues/13279#issuecomment-6189627491

   https://github.com/apache/gluten/pull/13283/commits


-- 
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: commits-unsubscribe@gluten.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@gluten.apache.org
For additional commands, e-mail: commits-help@gluten.apache.org