fix: redis GetHashBatch检查索引是否越界

This commit is contained in:
TsMask
2024-12-04 15:52:09 +08:00
parent f8fde36e14
commit 93ecce36b5

View File

@@ -277,10 +277,6 @@ func GetHashBatch(source string, keys []string) (map[string]map[string]string, e
}
for i := 0; i < total; i += batchSize {
// 检查索引是否越界
if i+batchSize > total {
batchSize = total - i
}
wg.Add(1)
go func(start int) {
ctx := context.Background()
@@ -292,8 +288,13 @@ func GetHashBatch(source string, keys []string) (map[string]map[string]string, e
wg.Done()
}()
// 检查索引是否越界
end := start + batchSize
if end > total {
end = total
}
pipe := rdb.Pipeline()
for _, key := range keys[start : start+batchSize] {
for _, key := range keys[start:end] {
pipe.HGetAll(ctx, key)
}