run.go | 6 +++++- diff --git a/run.go b/run.go index fa5e7020725569c1230624730e02f7fa02ebaaa0c59a27d641e51dee6aeeafc5..3b7e57f5266168cd52b57aacf9ca7f00ca4370f77239f82cd0bb7f936e64a46b 100644 --- a/run.go +++ b/run.go @@ -242,10 +242,14 @@ } go func() { defer Jobs.Done() tracef(CLock, "LOCK_EX: %s", fdLock.Name()) + takeTries := 0 LockAgain: if err := unix.FcntlFlock(fdLock.Fd(), unix.F_SETLKW, &flock); err != nil { - log.Println(err, fdLock.Name()) time.Sleep(10 * time.Millisecond) + takeTries++ + if takeTries%10 == 0 { + log.Println(err, fdLock.Name(), "after", takeTries, "attempts") + } goto LockAgain } lockRelease()