src: Add DMA localagent
[barometer.git] / src / dma / vendor / github.com / go-redis / redis / cluster_commands.go
diff --git a/src/dma/vendor/github.com/go-redis/redis/cluster_commands.go b/src/dma/vendor/github.com/go-redis/redis/cluster_commands.go
new file mode 100644 (file)
index 0000000..dff62c9
--- /dev/null
@@ -0,0 +1,22 @@
+package redis
+
+import "sync/atomic"
+
+func (c *ClusterClient) DBSize() *IntCmd {
+       cmd := NewIntCmd("dbsize")
+       var size int64
+       err := c.ForEachMaster(func(master *Client) error {
+               n, err := master.DBSize().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
+}