Alexander Yastrebov
6c05a9f6b1
fix: reduce `SetAddrs` shards lock contention
...
Introduces a new lock to make `SetAddrs` calls exclusive.
This allows release of shards lock for the duration of potentially long `newRingShards` call.
`TestRingSetAddrsContention` observes number of pings increased from <1000 to ~40_000.
See https://github.com/go-redis/redis/pull/2190#discussion_r953040289
Updates #2077
2022-11-22 23:55:13 +01:00
Vladimir Mihailenco
5502cf6c3a
Merge pull request #2291 from boatrainlsz/master
...
feat: add support for SINTERCARD command
2022-11-22 14:50:09 +02:00
Vladimir Mihailenco
df9162d541
Merge pull request #2294 from go-redis/fix/conn-tx-pipeline
...
fix: wrap cmds in Conn.TxPipeline
2022-11-22 14:48:25 +02:00
Vladimir Mihailenco
5053db2f9c
fix: wrap cmds in Conn.TxPipeline
2022-11-22 14:30:27 +02:00
Alexander Yastrebov
a31c1d6ff0
test: add TestRingSetAddrsContention
...
See https://github.com/go-redis/redis/pull/2190#discussion_r953040289
Updates #2077
2022-11-21 16:06:22 +01:00
boatrainlsz
bc51c61a45
feat: add support for SINTERCARD command
2022-11-21 22:11:23 +08:00
Vladimir Mihailenco
0884e48a21
chore: improve cluster pipeline retries
2022-11-21 11:55:19 +02:00
Vladimir Mihailenco
7335ef65dc
chore: cleanup
2022-11-21 11:31:38 +02:00
Vladimir Mihailenco
dadd6d2785
Merge pull request #2273 from DomParfitt/add-with-conn-tests
...
Add withConn tests
2022-11-21 11:03:25 +02:00
Vladimir Mihailenco
2073dc35ea
Merge pull request #2259 from go-redis/dependabot/go_modules/github.com/stretchr/testify-1.8.1
...
chore(deps): bump github.com/stretchr/testify from 1.8.0 to 1.8.1
2022-11-21 11:02:15 +02:00
dependabot[bot]
a1cc91272b
chore(deps): bump github.com/stretchr/testify from 1.8.0 to 1.8.1
...
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify ) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/stretchr/testify/releases )
- [Commits](https://github.com/stretchr/testify/compare/v1.8.0...v1.8.1 )
---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-11-21 09:01:39 +00:00
Vladimir Mihailenco
2f82a5d569
Merge pull request #2280 from go-redis/dependabot/go_modules/github.com/onsi/gomega-1.24.1
...
chore(deps): bump github.com/onsi/gomega from 1.21.1 to 1.24.1
2022-11-21 11:01:01 +02:00
Alexander Yastrebov
d83436b321
fix: fixes ring.SetAddrs and rebalance race ( #2283 )
...
* fix: fixes ring.SetAddrs and rebalance race
The change ensures atomic update of `c.hash` and `c.shards`.
`BenchmarkRingRebalanceLocked` shows rebalance latency:
```
go test . -run=NONE -bench=BenchmarkRingRebalanceLocked -v -count=10 | benchstat /dev/stdin
name time/op
RingRebalanceLocked-8 8.50µs ±14%
```
(Note: it essentially reverts a46b053aa6
)
2022-11-21 11:00:00 +02:00
Vladimir Mihailenco
bbff4dd5dc
chore: fix metrics in redisotel
2022-11-18 15:32:17 +02:00
Vladimir Mihailenco
58e87e00e2
Merge pull request #2286 from go-redis/feat/has-error-prefix
...
feat: add HasErrorPrefix
2022-11-18 13:21:21 +02:00
Vladimir Mihailenco
44af3c09a7
chore: add more metrics to redisotel
2022-11-17 16:24:16 +02:00
Vladimir Mihailenco
d3d8002e89
feat: add HasErrorPrefix
2022-11-17 16:18:04 +02:00
dependabot[bot]
d82ec71ad9
chore(deps): bump github.com/onsi/gomega from 1.21.1 to 1.24.1
...
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega ) from 1.21.1 to 1.24.1.
- [Release notes](https://github.com/onsi/gomega/releases )
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md )
- [Commits](https://github.com/onsi/gomega/compare/v1.21.1...v1.24.1 )
---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-11-09 13:52:51 +00:00
Vladimir Mihailenco
f9e60f214b
chore: update example
2022-11-09 15:51:59 +02:00
Vladimir Mihailenco
90144999eb
chore: update readme
2022-11-09 15:18:55 +02:00
Vladimir Mihailenco
dd858eaf07
chore: update otel example
2022-11-09 15:16:13 +02:00
Vladimir Mihailenco
1278a8094f
chore: sync the doc comment
2022-11-09 14:57:10 +02:00
Vladimir Mihailenco
8f6bc464a5
Merge pull request #2275 from stephaniehingtgen/fix-route-randomly-query-param
...
Read in the route_randomly parameter correctly in cluster mode
2022-11-09 14:52:17 +02:00
Stephanie Hingtgen
f236053735
fix: read in route_randomly query param correctly
2022-11-04 11:17:22 -06:00
Dom Parfitt
a54ed5afb2
test: add withConn tests
2022-11-03 10:45:48 +00:00
Vladimir Mihailenco
5350c18740
Merge pull request #2272 from DomParfitt/fix-with-conn-cleanup
...
Capture error correctly in withConn
2022-11-02 12:07:47 +02:00
Dom Parfitt
d1bfaba549
fix: capture error correctly in withConn
2022-11-02 09:11:36 +00:00
Vladimir Mihailenco
f1d6bc91b7
chore: add link to an example
2022-10-20 16:44:05 +03:00
Vladimir Mihailenco
517938a6b0
chore: update example
2022-10-19 15:30:35 +03:00
Vladimir Mihailenco
4cb9d14eb6
chore: update changelog
2022-10-17 16:27:10 +03:00
Vladimir Mihailenco
104c757027
chore: improve docker config
2022-10-16 12:12:35 +03:00
Vladimir Mihailenco
f16c3a7fee
chore: update example
2022-10-16 11:28:12 +03:00
Vladimir Mihailenco
9070a20f41
chore: improve OpenTelemetry example
2022-10-16 11:11:54 +03:00
Vladimir Mihailenco
f6940c80ca
chore: cleanup changelog
2022-10-14 17:05:15 +03:00
Vladimir Mihailenco
53b3c8c1de
Merge pull request #2253 from go-redis/release/v9.0.0-rc.1
...
Release/v9.0.0 rc.1
2022-10-14 17:04:13 +03:00
Vladimir Mihailenco
e84461f7ed
chore: release v9.0.0-rc.1 (release.sh)
2022-10-14 15:19:56 +03:00
Vladimir Mihailenco
bbf100d7bb
chore: go 1.17 compat
2022-10-14 15:19:45 +03:00
Vladimir Mihailenco
894b0b961b
chore: don't update dependencies
2022-10-14 15:18:15 +03:00
Vladimir Mihailenco
c306a51f21
Merge pull request #2252 from go-redis/fix/unsub-all
...
fix: reset pubsub state when unsubscribing from all channels
2022-10-14 15:17:02 +03:00
Vladimir Mihailenco
331e40dc6c
fix: reset pubsub state when unsubscribing from all channels
2022-10-14 15:15:06 +03:00
Vladimir Mihailenco
6a8cf3e9d8
chore: fix examples
2022-10-13 09:12:05 +03:00
Vladimir Mihailenco
3e4ae80c12
chore: improve instrumentation example
2022-10-12 17:18:55 +03:00
Vladimir Mihailenco
d01dc36c09
Merge pull request #2245 from go-redis/fix/dial-hook
...
fix: late binding for dial hook
2022-10-12 17:18:27 +03:00
Vladimir Mihailenco
eab588ddb5
chore: fix linter
2022-10-12 15:14:26 +03:00
Vladimir Mihailenco
2ec03d9b37
fix: late binding for dial hook
2022-10-12 15:00:06 +03:00
Vladimir Mihailenco
180f107add
Merge pull request #2244 from go-redis/feat/metrics
...
Add OpenTelemetry Metrics using new hooks
2022-10-12 11:10:06 +03:00
Vladimir Mihailenco
0dff3d1461
feat: add OpenTelemetry metrics instrumentation
2022-10-12 11:09:41 +03:00
Vladimir Mihailenco
d07457b6cf
Merge pull request #2243 from go-redis/feat/context-timeout-enabled
...
feat: add ContextTimeoutEnabled to respect context timeouts and deadl…
2022-10-11 10:41:16 +03:00
Vladimir Mihailenco
41a533cb7b
chore: downgrade opentelemetry
2022-10-11 10:37:43 +03:00
Vladimir Mihailenco
58f7149e38
feat: add ContextTimeoutEnabled to respect context timeouts and deadlines
2022-10-11 10:22:42 +03:00