mirror of
https://github.com/redis/go-redis.git
synced 2025-06-12 14:21:52 +03:00
Rework pipeline retrying
This commit is contained in:
14
command.go
14
command.go
@ -46,10 +46,21 @@ type Cmder interface {
|
||||
|
||||
func setCmdsErr(cmds []Cmder, e error) {
|
||||
for _, cmd := range cmds {
|
||||
cmd.setErr(e)
|
||||
if cmd.Err() == nil {
|
||||
cmd.setErr(e)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func firstCmdsErr(cmds []Cmder) error {
|
||||
for _, cmd := range cmds {
|
||||
if err := cmd.Err(); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func writeCmd(cn *pool.Conn, cmds ...Cmder) error {
|
||||
cn.Wb.Reset()
|
||||
for _, cmd := range cmds {
|
||||
@ -95,7 +106,6 @@ func cmdFirstKeyPos(cmd Cmder, info *CommandInfo) int {
|
||||
return 1
|
||||
}
|
||||
if info == nil {
|
||||
internal.Logf("info for cmd=%s not found", cmd.Name())
|
||||
return -1
|
||||
}
|
||||
return int(info.FirstKeyPos)
|
||||
|
Reference in New Issue
Block a user