diff --git a/src/backend/storage/lmgr/condition_variable.c b/src/backend/storage/lmgr/condition_variable.c index 228303e77f7..198c1988919 100644 --- a/src/backend/storage/lmgr/condition_variable.c +++ b/src/backend/storage/lmgr/condition_variable.c @@ -184,6 +184,8 @@ ConditionVariableTimedSleep(ConditionVariable *cv, long timeout, if (!proclist_contains(&cv->wakeup, MyProcNumber, cvWaitLink)) { done = true; + if (cv_sleep_target == NULL) + cv_sleep_target = cv; proclist_push_tail(&cv->wakeup, MyProcNumber, cvWaitLink); } SpinLockRelease(&cv->mutex);