forked from TrueCloudLab/restic
Merge pull request #3972 from MichaelEischer/fix-flaky-lock-cancel-test
lock: fix flaky TestLockFailedRefresh
This commit is contained in:
commit
4133fee6f9
1 changed files with 2 additions and 2 deletions
|
@ -121,7 +121,7 @@ func refreshLocks(ctx context.Context, lock *restic.Lock, lockInfo *lockContext,
|
||||||
func monitorLockRefresh(ctx context.Context, lock *restic.Lock, lockInfo *lockContext, refreshed <-chan struct{}) {
|
func monitorLockRefresh(ctx context.Context, lock *restic.Lock, lockInfo *lockContext, refreshed <-chan struct{}) {
|
||||||
// time.Now() might use a monotonic timer which is paused during standby
|
// time.Now() might use a monotonic timer which is paused during standby
|
||||||
// convert to unix time to ensure we compare real time values
|
// convert to unix time to ensure we compare real time values
|
||||||
lastRefresh := time.Now().Unix()
|
lastRefresh := time.Now().UnixNano()
|
||||||
pollDuration := 1 * time.Second
|
pollDuration := 1 * time.Second
|
||||||
if refreshInterval < pollDuration {
|
if refreshInterval < pollDuration {
|
||||||
// require for TestLockFailedRefresh
|
// require for TestLockFailedRefresh
|
||||||
|
@ -145,7 +145,7 @@ func monitorLockRefresh(ctx context.Context, lock *restic.Lock, lockInfo *lockCo
|
||||||
case <-refreshed:
|
case <-refreshed:
|
||||||
lastRefresh = time.Now().Unix()
|
lastRefresh = time.Now().Unix()
|
||||||
case <-timer.C:
|
case <-timer.C:
|
||||||
if float64(time.Now().Unix()-lastRefresh) < refreshabilityTimeout.Seconds() {
|
if time.Now().UnixNano()-lastRefresh < refreshabilityTimeout.Nanoseconds() {
|
||||||
// restart timer
|
// restart timer
|
||||||
timer.Reset(pollDuration)
|
timer.Reset(pollDuration)
|
||||||
continue
|
continue
|
||||||
|
|
Loading…
Reference in a new issue