apache / apache/uniffle

[Improvement] Spark blacklist optimization

Open
#888 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
454
Forks
172
Avg merge
5d 17h
Merged PRs (30d)
5

Description

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)

### Search before asking

- [X] I have searched in the [issues](https://github.com/apache/incubator-uniffle/issues?q=is%3Aissue) and found no similar issues.

### What would you like to be improved?

When the spark task fails due to some rss exceptions, the executor may be excluded by the stage(See https://github.com/apache/spark/blob/master/core/src/main/scala/org/apache/spark/scheduler/TaskSetManager.scala line984), causing the app to run slowly. In fact, this exclude has no effect, because this exception has nothing to do with executor. We can add some optimizations to the patch provided to spark, if the RssException is thrown, the blacklist will not be triggered.

### How should we improve?

Add some optimizations to the patch provided to spark.

### Are you willing to submit PR?

- [X] Yes I am willing to submit a PR!

Contributor guide

Open the contributing guide

Research direction

Start by reading Spark's TaskSetManager.scala around line 984 and the existing Spark patch referenced in the issue. Trace how RssException reaches executor exclusion and identify the Uniffle-side integration point. Done means the relevant Spark blacklist behavior is optimized for RssException without excluding the executor, with validation from the affected tests or execution path.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, spark
Domain
backend, distributed-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.