Files
upstream-mirror b352a9a30d
Some checks failed
test / Lint (push) Failing after 3s
test / Test with Go 1.26.8 (push) Failing after 2s
snapshot of https://github.com/centrifugal/centrifugo.git (master, 2026-09-16; blobs > 131072B omitted)
2026-09-16 01:17:21 +05:00

23 lines
587 B
Go

package redisqueue
import (
"context"
"strings"
"github.com/centrifugal/centrifugo/v6/internal/redisshard"
"github.com/redis/rueidis"
)
func CreateConsumerGroup(rds *redisshard.RedisShard, stream, groupName, id string) error {
res := rds.RunOp(func(client rueidis.Client) rueidis.RedisResult {
cmd := client.B().XgroupCreate().Key(stream).Group(groupName).Id(id).Mkstream().Build()
return client.Do(context.Background(), cmd)
})
if res.Error() != nil && strings.Contains(res.Error().Error(), "BUSYGROUP") {
// Group already exists.
return nil
}
return res.Error()
}