Commit Graph

206 Commits

Author SHA1 Message Date
Sown 7d5167e862
feat: add WriteArg and Scan net.IP()
* feat: add WriteArg net.IP

* feat: add Scan net.IP
2022-03-28 09:16:12 +08:00
slowrookie 3961b9577f
fix: use redis over ssh channel() () 2022-03-26 18:11:44 +08:00
Vladimir Mihailenco 38d398f630 chore: fix linter 2021-10-24 09:55:27 +03:00
Jackie 2f1b74e20c feat: add support for time.Duration write and scan 2021-10-21 18:37:17 +02:00
Vladimir Mihailenco 9b6ee9c3cc chore: gofmt all code 2021-09-08 16:52:29 +03:00
Vladimir Mihailenco ed42d3c37b
Add scan struct example () 2021-08-30 00:37:17 +08:00
monkey92t afafeda8a3
after the connection pool is closed, no new connections should be added ()
* after the connection pool is closed, no new connections should be added

Signed-off-by: monkey92t <golang@88.com>

* remove runGoroutine

Signed-off-by: monkey92t <golang@88.com>

* pool.popIdle add p.closed check

Signed-off-by: monkey92t <golang@88.com>

* upgrade golangci-lint v1.42.0

Signed-off-by: monkey92t <golang@88.com>
2021-08-19 16:56:23 +08:00
monkey92t fd3025bfed
Revert "ConnPool check fd for bad conns ()" ()
This reverts commit 346bfafddd.
2021-08-06 17:16:22 +08:00
do it 346bfafddd
ConnPool check fd for bad conns ()
* conncheck for badconn ()

* format imports

* fix ut: pool with badconn

* fix unstable ut: should facilitate failover

* Revert "fix unstable ut: should facilitate failover"

This reverts commit c7eeca2a5c.

* fix test error

Signed-off-by: monkey92t <golang@88.com>

Co-authored-by: hidu <duv123+github@gmail.com>
Co-authored-by: monkey92t <golang@88.com>
2021-07-20 17:23:48 +08:00
ktaekwon000 ce40cd942a
Allow FIFO pool in redis client ()
* Initial commit for FIFO pool

* Change PoolType string to PoolFIFO bool

* Remove redundant type

* add PoolFIFO option to all clients

Signed-off-by: monkey92t <golang@88.com>

Co-authored-by: Kim Tae Kwon <taekwon.kim@shopee.com>
Co-authored-by: monkey92t <golang@88.com>
2021-07-16 11:58:01 +08:00
Vladimir Mihailenco 27e2efb0af
Remove OpenTelemetry metrics for now () 2021-06-30 18:40:23 +08:00
heyanfu 14d82a2d93
fix typo () 2021-06-09 00:58:16 +08:00
Vladimir Mihailenco 6e4eb2e3ac
Remove OpenTelemetry from the code (but leave redisotel as is) () 2021-06-03 19:01:51 +08:00
monkey 26373ef2f1 follow to golang-lint 1.40
Signed-off-by: monkey <golang@88.com>
2021-05-13 10:33:38 +08:00
monkey a2410beb43 upgrade golangci-lint to v1.39.0
Signed-off-by: monkey <golang@88.com>
2021-04-08 14:44:31 +08:00
Vladimir Mihailenco 02a9c81ef1 Fix golangci-lint check 2021-03-23 11:02:29 +02:00
Vladimir Mihailenco 1b77706c0c Optimize Otel instrumentation 2021-03-20 10:01:48 +02:00
alijozi 1f32092a3b Update OpenTelemetry to 0.17.0 and fix "undefined: otel.Meter" 2021-02-16 11:38:55 +01:00
renzheng.wang 8b19c31049
Make FailoverClient(sentinel mode) more robust ()
* add failover option AllowDisconnectedSlaves

* checkout unrelated changes

* Make NewFailoverClient (sentinel mode) robust.

* fix lint issue

* Fix bug

* Fix lint issue

* add comment

* checkout unrelated changes

* Refine code

* checkout unrelated changes
2021-02-10 17:20:08 +02:00
monkey92t 27df2313cd
hscan adds support for i386 platform ()
* hscan adds support for i386 platform

Signed-off-by: monkey <monkey92t@gmail.com>

* update go.sum

Signed-off-by: monkey <monkey92t@gmail.com>

* detect overflow of scan

Signed-off-by: monkey <golang@88.com>

* restore the return value type of decoderFunc to error

Signed-off-by: monkey <golang@88.com>

* fix clean

Signed-off-by: monkey <golang@88.com>

