Jake Gregg
|
dba9cb31f5
|
♻️ Commands that specify keyslots should not try to hash for keyslot location
|
2019-01-31 15:47:13 -08:00 |
Vladimir Mihailenco
|
2e5bd7a411
|
Reload cluster state almost on any error
|
2019-01-08 16:37:22 +02:00 |
WANG QIANG
|
e6eeeda3d8
|
Remove unnecessary error check
|
2019-01-08 17:15:59 +08:00 |
WANG QIANG
|
6baf00e56b
|
Fix race condition when creating the cluster node
|
2019-01-08 15:25:41 +08:00 |
Vladimir Mihailenco
|
10edc85b67
|
Retry cluster pipeline read commands
|
2018-12-13 13:27:41 +02:00 |
Vladimir Mihailenco
|
382feca784
|
clusterStateHolder.Get should load a state when there is none
|
2018-12-13 12:41:58 +02:00 |
Vladimir Mihailenco
|
1d1269e0cf
|
Merge pull request #884 from go-redis/feature/limiter
Add Limiter interface
|
2018-11-29 11:21:03 +02:00 |
Vladimir Mihailenco
|
5d8c5c5c37
|
Add Limiter interface
|
2018-11-29 09:52:49 +02:00 |
Vladimir Mihailenco
|
17e8439f2f
|
Remove Redis Cluster state check
|
2018-11-24 13:16:21 +02:00 |
Vladimir Mihailenco
|
18e7a81047
|
Fix corner cases and a bug
|
2018-11-21 10:49:30 +02:00 |
Vladimir Mihailenco
|
fa76dd0e87
|
Add releaseConnStrict
|
2018-10-14 11:27:34 +03:00 |
Vladimir Mihailenco
|
69445c6e87
|
Don't enable ReadOnly in custom cluster mode
|
2018-09-20 13:35:51 +03:00 |
Vladimir Mihailenco
|
f7094544a5
|
Process pipeline commands concurrently
|
2018-09-11 13:30:51 +03:00 |
zhanyr
|
a9e329d3bc
|
execute commans concurrently on each cluster node in method `defaultProcessPipeline` (#861)
Execute commands concurrently on each cluster node
|
2018-09-11 12:37:57 +03:00 |
Vladimir Mihailenco
|
0197108027
|
Use bufio.Writer
|
2018-08-17 14:14:02 +03:00 |
Vladimir Mihailenco
|
5146fb0c57
|
Cleanup buffers manipulation
|
2018-08-15 11:53:15 +03:00 |
Vladimir Mihailenco
|
7c26d1ceb6
|
Pass cn.Rd where possible
|
2018-08-15 09:38:58 +03:00 |
Vladimir Mihailenco
|
ef3e0e9827
|
Merge pull request #839 from go-redis/fix/cluster-loopback-fix
Fix cluster loopback handling. Fixes #589
|
2018-08-15 08:52:04 +03:00 |
Vladimir Mihailenco
|
0d132966a4
|
Add missing options to UniversalOptions
|
2018-08-15 08:44:06 +03:00 |
Vladimir Mihailenco
|
c1c2753ae8
|
Fix cluster loopback handling. Fixes #589
|
2018-08-14 15:57:17 +03:00 |
Vladimir Mihailenco
|
d5fc79d4ee
|
Add Client.Do
|
2018-08-12 11:20:24 +03:00 |
Vladimir Mihailenco
|
651e9fef1d
|
Add MaxConnAge
|
2018-08-12 10:25:16 +03:00 |
Vladimir Mihailenco
|
b576fe91a1
|
Use single read and write buffer where possible
|
2018-08-04 13:09:22 +03:00 |
Vladimir Mihailenco
|
ea9da7c2e8
|
Rework ReceiveMessage
|
2018-07-23 17:10:58 +03:00 |
Vladimir Mihailenco
|
2559f32464
|
cluster: optimize newClusterState
|
2018-07-22 14:17:42 +03:00 |
Vladimir Mihailenco
|
b92dacbfa7
|
Conn timeout should be higher than read timeout
|
2018-07-22 08:49:48 +03:00 |
Vladimir Mihailenco
|
ee41b90923
|
Improve docs
|
2018-07-18 15:28:51 +03:00 |
Vladimir Mihailenco
|
1f59be5cc0
|
cluster: add manual setup
|
2018-06-29 10:46:12 +03:00 |
Vladimir Mihailenco
|
bdf8f06904
|
cluster: preload commands info
|
2018-06-18 12:55:26 +03:00 |
Puneeth Gadangi
|
0269263441
|
Use cmdSlotAndNode() to route read-only ClusterClient pipeline commands
|
2018-05-31 17:04:36 -07:00 |
Vladimir Mihailenco
|
4237a34c31
|
cluster: fix origin addr check
|
2018-05-31 10:25:40 +03:00 |
Vladimir Mihailenco
|
faf5666fbd
|
Cleanup pool
|
2018-05-29 17:29:47 +03:00 |
Nathan Ziebart
|
d790448589
|
reset cmdable.process when copying cluster client
|
2018-05-23 17:30:50 -07:00 |
Jeffrey Hutchins
|
471caa3d91
|
cluster: reload state for ForEach functions and every 1 minute
|
2018-05-21 16:40:06 +03:00 |
Vladimir Mihailenco
|
5c742fff78
|
cluster: cleanup tests
|
2018-05-21 16:17:57 +03:00 |
Vladimir Mihailenco
|
18b2e30835
|
Cleanup cmds info
|
2018-05-17 15:21:51 +03:00 |
Vladimir Mihailenco
|
092971361b
|
cluster: retry same node on retryable error
|
2018-05-17 15:02:35 +03:00 |
Vladimir Mihailenco
|
34facee367
|
Add more race tests
|
2018-05-17 14:55:00 +03:00 |
Vadim Liman
|
09b9a99666
|
Add TLS configuration support for Universal Client
|
2018-05-11 09:46:09 +03:00 |
superkinglabs
|
877867d284
|
Remove costly 'appendIfNotExists' and 'remove' call from PubSub (#743)
* remove costly 'appendIfNotExists' and 'remove' call from pubsub
|
2018-03-14 12:42:51 +02:00 |
Gabriel Aszalos
|
731dd72b84
|
{cluster,ring}: add support for context to ClusterClient and Ring
|
2018-03-07 14:41:18 +01:00 |
Vladimir Mihailenco
|
4fe9f93940
|
Re-order atomic field to please race detector
|
2018-03-07 14:38:18 +02:00 |
Vladimir Mihailenco
|
d6cb688ea7
|
Cleanup context implementation
|
2018-03-07 13:50:14 +02:00 |
Vladimir Mihailenco
|
a64d3e1ef1
|
Fix build on 32bit arch
|
2018-03-07 12:41:11 +02:00 |
T. Thyer
|
063393987a
|
Add option to balance load between master node and replica nodes (#729)
* Add option to balance load between master node and replica nodes
|
2018-03-07 12:23:38 +02:00 |
Vladimir Mihailenco
|
5e72be1cbf
|
Extract clusterStateHolder
|
2018-03-07 12:09:45 +02:00 |
Vladimir Mihailenco
|
f13fc5381c
|
Extract commands info cache
|
2018-03-07 12:09:45 +02:00 |
Vladimir Mihailenco
|
68362cfda1
|
Fix doc
|
2018-02-27 16:11:25 +02:00 |
Vladimir Mihailenco
|
cac7aa8c36
|
Reduce ClusterOptions.MaxRedirects from 16 to 8
|
2018-02-27 16:10:17 +02:00 |
Vladimir Mihailenco
|
cc47cf2439
|
Use fresh cluster state after sleeping
|
2018-02-27 16:10:17 +02:00 |
Vladimir Mihailenco
|
9df09066e2
|
Store all created cluster nodes in allNodes
|
2018-02-27 14:48:59 +02:00 |
Vladimir Mihailenco
|
fa7f64f7f2
|
Rework retrying
|
2018-02-16 13:40:23 +02:00 |
Vladimir Mihailenco
|
1a4d34448d
|
Update cluster node latency asynchronously
|
2018-02-13 11:42:06 +02:00 |
yifei.huang
|
8b4fa6d443
|
Add WrapProcessPipeline
|
2018-01-30 16:47:29 +02:00 |
Vladimir Mihailenco
|
a84876237b
|
Retry if node is closed; close nodes with delay
|
2018-01-17 13:00:11 +02:00 |
Vladimir Mihailenco
|
3de5605ab2
|
Pick random node when command does not have keys
|
2017-12-28 16:47:08 +02:00 |
Vladimir Mihailenco
|
7cb146a31b
|
Increase read timeout for blocking commands and don't retry such commands
|
2017-09-29 16:12:43 +03:00 |
Vladimir Mihailenco
|
2a5293c99c
|
Export Cmder.Args
|
2017-09-26 11:29:22 +03:00 |
Vladimir Mihailenco
|
f9307ab2fe
|
Add TxPipeline to Cmdable
|
2017-09-25 11:48:44 +03:00 |
Vladimir Mihailenco
|
bc5f9a6878
|
Replace PoolStats.Requests with PoolStats.Misses
|
2017-09-22 12:28:08 +03:00 |
Vladimir Mihailenco
|
5294b5dae1
|
Add PoolStats.StaleConns and enable logging by default
|
2017-09-11 09:10:17 +03:00 |
Vladimir Mihailenco
|
1173a9589f
|
Cleanup code
|
2017-09-11 08:58:56 +03:00 |
Vladimir Mihailenco
|
dbd2c99ba9
|
Rework pipeline retrying
|
2017-09-01 14:56:00 +03:00 |
Vladimir Mihailenco
|
63e3bc58c7
|
Retry cluster down errors
|
2017-08-15 10:12:43 +03:00 |
wenjun.yan
|
4e1d2a01db
|
Make readOnly a private field so that only cluster client can use it
|
2017-07-25 10:35:41 +09:00 |
Vladimir Mihailenco
|
3ddda73a05
|
Close connections to unused nodes
|
2017-07-11 11:19:40 +03:00 |
Vladimir Mihailenco
|
6060f097e1
|
Add PubSub support to Cluster client
|
2017-07-09 10:07:20 +03:00 |
Vladimir Mihailenco
|
9dbcc5ae80
|
Vendor syncutil.Once
|
2017-07-01 12:51:46 +03:00 |
Dimitrij Denissenko
|
94ea195dc1
|
Use node address instead of relying on loopback reported by redis
|
2017-07-01 12:31:41 +03:00 |
Vladimir Mihailenco
|
5132e15c93
|
Fix cmd info race. Fixes #578
|
2017-06-17 12:34:39 +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
|
6307b95039
|
Export Cmder.Name
|
2017-05-09 12:45:30 +03:00 |
Felipe Cavalcanti
|
eeb4d09198
|
rename Pipelineable to Pipeliner
|
2017-05-02 12:00:53 -03:00 |
Felipe Cavalcanti
|
6fca4d5ad0
|
pipeline now has its own interface "Pipelineable"
|
2017-05-01 12:42:58 -03:00 |
Vladimir Mihailenco
|
9ebd89772a
|
Rework PubSub conn management
|
2017-04-24 13:41:03 +03:00 |
Yuval Pavel Zholkover
|
8c21ec0006
|
Fix typo in ClusterClient.TxPipelined()
It should be using ClusterClient.TxPipeline() and not ClusterClient.Pipeline().
|
2017-04-21 15:50:32 +03:00 |
Poloskin Valentin Georgievich
|
80673992e6
|
gofmt
|
2017-04-02 17:10:47 +03:00 |
Vladimir Mihailenco
|
ef95182d29
|
Code cleanup
|
2017-03-31 15:11:11 +03:00 |
Vladimir Mihailenco
|
2cf5af9928
|
Merge branch 'v5'
|
2017-03-20 12:23:42 +02:00 |
Vladimir Mihailenco
|
ab1e8de9ea
|
Add ability to read client options
|
2017-03-20 12:15:21 +02:00 |
Vladimir Mihailenco
|
f33571c93c
|
Merge branch 'v5'
|
2017-03-04 13:38:55 +02:00 |
Vladimir Mihailenco
|
15998effbe
|
Don't panic if cluster state is nil.
|
2017-03-04 13:27:34 +02:00 |
Dimitrij Denissenko
|
30412d7652
|
Added support for universal client
|
2017-02-20 10:46:22 +00:00 |
Vladimir Mihailenco
|
8040d63c4f
|
Remove gopkg.in
|
2017-02-19 09:49:21 +02:00 |
Vladimir Mihailenco
|
69554c0ec5
|
Reduce number of allocations.
|
2017-01-13 13:39:59 +02:00 |
Vladimir Mihailenco
|
cd7431c40a
|
Fix cluster pipeline tests.
|
2016-12-20 17:59:38 +02:00 |
Vladimir Mihailenco
|
b49d47eb4d
|
Merge pull request #449 from go-redis/fix/use-first-slot-when-there-are-no-keys
Use first slot/shard when key is not defined.
|
2016-12-16 15:38:35 +02:00 |
Vladimir Mihailenco
|
6cd7a09b22
|
Use first slot/shard when key is not defined.
|
2016-12-16 14:30:23 +02:00 |
Vladimir Mihailenco
|
4ba635e15f
|
Add func doc.
|
2016-12-16 14:19:53 +02:00 |
Vladimir Mihailenco
|
152cc1ee34
|
Merge pull request #444 from go-redis/feature/tx-pipeline
Add TxPipeline.
|
2016-12-16 11:40:46 +02:00 |
Vladimir Mihailenco
|
865d501d07
|
Add TxPipeline.
|
2016-12-16 11:25:58 +02:00 |
Vladimir Mihailenco
|
34122bffa8
|
Check that clients implement scripter interface.
|
2016-12-14 12:12:50 +02:00 |
Vladimir Mihailenco
|
c7dfbb54af
|
Fix nil ptr in case when all nodes are unavailable.
|
2016-12-12 17:30:08 +02:00 |
Vladimir Mihailenco
|
420337dc4a
|
Simplify cmdInfo check.
|
2016-12-09 15:52:36 +02:00 |
zezhou.yu
|
fb584d25db
|
fix cmdInfo nil pointer panic
|
2016-12-08 01:34:22 +08:00 |
Vladimir Mihailenco
|
b4efc45f1c
|
Set read/write timeouts more consistently.
|
2016-12-03 17:30:13 +02:00 |
Vladimir Mihailenco
|
83208a1d9b
|
Use consistent cluster state when executing pipeline.
|
2016-11-08 11:46:44 +02:00 |
Vladimir Mihailenco
|
8558a92fa4
|
Retry multiple commands more conservatively.
|
2016-10-13 13:56:24 +03:00 |
yyoshiki41
|
236c021d4c
|
simplify if condition
|
2016-10-13 17:27:43 +09:00 |