-
Notifications
You must be signed in to change notification settings - Fork 13.8k
[FLINK-38804][runtime] Ensure channelStateWriter is closed after the inputGates #27375
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
2333f28 to
0469fec
Compare
|
@flinkbot run azure |
flink-runtime/src/main/java/org/apache/flink/runtime/execution/Environment.java
Show resolved
Hide resolved
flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/RuntimeEnvironment.java
Outdated
Show resolved
Hide resolved
flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/Task.java
Show resolved
Hide resolved
1996fanrui
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @Efrat19 for the fix!
Overall LGTM, I only left some minor comments, please take a look when you are available, thanks
flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/RuntimeEnvironment.java
Outdated
Show resolved
Hide resolved
flink-runtime/src/test/java/org/apache/flink/runtime/taskmanager/TaskTest.java
Outdated
Show resolved
Hide resolved
flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/Task.java
Outdated
Show resolved
Hide resolved
0469fec to
01fde62
Compare
flink-runtime/src/test/java/org/apache/flink/runtime/taskmanager/TaskTest.java
Outdated
Show resolved
Hide resolved
01fde62 to
c2be532
Compare
|
@flinkbot run azure |
…inputGates [FLINK-38804][runtime] Ensure channelStateWriter is closed after the inputGates
e40312d to
bf9abb7
Compare
1996fanrui
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM assuming CI is green
What is the purpose of the change
Ensure the RemoteInputChannel (or remote components) is closed before ChannelStatePersister and ChannelStateWriteRequestExecutorImpl.
Dueing TaskManager shutdown sequence, ChannelStateWriteRequestExecutorImpl is being closed prematurely while RemoteInputChannel is still active. If a new buffer arrives, the active RemoteInputChannel attempts to use the already-closed executor, resulting in the failure.
Brief change log
Bubble ChannelStateWriter up from the StreamTask to Task, and close it after the InputGates.
Verifying this change
This change added tests and can be verified as follows:
Does this pull request potentially affect one of the following parts:
@Public(Evolving): (no)Documentation