1
0
mirror of https://github.com/distribution/distribution synced 2024-11-12 05:45:51 +01:00

Fix connection pool exhaustion in Redis tests

The Redis tests were failing with a "connection pool exhausted" error
from Redigo. Closing the connection used for FLUSHDB fixes the problem.

Signed-off-by: Noah Treuhaft <noah.treuhaft@docker.com>
This commit is contained in:
Noah Treuhaft 2016-09-19 15:30:32 -07:00
parent cfad4321c1
commit cafeae4ecd

@ -26,7 +26,7 @@ func TestRedisBlobDescriptorCacheProvider(t *testing.T) {
if redisAddr == "" {
// skip if still not set
t.Skip("please set -registry.storage.cache.redis to test layer info cache against redis")
t.Skip("please set -test.registry.storage.cache.redis.addr to test layer info cache against redis")
}
pool := &redis.Pool{
@ -43,9 +43,11 @@ func TestRedisBlobDescriptorCacheProvider(t *testing.T) {
}
// Clear the database
if _, err := pool.Get().Do("FLUSHDB"); err != nil {
conn := pool.Get()
if _, err := conn.Do("FLUSHDB"); err != nil {
t.Fatalf("unexpected error flushing redis db: %v", err)
}
conn.Close()
cachecheck.CheckBlobDescriptorCache(t, NewRedisBlobDescriptorCacheProvider(pool))
}