Commit Graph

2347 Commits

Author SHA1 Message Date
Vladimir Mihailenco 21a1f58caf Retry timeout and retryable error 2020-07-24 15:52:15 +03:00
lsytj0413 d184d958d7 feat(option): default dialtimeout take effect when dialer is nil 2020-07-21 15:18:36 +08:00
Vladimir Mihailenco 16e62e05a1
Merge pull request #1414 from go-redis/fix/load-cmds-3-attempts
Try 3 random addrs to load commands
2020-07-19 10:28:06 +03:00
Vladimir Mihailenco 862dcbadae Try 3 random addrs to load commands 2020-07-19 09:51:41 +03:00
刘青 8a3f304b25
Log with context to associate all log by traceID (#1413)
* Log with context to associate all log by traceID
2020-07-18 09:04:36 +03:00
Vladimir Mihailenco f2645d373d
Merge pull request #1405 from fishy/atomic-value-last-dial-error
Use atomic.Value instead of lock for ConnPool.lastDialError
2020-07-16 10:41:42 +03:00
Vladimir Mihailenco 38c87c1f84 Fix golangci 2020-07-16 10:01:27 +03:00
Vladimir Mihailenco 14c843ef89 gofumports 2020-07-16 09:52:07 +03:00
Tiger He 62469e4f42
Introduce metrics capture with OpenTelemetry (#1398)
* internal: Add instrumentation

Co-authored-by: reggiemcdonald <regmcdonald95@gmail.com>
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-07-15 12:07:07 +03:00
Yuxuan 'fishy' Wang 4f70db6849 Use atomic.Value instead of lock for ConnPool.lastDialError
This makes the reading and writing of lastDialError from the pool
faster, as atomic.Value is much more lightweight than the mutex.

Note that using error in atomic.Value directly could cause panics,
because errors could have inconsistent types. Thus wrap them with a
simple struct.
2020-07-14 11:25:59 -07:00
Vladimir Mihailenco f3d06886e6 RecordError in OpenTelemetryHook 2020-07-09 12:23:03 +03:00
Vladimir Mihailenco 6b9f61cf75 Merge pull request #1400 from alonana/master
handle memory usage command arguments
2020-07-09 11:56:30 +03:00
Vladimir Mihailenco d66af70ae8 Rename clusterAddrs to activeAddrs 2020-07-09 11:35:19 +03:00
Vladimir Mihailenco f108b8bce3
Merge pull request #1377 from davidfu13/master
Make cluster client get updated nodes' addrs
2020-07-09 11:27:43 +03:00
Vladimir Mihailenco 8f29d08432 Don't record proto.Nil 2020-07-09 11:00:23 +03:00
Vladimir Mihailenco 1831363467 Add RecordError 2020-07-09 10:39:46 +03:00
Alon Tamir c41cbf2756
handle memory usage command arguments
See https://github.com/redis/redis/issues/7493
We have to include a special handling for the memory usage command
2020-07-09 10:25:06 +03:00
Vladimir Mihailenco dd5e03f960
Merge pull request #1397 from johejo/upgrade_xxhash_to_v2
upgrade xxhash to v2
2020-07-06 08:15:42 +03:00
Mitsuo Heijo 44e1bf83ea upgrade xxhash to v2 2020-07-06 13:51:51 +09:00
Vladimir Mihailenco dc52593c8c Reload state on read only error 2020-06-30 11:13:15 +03:00
Vladimir Mihailenco ac72610544
Merge pull request #1391 from go-redis/fix/random-node-cluster-slots
Use random node to load cluster slots
2020-06-29 18:13:31 +03:00
Vladimir Mihailenco 64995f9a51 Tweak auto-reloads 2020-06-29 17:51:47 +03:00
Vladimir Mihailenco 8638895c66 Cleanup appendArgs 2020-06-29 17:48:57 +03:00
Vladimir Mihailenco 52557f02b7
Merge pull request #1389 from adambabik/patch/xaddargs-values-accept-slices
Add support for slices in XAddArgs.Values
2020-06-29 17:40:59 +03:00
Vladimir Mihailenco 0ffefcde98 Use random node to load cluster slots 2020-06-29 17:26:11 +03:00
Adam Babik b2acec277e
add support for slices in XAddArgs.Values 2020-06-28 12:36:22 +02:00
David Fu bb6761fe83 Make cluster client get updated nodes' addrs
During loading state, if all the nodes can't be connected, it's
possible that all the nodes' IP addresses have changed at the same
time. Clear the clusterAddrs so that the cluster client has chance
to get updated nodes' IP addresses by using the initial setting of
cluster addresses.
2020-06-15 15:24:18 +08:00
Vladimir Mihailenco 5b4d00c217
Merge pull request #1375 from mcg-web/patch-1
[DOC] Add ctx declaration in readme
2020-06-14 14:39:57 +03:00
Jeremiah VALERIE bebee12c80
Add ctx declaration in readme 2020-06-14 12:45:37 +02:00
Vladimir Mihailenco 789ee0484f Remove io.StringWriter 2020-06-12 10:09:32 +03:00
Vladimir Mihailenco 888328aef2 Set Ring.Username 2020-06-12 09:28:14 +03:00
Vladimir Mihailenco 3152667bb5
Merge pull request #1371 from devinsburke/master
Re-added password support for AUTH purposes
2020-06-12 09:25:00 +03:00
Devin Burke fea8458443 Re-added password support for AUTH purposes 2020-06-11 18:58:09 -05:00
Vladimir Mihailenco 408b4d52c8 Fix wording 2020-06-10 17:22:06 +03:00
Vladimir Mihailenco 0fbf4e7221 Tweak log message 2020-06-10 16:44:48 +03:00
Vladimir Mihailenco ec194ab8f1
Merge pull request #1365 from rvolosatovs/fix/durations
Truncate sub-{mili,}second durations to 1
2020-06-10 16:43:50 +03:00
Vladimir Mihailenco 736fa28659 Cleanup 2020-06-10 15:04:12 +03:00
Roman Volosatovs 7f89f75288
Truncate sub-{mili,}second durations to 1 2020-06-10 13:52:27 +02:00
Vladimir Mihailenco ef82e3705c Add OnConnect context 2020-06-10 10:36:22 +03:00
Vladimir Mihailenco e779df5ab1 Add sponsors 2020-06-09 17:59:23 +03:00
Vladimir Mihailenco 1be7055968
Merge pull request #1364 from go-redis/feature/otel-hook
Add OpenTelemetryHook
2020-06-09 17:40:23 +03:00
Vladimir Mihailenco 8eed1e67ff Add OpenTelemetryHook 2020-06-09 17:17:41 +03:00
Vladimir Mihailenco 0f875ec0f6
Merge pull request #1361 from go-redis/feature/rendezvous-hash
Use Rendezvous in Ring. Thanks @rafaeleyng for initial idea and implementation
2020-06-08 13:48:59 +03:00
Vladimir Mihailenco d8c0aae2ea
Merge pull request #1359 from rbg/master
Update docs
2020-06-08 13:24:10 +03:00
Vladimir Mihailenco 694e518a8c Use Rendezvous in Ring. Thanks @rafaeleyng for initial idea and implementation 2020-06-08 13:22:37 +03:00
Robert B Gordon e6d31f6540 Update docs
Looks like these should really be HSet ?
2020-06-07 21:50:34 -05:00
Vladimir Mihailenco 10561b3aa4
Merge pull request #1357 from go-redis/fix/command-info
Fix/command info
2020-06-05 10:30:31 +03:00
Vladimir Mihailenco 073d805708 Fix build 2020-06-05 09:55:37 +03:00
Vladimir Mihailenco 2e8ce55021 Fix Command parsing 2020-06-05 09:11:12 +03:00
Vladimir Mihailenco 12d46bf32e Use Redis stable for testing 2020-06-05 09:08:16 +03:00