enhance(cache):精简缓存关系清理的逻辑。
This commit is contained in:
parent
8a21a2f469
commit
a4a9938675
8
cache/relation.go
vendored
8
cache/relation.go
vendored
@ -98,17 +98,19 @@ func ClearOrphanRelationItems() error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
keysNeedRemove := make([]string, 0)
|
||||||
for _, item := range relationItems {
|
for _, item := range relationItems {
|
||||||
exist, err := Exists(item)
|
exist, err := Exists(item)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if !exist {
|
if !exist {
|
||||||
cmd := global.RedisConn.B().Srem().Key(key).Member(item).Build()
|
keysNeedRemove = append(keysNeedRemove, item)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
cmd := global.RedisConn.B().Srem().Key(key).Member(keysNeedRemove...).Build()
|
||||||
cmds = append(cmds, cmd)
|
cmds = append(cmds, cmd)
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
errs := global.RedisConn.DoMulti(global.Ctx, cmds...)
|
errs := global.RedisConn.DoMulti(global.Ctx, cmds...)
|
||||||
firstErr, has := lo.Find(errs, func(elem rueidis.RedisResult) bool {
|
firstErr, has := lo.Find(errs, func(elem rueidis.RedisResult) bool {
|
||||||
return elem.Error() != nil
|
return elem.Error() != nil
|
||||||
|
Loading…
x
Reference in New Issue
Block a user