* fix clean

Signed-off-by: monkey <golang@88.com>

Co-authored-by: Monkey <monkey@MonkeydeiMac.local>
2021-02-09 14:44:24 +02:00
Vladimir Mihailenco b358584bd3 Fix build 2021-02-04 09:34:10 +02:00
Vladimir Mihailenco bd234b91fe Add StructValue so we don't need temp slices to pass keys and values 2021-02-03 12:45:02 +02:00
Kailash Nadh f9dfc7a949 Refactor scan signature to work with Slice and StringMap cmds 2021-02-02 16:28:10 +05:30
Kailash Nadh a4144ea98e Add SliceCmd.Scan() (hscan pkg) and tests 2021-02-02 13:04:52 +05:30
Vladimir Mihailenco 380ab17274 Fix cleanup 2021-01-29 12:12:47 +02:00
Vladimir Mihailenco 8926f2992a Cleanup 2021-01-29 12:04:39 +02:00
Kailash Nadh 6f96bebac7 Add redis.Scan() to scan results from redis maps into structs.
The package uses reflection to decode default types (int, string
etc.) from Redis map results (key-value pair sequences) into
struct fields where the fields are matched to Redis keys by tags.

Similar to how `encoding/json` allows custom decoders using
`UnmarshalJSON()`, the package supports decoding of arbitrary
types into struct fields by defining a `Decode(string) error`
function on types.

The field/type spec of every struct that's passed to Scan() is
cached in the package so that subsequent scans avoid iteration
and reflection of the struct's fields.
2021-01-28 18:04:38 +05:30
Vladimir Mihailenco 76fd0eac61 Fix Tx pipeline hook 2021-01-09 09:57:46 +02:00
Vladimir Mihailenco 55a8f1a601
Merge pull request from go-redis/feature/otel-0.14
Update to otel v0.14
2020-11-21 10:12:54 +02:00
Vladimir Mihailenco 3921cd497c Update to otel v0.14 2020-11-21 09:56:52 +02:00
Mitsuo Heijo f5a1707d3c Update golangci-lint to v1.32 2020-11-17 23:08:15 +09:00
Vladimir Mihailenco 13782c03d0 Tweak otel span and attr names 2020-11-15 14:30:27 +02:00
Vladimir Mihailenco f92951b835 Guard against overflow in retry 2020-10-28 11:12:46 +02:00
Vladimir Mihailenco a6876ad84a Move Scan test 2020-10-13 09:33:12 +03:00
Roman Suvorov f169894120
Fix/issue 1384 ()
Add support for scanning time.TIme
2020-10-13 09:13:43 +03:00
Vladimir Mihailenco e1b0a0bd7e Cleanup readLine 2020-10-10 12:26:21 +03:00
Eelco Cramer 39571ccc56
Improves performance 2020-10-09 15:06:47 +02:00
Eelco Cramer 97bbed8a92
Fixes issue where a buffer larger than 4096
bytes cannot be read
2020-10-09 11:35:14 +02:00
Vladimir Mihailenco 566840fe27 otel: add RemoteAddr 2020-09-28 17:35:49 +03:00
Vladimir Mihailenco 3e42145a26 Remove arg hex encoding 2020-09-24 10:09:09 +03:00
Vladimir Mihailenco 86326c4924 Refactor NewXInfoGroupsCmd 2020-09-23 11:50:31 +03:00
Dimitrij Denissenko 3fc96195a4 Reduce dependency chain 2020-09-17 14:32:08 +01:00
Vladimir Mihailenco ef220d0944 Tweak append arg 2020-09-05 13:17:26 +03:00
Vladimir Mihailenco c357d18624 Faster renew the subscription 2020-09-05 10:56:09 +03:00
Vladimir Mihailenco 6db422f051 Port pool fixes 2020-08-15 15:45:15 +03:00
Vladimir Mihailenco 3fbf7df014 Fix test 2020-07-28 16:26:03 +03:00
Vladimir Mihailenco 0f5d67c102 Fix zero backoff 2020-07-28 16:14:54 +03:00
Vladimir Mihailenco 6e3d4a53c6 Tweak backoff 2020-07-28 15:42:38 +03:00
刘青 8a3f304b25
Log with context to associate all log by traceID ()
* Log with context to associate all log by traceID
2020-07-18 09:04:36 +03:00
Vladimir Mihailenco f2645d373d
Merge pull request from fishy/atomic-value-last-dial-error
Use atomic.Value instead of lock for ConnPool.lastDialError
2020-07-16 10:41:42 +03:00