Merges two batches into a single batch where result of the right-hand-side batch is returned while result of left-hand-side is discarded.
Merges two batches into a single batch where result of the right-hand-side batch is returned while
result of left-hand-side is discarded. Useful when left-hand-side returns Unit
.
NOTE: errors for left-hand-side are NOT discarded, use ignoreFailures on it if that's your intention.
Merges two batches into a single batch where result of the left-hand-side batch is returned while result of right-hand-side is discarded.
Merges two batches into a single batch where result of the left-hand-side batch is returned while
result of right-hand-side is discarded. Useful when right-hand-side returns Unit
.
NOTE: errors for right-hand-side are NOT discarded, use ignoreFailures on it if that's your intention.
This is a symbolic alias for map2.
This is a symbolic alias for map2. The symbol (along with *> and <*) is inspired by its Haskell equivalent.
Ensures that every keyed command in this batch is prepended with ASKING
special command.
Ensures that every keyed command in this batch is prepended with ASKING
special command.
This is necessary only when manually handling Redis Cluster redirections.
Returns a batch which invokes the same commands as this batch but atomically.
Returns a batch which invokes the same commands as this batch but atomically.
If this batch is already atomic then it's returned unchanged. Otherwise, it's wrapped into a Redis
transaction (MULTI
-EXEC
block).
Empty batches, single-command batches and transactions are atomic by themselves and therefore are returned
unchanged.
Merges two batches into one.
Merges two batches into one. Provided function is applied on results of the batches being merged to obtain
result of the merged batch. map2
is the fundamental primitive for composing multiple batches into one.
Transforms this batch into a RedisOp.
Transforms this batch into a RedisOp.
Wraps this batch into a Redis transaction, i.e.
Wraps this batch into a Redis transaction, i.e. ensures that it's executed inside a MULTI
-EXEC
block.
NOTE: If you simply want to ensure atomicity, use atomic.
NOTE: You can safely nest transactions, the driver will make sure that
there are no nested MULTI
-EXEC
blocks on the wire.