Back to Redis

BZPOPMAX

content/commands/bzpopmax.md

latest2.3 KB
Original Source

{{< note >}} This command's behavior varies in clustered Redis environments. See the [multi-key operations]({{< relref "/develop/using-commands/multi-key-operations" >}}) page for more information. {{< /note >}}

BZPOPMAX is the blocking variant of the sorted set [ZPOPMAX]({{< relref "/commands/zpopmax" >}}) primitive.

It is the blocking version because it blocks the connection when there are no members to pop from any of the given sorted sets. A member with the highest score is popped from first sorted set that is non-empty, with the given keys being checked in the order that they are given.

The timeout argument is interpreted as a double value specifying the maximum number of seconds to block. A timeout of zero can be used to block indefinitely.

See the BZPOPMIN documentation for the exact semantics, since BZPOPMAX is identical to [BZPOPMIN]({{< relref "/commands/bzpopmin" >}}) with the only difference being that it pops members with the highest scores instead of popping the ones with the lowest scores.

Examples

redis> DEL zset1 zset2
(integer) 0
redis> ZADD zset1 0 a 1 b 2 c
(integer) 3
redis> BZPOPMAX zset1 zset2 0
1) "zset1"
2) "c"
3) "2"

Redis Software and Redis Cloud compatibility

| Redis Software | Redis Cloud | <span style="min-width: 9em; display: table-cell">Notes</span> | |:----------------------|:-----------------|:------| | <span title="Supported">✅ Standard</span> <span title="Supported"><nobr>✅ Active-Active</nobr></span> | <span title="Supported">✅ Standard</span> <span title="Supported"><nobr>✅ Active-Active</nobr></span> | |

Return information

{{< multitabs id="bzpopmax-return-info" tab1="RESP2" tab2="RESP3" >}}

One of the following:

  • Nil reply: when no element could be popped and the timeout expired.
  • Array reply: the keyname, popped member, and its score.

-tab-sep-

One of the following:

  • Null reply: when no element could be popped and the timeout expired.
  • Array reply: the keyname, popped member, and its score.

{{< /multitabs >}}