Jason Parrott
7fa8fdf3e7
Cleanup sentinel pubsub on close
...
Currently, the pubsub connection is aggressively disconnected when we close the upstream client which causes it to log something like:
redis: 2018/11/09 09:10:07 pubsub.go:151: redis: discarding bad PubSub connection: read tcp 127.0.0.1:61025->127.0.0.1:26378: use of closed network connection
This change simply cleans up the connection on close.
We create new redis servers and connections for each set of independent tests and the logs were getting spammy.
2018-11-09 09:32:22 -05:00
Vladimir Mihailenco
171a6d13e9
Fix closing nil sentinel
2018-10-25 09:42:56 +03:00
Vladimir Mihailenco
9b063e2e30
Copy TLSConfig to SentinelClient options
2018-10-10 11:51:34 +03:00
Vladimir Mihailenco
48e9afe2a7
Use PubSub.Channel to not burn CPU on errors
2018-10-01 11:43:26 +03:00
Vladimir Mihailenco
0d132966a4
Add missing options to UniversalOptions
2018-08-15 08:44:06 +03:00
Vladimir Mihailenco
d5fc79d4ee
Add Client.Do
2018-08-12 11:20:24 +03:00
Vladimir Mihailenco
ea9da7c2e8
Rework ReceiveMessage
2018-07-23 17:10:58 +03:00
Vladimir Mihailenco
39b4d69170
Export SentinelClient
2018-05-31 13:15:52 +03:00
Vadim Liman
09b9a99666
Add TLS configuration support for Universal Client
2018-05-11 09:46:09 +03:00
yifei.huang
8b4fa6d443
Add WrapProcessPipeline
2018-01-30 16:47:29 +02:00
Vladimir Mihailenco
5294b5dae1
Add PoolStats.StaleConns and enable logging by default
2017-09-11 09:10:17 +03:00
Vladimir Mihailenco
6060f097e1
Add PubSub support to Cluster client
2017-07-09 10:07:20 +03:00
Vladimir Mihailenco
fbc8000fd1
Resent client pool when sentinel switches master
2017-06-29 16:53:49 +03:00
Vladimir Mihailenco
4a3a300665
Add Options.OnConnect
2017-05-26 14:56:18 +03:00
Vladimir Mihailenco
7e8890b644
Embed Cmdable into StatefulCmdable
2017-05-25 13:38:04 +03:00
Vladimir Mihailenco
6499563e07
PubSub conns don't share connection pool limit
2017-04-17 16:59:56 +03:00
Vladimir Mihailenco
8040d63c4f
Remove gopkg.in
2017-02-19 09:49:21 +02:00
Vladimir Mihailenco
ce4fd8b677
Fix ReceiveMessage to work without any subscriptions.
2017-02-08 14:15:32 +02:00
Vladimir Mihailenco
308ebee457
Fix defer order.
2017-01-28 10:53:10 +02:00
Vladimir Mihailenco
b4efc45f1c
Set read/write timeouts more consistently.
2016-12-03 17:30:13 +02:00
Vladimir Mihailenco
f5245efa73
Prepare v5 release.
2016-10-09 10:56:53 +00:00
Vladimir Mihailenco
079b7ce393
Rework Options initialisation.
2016-06-05 11:10:30 +00:00
Vladimir Mihailenco
ac162eb843
Move Select to stateful commands and make it available only via Pipeline and Tx.
2016-06-05 09:45:39 +00:00
Vladimir Mihailenco
31abb18d9a
Move logger to internal package.
2016-04-09 14:52:01 +03:00
Vladimir Mihailenco
38d30a4bab
Use redis.v4 that is in alpha/beta state.
2016-04-09 13:27:16 +03:00
Vladimir Mihailenco
6e1aef39ea
Faster and simpler pool.
2016-03-19 11:49:13 +02:00
Vladimir Mihailenco
f47fb47df0
Extract race tests to separate file. Add more race tests.
2016-03-16 19:45:35 +02:00
Vladimir Mihailenco
fdd0fdf678
Optimize pool.Remove.
2016-03-12 12:41:02 +02:00
Vladimir Mihailenco
ad0739be99
Extract pool package. Add pool benchmark.
2016-03-12 10:52:13 +02:00
Vladimir Mihailenco
27635bbe4e
Fix FailoverClient to close connection to Sentinel. Fixes races build.
2016-03-09 15:14:01 +02:00
Vladimir Mihailenco
110e93a8e4
Simplify connection management with sticky connection pool. Fixes #260 .
2016-03-01 14:12:25 +02:00
Vladimir Mihailenco
ebf51e1a1b
Add prefix to package logger.
2016-02-06 12:16:09 +02:00
Francisco Souza
d3ee281748
Declare and use a package-level Logger
...
This allow users of the API to override the Logger. Fix #250 .
2016-02-03 12:30:39 -05:00
Vladimir Mihailenco
d7c44c7899
Better rate limited message.
2015-12-22 15:45:03 +02:00
Vladimir Mihailenco
25164333ff
Fix pool panic on slow connection with MaxRetries > 0.
2015-10-13 12:10:04 +03:00
Vladimir Mihailenco
c809246d8b
Clarify thread safety. Fixes #166 .
2015-09-12 09:36:03 +03:00
arnaud briche
8b26a9f71e
Add MaxRetries to FailoverOptions
2015-08-24 10:46:48 +02:00
Vladimir Mihailenco
40b429df49
Reduce number of various options structs. Slightly reword comments.
2015-05-23 17:56:18 +03:00
Vladimir Mihailenco
f6ef0fd342
Add basic example how to use Redis Cluster. Unify comments.
2015-05-23 16:35:30 +03:00
Vladimir Mihailenco
1d02fa85a9
sentinel: add comment.
2015-05-23 14:43:34 +03:00
Vladimir Mihailenco
1078a303ea
sentine: don't pass DB and Password to Sentinel client.
2015-05-14 16:13:45 +03:00
Vladimir Mihailenco
f3f44aefbe
Fix pool to close all connections when client is closed.
2015-05-05 12:17:44 +03:00
Vladimir Mihailenco
fe931fc851
Add reaper that closes idle connections to the cluster.
2015-04-05 15:41:16 +03:00
Dimitrij Denissenko
c21e5f3255
Add Redis Cluster support.
2015-03-19 11:19:55 +02:00
Dimitrij Denissenko
a6385ccf0a
Documented options
2015-01-31 14:54:37 +00:00
Dimitrij Denissenko
9f9822edd2
Use a lock-free connection pool
2015-01-31 13:20:37 +00:00
Vladimir Mihailenco
6f79953aa5
sentinel: don't leak goroutines on sentinel fail. Fixes #48 .
2014-11-06 13:18:19 +02:00
Vladimir Mihailenco
3836435639
Remove glog.
2014-07-31 16:01:54 +03:00
Vladimir Mihailenco
3c565a35a9
Sentinel client does not support password and db options.
2014-07-12 10:00:21 +03:00
Vladimir Mihailenco
678b8b3667
Cleanup.
2014-06-28 14:47:37 +03:00
Vladimir Mihailenco
a042cdda74
Redis Sentinel support.
2014-06-14 14:46:11 +03:00