From 096f017b69901febcac652bb02c008772aac5e5b Mon Sep 17 00:00:00 2001 From: Vladimir Mihailenco Date: Fri, 26 Oct 2012 18:21:14 +0300 Subject: [PATCH] Use DialTimeout. --- redis.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/redis.go b/redis.go index 0a1e3d45..c5852c5c 100644 --- a/redis.go +++ b/redis.go @@ -6,6 +6,7 @@ import ( "net" "os" "sync" + "time" ) // Package logger. @@ -17,13 +18,17 @@ type InitConnFunc func(*Client) error func TCPConnector(addr string) OpenConnFunc { return func() (net.Conn, error) { - return net.Dial("tcp", addr) + return net.DialTimeout("tcp", addr, 3*time.Second) } } func TLSConnector(addr string, tlsConfig *tls.Config) OpenConnFunc { return func() (net.Conn, error) { - return tls.Dial("tcp", addr, tlsConfig) + conn, err := net.DialTimeout("tcp", addr, 3*time.Second) + if err != nil { + return nil, err + } + return tls.Client(conn, tlsConfig) } }