From 21916dc0a18aba184d934ed0ba25896e4cf20f80 Mon Sep 17 00:00:00 2001 From: Harshavardhana Date: Sat, 6 Jun 2015 16:02:48 -0700 Subject: [PATCH] Fix a deadlock in trove when evicting objects when we reach the maxSize used --- pkg/storage/trove/trove.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/storage/trove/trove.go b/pkg/storage/trove/trove.go index dab3ce273..3a35130f7 100644 --- a/pkg/storage/trove/trove.go +++ b/pkg/storage/trove/trove.go @@ -127,11 +127,11 @@ func (r *Cache) Set(key string, value []byte) bool { return false } // remove random key if only we reach the maxSize threshold - for key := range r.items { - for (r.currentSize + valueLen) > r.maxSize { + for (r.currentSize + valueLen) > r.maxSize { + for key := range r.items { r.doDelete(key) + break } - break } } r.items[key] = value