Vladimir Mihailenco
|
fa479814de
|
Fix cmdsInfo to create node
|
2019-06-29 10:28:33 +03:00 |
Vladimir Mihailenco
|
fa2f6ee00b
|
Merge pull request #1056 from go-redis/fix/do-not-use-random-node
Use master / another slave node when current node is failing
|
2019-06-19 11:02:25 +03:00 |
Vladimir Mihailenco
|
3bdf64784a
|
Cleanup
|
2019-06-17 12:32:40 +03:00 |
Vladimir Mihailenco
|
1cc1ba9990
|
Use master / another slave node when current node is failing
|
2019-06-16 14:10:09 +03:00 |
Vladimir Mihailenco
|
880e05d975
|
Cleanup
|
2019-06-14 16:00:03 +03:00 |
Vladimir Mihailenco
|
5460bc10f2
|
Use Context.Deadline to set net.Conn deadline
|
2019-06-08 15:02:51 +03:00 |
Vladimir Mihailenco
|
53c8a4a6b7
|
Pass context to Dialer
|
2019-06-04 14:26:26 +03:00 |
Vladimir Mihailenco
|
09eb108738
|
Allow passing context where possible
|
2019-06-04 13:30:47 +03:00 |
Vladimir Mihailenco
|
3da4357c0c
|
Pass network and addr to dialer
|
2019-06-04 12:40:36 +03:00 |
Vladimir Mihailenco
|
84422d7ae7
|
Speedup WithContext
|
2019-05-31 17:31:54 +03:00 |
Vladimir Mihailenco
|
8476dfea4a
|
Replace Wrap* with hooks that support context
|
2019-05-31 16:36:57 +03:00 |
Vladimir Mihailenco
|
6238b8d4b7
|
Mark node as loading in Cluster pipeline read
|
2019-05-30 17:17:27 +03:00 |
Нимо
|
0f8e53e874
|
fix pubsub panic on redis reload
|
2019-04-18 19:06:16 +03:00 |
Andrea Spacca
|
9d63d8db54
|
Added WrapProcessPipeline to UniversalClient, wrap c.processTxPipeline in cluster client
|
2019-04-14 10:56:15 +02:00 |
Vladimir Mihailenco
|
5c012a3872
|
Use random node when there are no channels
|
2019-03-07 12:24:43 +02:00 |
Vladimir Mihailenco
|
b665d8fcf2
|
Rename copy to clone
|
2019-03-05 16:10:34 +02:00 |
Vladimir Mihailenco
|
ac9e1abf54
|
Retry master node on readonly errors. Fixes #977
|
2019-02-27 12:53:44 +02:00 |
Vladimir Mihailenco
|
473d039f0b
|
Merge pull request #955 from go-redis/fix/dont-remember-node
Don't remember cluster node for the PubSub
|
2019-02-08 15:37:55 +02:00 |
Vladimir Mihailenco
|
981cf0f5bb
|
Don't remember cluster node for the PubSub
|
2019-02-08 13:46:27 +02:00 |
Jake Gregg
|
67dcdea95a
|
⏪ Reverting changes to command.go, refactoring cluster client's calls to cmdSlot
|
2019-02-01 09:12:20 -08:00 |
Jake Gregg
|
f3804cd0b7
|
👌 Adding additional logic to handle this case
|
2019-02-01 08:23:41 -08:00 |
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 |