1
0
mirror of https://github.com/redis/go-redis.git synced 2025-07-28 06:42:00 +03:00

fix build

This commit is contained in:
Nedyalko Dyakov
2025-04-22 22:42:18 +03:00
parent 5fac913204
commit 2a97f2e49c
3 changed files with 38 additions and 15 deletions

View File

@ -51,7 +51,8 @@ func Example_instrumentation() {
rdb.AddHook(redisHook{}) rdb.AddHook(redisHook{})
rdb.Ping(ctx) rdb.Ping(ctx)
// Output: starting processing: <[ping]> // Output:
// starting processing: <[ping]>
// dialing tcp :6379 // dialing tcp :6379
// finished dialing tcp :6379 // finished dialing tcp :6379
// starting processing: <[hello 3]> // starting processing: <[hello 3]>
@ -61,7 +62,8 @@ func Example_instrumentation() {
func ExamplePipeline_instrumentation() { func ExamplePipeline_instrumentation() {
rdb := redis.NewClient(&redis.Options{ rdb := redis.NewClient(&redis.Options{
Addr: ":6379", Addr: ":6379",
DisableIdentity: true,
}) })
rdb.AddHook(redisHook{}) rdb.AddHook(redisHook{})
@ -70,16 +72,19 @@ func ExamplePipeline_instrumentation() {
pipe.Ping(ctx) pipe.Ping(ctx)
return nil return nil
}) })
// Output: pipeline starting processing: [ping: ping: ] // Output:
// Output: pipeline starting processing: [[ping] [ping]] // pipeline starting processing: [[ping] [ping]]
// dialing tcp :6379 // dialing tcp :6379
// finished dialing tcp :6379 // finished dialing tcp :6379
// starting processing: <[hello 3]>
// finished processing: <[hello 3]>
// pipeline finished processing: [[ping] [ping]] // pipeline finished processing: [[ping] [ping]]
} }
func ExampleClient_Watch_instrumentation() { func ExampleClient_Watch_instrumentation() {
rdb := redis.NewClient(&redis.Options{ rdb := redis.NewClient(&redis.Options{
Addr: ":6379", Addr: ":6379",
DisableIdentity: true,
}) })
rdb.AddHook(redisHook{}) rdb.AddHook(redisHook{})
@ -92,6 +97,8 @@ func ExampleClient_Watch_instrumentation() {
// starting processing: <[watch foo]> // starting processing: <[watch foo]>
// dialing tcp :6379 // dialing tcp :6379
// finished dialing tcp :6379 // finished dialing tcp :6379
// starting processing: <[hello 3]>
// finished processing: <[hello 3]>
// finished processing: <[watch foo]> // finished processing: <[watch foo]>
// starting processing: <[ping]> // starting processing: <[ping]>
// finished processing: <[ping]> // finished processing: <[ping]>

View File

@ -394,7 +394,7 @@ func (c *baseClient) initConn(ctx context.Context, cn *pool.Conn) error {
// or it could be DragonflyDB or a third-party redis-proxy. They all respond // or it could be DragonflyDB or a third-party redis-proxy. They all respond
// with different error string results for unsupported commands, making it // with different error string results for unsupported commands, making it
// difficult to rely on error strings to determine all results. // difficult to rely on error strings to determine all results.
return fmt.Errorf("failed to initialize connection: %w", err) return err
} else if password != "" { } else if password != "" {
// Try legacy AUTH command if HELLO failed // Try legacy AUTH command if HELLO failed
err = c.reAuthConnection(ctx, conn)(auth.NewBasicCredentials(username, password)) err = c.reAuthConnection(ctx, conn)(auth.NewBasicCredentials(username, password))
@ -434,7 +434,7 @@ func (c *baseClient) initConn(ctx context.Context, cn *pool.Conn) error {
// Handle network errors (e.g. timeouts) in CLIENT SETINFO to avoid // Handle network errors (e.g. timeouts) in CLIENT SETINFO to avoid
// out of order responses later on. // out of order responses later on.
if _, err = p.Exec(ctx); err != nil && !isRedisError(err) { if _, err = p.Exec(ctx); err != nil && !isRedisError(err) {
return fmt.Errorf("failed to set client identity: %w", err) return err
} }
} }

View File

@ -357,13 +357,17 @@ var _ = Describe("Redis Ring", func() {
ring.AddHook(&hook{ ring.AddHook(&hook{
processPipelineHook: func(hook redis.ProcessPipelineHook) redis.ProcessPipelineHook { processPipelineHook: func(hook redis.ProcessPipelineHook) redis.ProcessPipelineHook {
return func(ctx context.Context, cmds []redis.Cmder) error { return func(ctx context.Context, cmds []redis.Cmder) error {
Expect(cmds).To(HaveLen(1)) // skip the connection initialization
if cmds[0].Name() == "hello" || cmds[0].Name() == "client" {
return nil
}
Expect(len(cmds)).To(BeNumerically(">", 0))
Expect(cmds[0].String()).To(Equal("ping: ")) Expect(cmds[0].String()).To(Equal("ping: "))
stack = append(stack, "ring.BeforeProcessPipeline") stack = append(stack, "ring.BeforeProcessPipeline")
err := hook(ctx, cmds) err := hook(ctx, cmds)
Expect(cmds).To(HaveLen(1)) Expect(len(cmds)).To(BeNumerically(">", 0))
Expect(cmds[0].String()).To(Equal("ping: PONG")) Expect(cmds[0].String()).To(Equal("ping: PONG"))
stack = append(stack, "ring.AfterProcessPipeline") stack = append(stack, "ring.AfterProcessPipeline")
@ -376,13 +380,17 @@ var _ = Describe("Redis Ring", func() {
shard.AddHook(&hook{ shard.AddHook(&hook{
processPipelineHook: func(hook redis.ProcessPipelineHook) redis.ProcessPipelineHook { processPipelineHook: func(hook redis.ProcessPipelineHook) redis.ProcessPipelineHook {
return func(ctx context.Context, cmds []redis.Cmder) error { return func(ctx context.Context, cmds []redis.Cmder) error {
Expect(cmds).To(HaveLen(1)) // skip the connection initialization
if cmds[0].Name() == "hello" || cmds[0].Name() == "client" {
return nil
}
Expect(len(cmds)).To(BeNumerically(">", 0))
Expect(cmds[0].String()).To(Equal("ping: ")) Expect(cmds[0].String()).To(Equal("ping: "))
stack = append(stack, "shard.BeforeProcessPipeline") stack = append(stack, "shard.BeforeProcessPipeline")
err := hook(ctx, cmds) err := hook(ctx, cmds)
Expect(cmds).To(HaveLen(1)) Expect(len(cmds)).To(BeNumerically(">", 0))
Expect(cmds[0].String()).To(Equal("ping: PONG")) Expect(cmds[0].String()).To(Equal("ping: PONG"))
stack = append(stack, "shard.AfterProcessPipeline") stack = append(stack, "shard.AfterProcessPipeline")
@ -416,14 +424,18 @@ var _ = Describe("Redis Ring", func() {
processPipelineHook: func(hook redis.ProcessPipelineHook) redis.ProcessPipelineHook { processPipelineHook: func(hook redis.ProcessPipelineHook) redis.ProcessPipelineHook {
return func(ctx context.Context, cmds []redis.Cmder) error { return func(ctx context.Context, cmds []redis.Cmder) error {
defer GinkgoRecover() defer GinkgoRecover()
// skip the connection initialization
if cmds[0].Name() == "hello" || cmds[0].Name() == "client" {
return nil
}
Expect(cmds).To(HaveLen(3)) Expect(len(cmds)).To(BeNumerically(">=", 3))
Expect(cmds[1].String()).To(Equal("ping: ")) Expect(cmds[1].String()).To(Equal("ping: "))
stack = append(stack, "ring.BeforeProcessPipeline") stack = append(stack, "ring.BeforeProcessPipeline")
err := hook(ctx, cmds) err := hook(ctx, cmds)
Expect(cmds).To(HaveLen(3)) Expect(len(cmds)).To(BeNumerically(">=", 3))
Expect(cmds[1].String()).To(Equal("ping: PONG")) Expect(cmds[1].String()).To(Equal("ping: PONG"))
stack = append(stack, "ring.AfterProcessPipeline") stack = append(stack, "ring.AfterProcessPipeline")
@ -437,14 +449,18 @@ var _ = Describe("Redis Ring", func() {
processPipelineHook: func(hook redis.ProcessPipelineHook) redis.ProcessPipelineHook { processPipelineHook: func(hook redis.ProcessPipelineHook) redis.ProcessPipelineHook {
return func(ctx context.Context, cmds []redis.Cmder) error { return func(ctx context.Context, cmds []redis.Cmder) error {
defer GinkgoRecover() defer GinkgoRecover()
// skip the connection initialization
if cmds[0].Name() == "hello" || cmds[0].Name() == "client" {
return nil
}
Expect(cmds).To(HaveLen(3)) Expect(len(cmds)).To(BeNumerically(">=", 3))
Expect(cmds[1].String()).To(Equal("ping: ")) Expect(cmds[1].String()).To(Equal("ping: "))
stack = append(stack, "shard.BeforeProcessPipeline") stack = append(stack, "shard.BeforeProcessPipeline")
err := hook(ctx, cmds) err := hook(ctx, cmds)
Expect(cmds).To(HaveLen(3)) Expect(len(cmds)).To(BeNumerically(">=", 3))
Expect(cmds[1].String()).To(Equal("ping: PONG")) Expect(cmds[1].String()).To(Equal("ping: PONG"))
stack = append(stack, "shard.AfterProcessPipeline") stack = append(stack, "shard.AfterProcessPipeline")