package redis import ( "context" "sync/atomic" ) func (c *ClusterClient) DBSize(ctx context.Context) *IntCmd { cmd := NewIntCmd(ctx, "dbsize") var size int64 err := c.ForEachMaster(ctx, func(ctx context.Context, master *Client) error { n, err := master.DBSize(ctx).Result() if err != nil { return err } atomic.AddInt64(&size, n) return nil }) if err != nil { cmd.SetErr(err) return cmd } cmd.val = size return cmd }