From e4f73cba73da1cb50ba27ddeea7d1aa578c3ab4b Mon Sep 17 00:00:00 2001 From: Cynthia Date: Wed, 12 Aug 2026 13:34:17 +0800 Subject: [PATCH] fix: flush user group cache when users are added during group creation Signed-off-by: Cynthia --- .../user/core/service/permission/user_group.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/pkg/microservice/user/core/service/permission/user_group.go b/pkg/microservice/user/core/service/permission/user_group.go index 4327ed691fa..a26649a6d8a 100644 --- a/pkg/microservice/user/core/service/permission/user_group.go +++ b/pkg/microservice/user/core/service/permission/user_group.go @@ -67,6 +67,21 @@ func CreateUserGroup(groupName, desc string, uids []string, logger *zap.SugaredL tx.Commit() + userCache := cache.NewRedisCache(config.RedisCommonCacheTokenDB()) + + for _, uid := range uids { + userGroupKey := fmt.Sprintf(userconfig.UserGroupCacheKeyFormat, uid) + err := userCache.Delete(userGroupKey) + if err != nil { + log.Warnf("failed to flush uid: %s's group id cache, error: %s", uid, err) + } + + go func(userGroupKey string, redisCache *cache.RedisCache) { + time.Sleep(2 * time.Second) + redisCache.Delete(userGroupKey) + }(userGroupKey, userCache) + } + return userGroup, nil }