Merge pull request #544 from fkautz/pr_out_fixing_race_condition

master
Frederick F. Kautz IV 10 years ago
commit 73de05feb6
  1. 8
      pkg/storage/drivers/memory/memory.go

@ -501,9 +501,9 @@ func (memory *memoryDriver) expireObjects() {
if memory.shutdown {
return
}
if len(memory.objectMetadata) > 0 {
var sleepDuration time.Duration
memory.lock.Lock()
if len(memory.objectMetadata) > 0 {
if k, _, ok := memory.objects.GetOldest(); ok {
key := k.(string)
object := memory.objectMetadata[key]
@ -513,11 +513,11 @@ func (memory *memoryDriver) expireObjects() {
sleepDuration = memory.expiration - time.Now().Sub(object.lastAccessed)
}
}
memory.lock.Unlock()
time.Sleep(sleepDuration)
} else {
time.Sleep(memory.expiration)
sleepDuration = memory.expiration
}
memory.lock.Unlock()
time.Sleep(sleepDuration)
}
}

Loading…
Cancel
Save