I'm new to Redis and while reading its transaction on the official site, I'm so confused at one thing.
Either all of the commands or none are processed, so a Redis transaction is also atomic.
even when a command fails, all the other commands in the queue are processed –
So it opposes to one another, doesn't it?
It's about a different things. Redis have pipelines - client can send many commands to redis at once. Inside of pipeline batch can be transactions.
And when transaction fails all commands inside a transaction will be discarded, but any pipelined (queued) commands after EXEC command will be executed anyway.
For more information see http://redis.io/topics/pipelining and http://redis.io/topics/transactions.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With