Monkey

Results 103 comments of Monkey
trafficstars

Looks very good😁

In go1.20, enforce strict parsing for RFC3339 for Time.Unmarshal. By default, gin uses `func (t *Time) UnmarshalJSON(data []byte)` method, See https://github.com/golang/go/issues/54580

We made an attempt in #2455, to be honest, the experience was poor. It disrupted our usual process of executing commands. In my opinion, we need to put more thought...

I feel that the cost of #2455 is too high, and I don't think it's a good solution, even though it solves the problem.

Because conn.Read(), conn.Write() do not depend on ctx, but only use timeout to control.

We still want go-redis to maintain high performance and do not want to use multiple goroutines to pass signals through channels, which would make it more complex. We want the...

We still need to keep improving it.

benchmark: redis-benchmark: ```shell monkey@MonkeyiMac redis% ~/redis/redis-7.0.8/src/redis-benchmark -h 127.0.0.1 -p 6379 -c 20 -n 1000000 ====== PING_INLINE ====== 1000000 requests completed in 10.91 seconds 20 parallel clients 3 bytes payload keep...

Tests occasionally fail: ```shell panic: repeat watchCancel goroutine 8110 [running]: github.com/redis/go-redis/v9/internal/pool.(*Conn).WatchCancel(0xc0007fa140?, {0xa665d8?, 0xc0009eaf00?}) /Users/monkey/Desktop/redis/internal/pool/conn.go:97 +0xc5 github.com/redis/go-redis/v9.(*baseClient).withConn(0xc0007fa140, {0xa665d8, 0xc0009eaf00}, 0xc0006ffd60) /Users/monkey/Desktop/redis/redis.go:352 +0xf8 github.com/redis/go-redis/v9.(*baseClient)._process(0xc0007fa140, {0xa665d8, 0xc0009eaf00}, {0xa69878, 0xc000723200}, 0x2?) /Users/monkey/Desktop/redis/redis.go:388 +0xe5 github.com/redis/go-redis/v9.(*baseClient).process(0xc0007fa140,...

Tested and it works fine 😁