Pops an element from a list, pushes it to another list and returns it. Block until an element is available otherwise. Deletes the list if the last element was popped.
BRPOPLPUSH
source destination timeout
BRPOPLPUSH
is the blocking variant of RPOPLPUSH
. When source
contains elements, this command behaves exactly like RPOPLPUSH
. When used inside a MULTI
/EXEC
block, this command behaves exactly like RPOPLPUSH
. When source
is empty, Valkey will block the connection until another client pushes to it or until timeout
is reached. A timeout
of zero can be used to block indefinitely.
See RPOPLPUSH
for more information.
Please see the pattern description in the RPOPLPUSH
documentation.
Please see the pattern description in the RPOPLPUSH
documentation.
One of the following:
Bulk string reply: the element being popped from source and pushed to destination.
Nil reply: the timeout is reached.
One of the following:
Bulk string reply: the element being popped from source and pushed to destination.
Null reply: the timeout is reached.
O(1)
@blocking @list @slow @write
timeout
is interpreted as a double instead of an integer.BLMOVE
with the RIGHT
and LEFT
arguments.BLMOVE, BLMPOP, BLPOP, BRPOP, LINDEX, LINSERT, LLEN, LMOVE, LMPOP, LPOP, LPOS, LPUSH, LPUSHX, LRANGE, LREM, LSET, LTRIM, RPOP, RPUSH, RPUSHX.