@@ -264,6 +264,7 @@ const (
264
264
redisReadTimeout = "redis.read_timeout"
265
265
redisWriteTimeout = "redis.write_timeout"
266
266
redisPoolSize = "redis.pool_size"
267
+ redisPoolSizeDefault = 0
267
268
redisMinIdleConns = "redis.min_idle_conns"
268
269
redisMaxConnAge = "redis.max_conn_age"
269
270
redisPoolTimeout = "redis.pool_timeout"
@@ -292,23 +293,28 @@ func parseTLS(p *properties.Properties) *tls.Config {
292
293
293
294
func getOptionsSingle (p * properties.Properties ) * goredis.Options {
294
295
opts := & goredis.Options {}
295
- opts . Network = p . GetString ( redisNetwork , redisNetworkDefault )
296
+
296
297
opts .Addr = p .GetString (redisAddr , redisAddrDefault )
297
- opts .Password , _ = p .Get (redisPassword )
298
298
opts .DB = p .GetInt (redisDB , 0 )
299
+ opts .Network = p .GetString (redisNetwork , redisNetworkDefault )
300
+ opts .Password , _ = p .Get (redisPassword )
299
301
opts .MaxRetries = p .GetInt (redisMaxRetries , 0 )
300
302
opts .MinRetryBackoff = p .GetDuration (redisMinRetryBackoff , time .Millisecond * 8 )
301
303
opts .MaxRetryBackoff = p .GetDuration (redisMaxRetryBackoff , time .Millisecond * 512 )
302
304
opts .DialTimeout = p .GetDuration (redisDialTimeout , time .Second * 5 )
303
305
opts .ReadTimeout = p .GetDuration (redisReadTimeout , time .Second * 3 )
304
306
opts .WriteTimeout = p .GetDuration (redisWriteTimeout , opts .ReadTimeout )
305
- opts .PoolSize = p .GetInt (redisPoolSize , 10 )
307
+ opts .PoolSize = p .GetInt (redisPoolSize , redisPoolSizeDefault )
308
+ threadCount := p .MustGetInt ("threadcount" )
309
+ if opts .PoolSize == 0 {
310
+ opts .PoolSize = threadCount
311
+ fmt .Println (fmt .Sprintf ("Setting %s=%d (from <threadcount>) given you haven't specified a value." , redisPoolSize , opts .PoolSize ))
312
+ }
306
313
opts .MinIdleConns = p .GetInt (redisMinIdleConns , 0 )
307
314
opts .MaxConnAge = p .GetDuration (redisMaxConnAge , 0 )
308
315
opts .PoolTimeout = p .GetDuration (redisPoolTimeout , time .Second + opts .ReadTimeout )
309
316
opts .IdleTimeout = p .GetDuration (redisIdleTimeout , time .Minute * 5 )
310
317
opts .IdleCheckFrequency = p .GetDuration (redisIdleCheckFreq , time .Minute )
311
-
312
318
opts .TLSConfig = parseTLS (p )
313
319
314
320
return opts
@@ -330,7 +336,12 @@ func getOptionsCluster(p *properties.Properties) *goredis.ClusterOptions {
330
336
opts .DialTimeout = p .GetDuration (redisDialTimeout , time .Second * 5 )
331
337
opts .ReadTimeout = p .GetDuration (redisReadTimeout , time .Second * 3 )
332
338
opts .WriteTimeout = p .GetDuration (redisWriteTimeout , opts .ReadTimeout )
333
- opts .PoolSize = p .GetInt (redisPoolSize , 10 )
339
+ opts .PoolSize = p .GetInt (redisPoolSize , redisPoolSizeDefault )
340
+ threadCount := p .MustGetInt ("threadcount" )
341
+ if opts .PoolSize == 0 {
342
+ opts .PoolSize = threadCount
343
+ fmt .Println (fmt .Sprintf ("Setting %s=%d (from <threadcount>) given you haven't specified a value." , redisPoolSize , opts .PoolSize ))
344
+ }
334
345
opts .MinIdleConns = p .GetInt (redisMinIdleConns , 0 )
335
346
opts .MaxConnAge = p .GetDuration (redisMaxConnAge , 0 )
336
347
opts .PoolTimeout = p .GetDuration (redisPoolTimeout , time .Second + opts .ReadTimeout )
0 commit comments