enhance(cache):精简缓存关系清理的逻辑。

This commit is contained in:
徐涛 2022-09-06 15:12:32 +08:00
parent 8a21a2f469
commit a4a9938675

8
cache/relation.go vendored
View File

@ -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