override def multiPut[K1 <:()

in storehaus-redis/src/main/scala/com/twitter/storehaus/redis/RedisSortedSetStore.scala [153:172]


  override def multiPut[K1 <: (Buf, Buf)](
      kv: Map[K1, Option[Double]]): Map[K1, Future[Unit]] = {
    // we are exploiting redis's built-in support for removals (zRem)
    // by partioning deletions and updates into 2 maps indexed by the first
    // component of the composite key, the key of the set
    val (del, persist) =
      multiPutPartitioned[Buf, Buf, K1, Double, Buf](kv)(_._1)
    del.flatMap {
      case (k, members) =>
        val value = client.zRem(k, members.map(_._1._2))
      members.map(_._1 -> value.unit)
    } ++ persist.flatMap {
      case (k, members) =>
        members.map {
          case (k1, score) =>
            // a per-InnerK operation
            k1 -> client.zAdd(k, score.get, k1._2).unit
        }
    }
  }