in storehaus-redis/src/main/scala/com/twitter/storehaus/redis/RedisSortedSetStore.scala [61:71]
override def merge(
kv: (Buf, Seq[(Buf, Double)])
): Future[Option[Seq[(Buf, Double)]]] =
Future.collect(kv._2.map {
case (member, by) =>
client.zIncrBy(kv._1, by, member)
.map {
case Some(res) => member -> (res - by) // get the value before
case None => member -> 0.0
}
}).map(Some(_))