Skip to content

Commit 50327b6

Browse files
committed
fix: restore cache runtime readiness semantics
Signed-off-by: CAICAIIs <3360776475@qq.com>
1 parent e15c9e7 commit 50327b6

2 files changed

Lines changed: 211 additions & 153 deletions

File tree

pkg/ddc/cache/engine/status.go

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,9 +92,13 @@ func (e *CacheEngine) setClientComponentStatus(componentValue *common.CacheRunti
9292
return ready, nil
9393
}
9494
func (e *CacheEngine) CheckAndUpdateRuntimeStatus(value *common.CacheRuntimeValue) (bool, error) {
95-
var masterReady, workerReady, clientReady, runtimeReady = true, true, true, false
95+
runtimeReady := false
9696

9797
err := retry.RetryOnConflict(retry.DefaultBackoff, func() error {
98+
// Reset readiness on each retry to avoid stale state after conflicts.
99+
masterReady, workerReady, clientReady := true, true, true
100+
runtimeReady = false
101+
98102
runtime, err := e.getRuntime()
99103
if err != nil {
100104
return err
@@ -122,9 +126,8 @@ func (e *CacheEngine) CheckAndUpdateRuntimeStatus(value *common.CacheRuntimeValu
122126
}
123127
}
124128

125-
if masterReady && workerReady && clientReady {
126-
runtimeReady = true
127-
} else {
129+
runtimeReady = masterReady && workerReady
130+
if !runtimeReady {
128131
e.Log.Info(fmt.Sprintf("MasterReady: %v, workerReady: %v, clientReady: %v", masterReady, workerReady, clientReady))
129132
}
130133

0 commit comments

Comments
 (0)