diff --git a/flink-runtime/src/main/java/org/apache/flink/runtime/jobmaster/JobMaster.java b/flink-runtime/src/main/java/org/apache/flink/runtime/jobmaster/JobMaster.java
index <HASH>..<HASH> 100644
--- a/flink-runtime/src/main/java/org/apache/flink/runtime/jobmaster/JobMaster.java
+++ b/flink-runtime/src/main/java/org/apache/flink/runtime/jobmaster/JobMaster.java
@@ -897,10 +897,8 @@ public class JobMaster extends FencedRpcEndpoint<JobMasterId> implements JobMast
 
 		if (newJobStatus.isGloballyTerminalState()) {
 			// other terminal job states are handled by the executions
-			if (newJobStatus == JobStatus.FINISHED) {
-				runAsync(() -> registeredTaskManagers.keySet()
-					.forEach(partitionTracker::stopTrackingAndReleasePartitionsFor));
-			}
+			runAsync(() -> registeredTaskManagers.keySet()
+				.forEach(partitionTracker::stopTrackingAndReleasePartitionsFor));
 
 			final ArchivedExecutionGraph archivedExecutionGraph = schedulerNG.requestJob();
 			scheduledExecutorService.execute(() -> jobCompletionActions.jobReachedGloballyTerminalState(archivedExecutionGraph));
[FLINK-<I>][coordination] Release partitions on every terminal job state