Skip to content

[SPARK-58268][PYTHON] Disable GC for Config gRPC to avoid deadlock#57416

Closed
gaogaotiantian wants to merge 1 commit into
apache:masterfrom
gaogaotiantian:fix-config-deadlock
Closed

[SPARK-58268][PYTHON] Disable GC for Config gRPC to avoid deadlock#57416
gaogaotiantian wants to merge 1 commit into
apache:masterfrom
gaogaotiantian:fix-config-deadlock

Conversation

@gaogaotiantian

Copy link
Copy Markdown
Contributor

What changes were proposed in this pull request?

Disable GC when we do _stub.Config().

Why are the changes needed?

This is the same thing for #53783 . We need to disable GC when we do gRPC to avoid deadlock. We only recently found this method due to https://github.com/apache/spark/actions/runs/29869961676 .

Does this PR introduce any user-facing change?

No.

How was this patch tested?

CI.

Was this patch authored or co-authored using generative AI tooling?

No.

@uros-b

uros-b commented Jul 22, 2026

Copy link
Copy Markdown
Member

Thank you @gaogaotiantian!

@dongjoon-hyun dongjoon-hyun left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, @gaogaotiantian .

You cannot make a follow-up for the released JIRA ID because this PR has a different Fix Version (4.2.1) even we land this to branch-4.2.

SPARK-55020 has the Fix Version = 4.2.0.

Screenshot 2026-07-22 at 12 56 58

It seems that you slightly misunderstand the definition of FOLLOWUP in the Apache Spark community. Please use a new JIRA ID for your important PySpark fix.

@gaogaotiantian

Copy link
Copy Markdown
Contributor Author

@dongjoon-hyun ah okay. So even it's the same issue, I should create a new JIRA ticket for this PR because it's easier to track for different spark versions?

@dongjoon-hyun

Copy link
Copy Markdown
Member

Yes, correct, it's for trace-ability. For different Fix Versions, we need different JIRA issues.

@dongjoon-hyun

Copy link
Copy Markdown
Member

For the record, [FOLLOWUP] should be used when you can land the follow-up PR in the same Spark release version of the original PR.

@gaogaotiantian

Copy link
Copy Markdown
Contributor Author

@dongjoon-hyun got it, thanks! I'll create a new JIRA for this PR.

@dongjoon-hyun

Copy link
Copy Markdown
Member

Thank you so much!

@gaogaotiantian gaogaotiantian changed the title [SPARK-55020][PYTHON][FOLLOWUP] Disable GC for Config gRPC to avoid deadlock [SPARK-58268][PYTHON] Disable GC for Config gRPC to avoid deadlock Jul 22, 2026

@dongjoon-hyun dongjoon-hyun left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, LGTM.

@gaogaotiantian

Copy link
Copy Markdown
Contributor Author

@dongjoon-hyun I created a new JIRA and updated the PR title.

@dongjoon-hyun

Copy link
Copy Markdown
Member

I also approved. Feel free to merge~

gaogaotiantian added a commit that referenced this pull request Jul 22, 2026
### What changes were proposed in this pull request?

Disable GC when we do `_stub.Config()`.

### Why are the changes needed?

This is the same thing for #53783 . We need to disable GC when we do gRPC to avoid deadlock. We only recently found this method due to https://github.com/apache/spark/actions/runs/29869961676 .

### Does this PR introduce _any_ user-facing change?

No.

### How was this patch tested?

CI.

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes #57416 from gaogaotiantian/fix-config-deadlock.

Authored-by: Tian Gao <gaogaotiantian@hotmail.com>
Signed-off-by: Tian Gao <gaogaotiantian@hotmail.com>
(cherry picked from commit 377a00e)
Signed-off-by: Tian Gao <gaogaotiantian@hotmail.com>
@gaogaotiantian

Copy link
Copy Markdown
Contributor Author

Merge Summary:

Posted by merge_spark_pr.py

@gaogaotiantian

Copy link
Copy Markdown
Contributor Author

Thank you all!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants