README.md in redis-client-0.5.1 vs README.md in redis-client-0.6.0
- old
+ new
@@ -79,10 +79,11 @@
- `timeout`: The general timeout in seconds, default to `1.0`.
- `connect_timeout`: The connection timeout, takes precedence over the general timeout when connecting to the server.
- `read_timeout`: The read timeout, takes precedence over the general timeout when reading responses from the server.
- `write_timeout`: The write timeout, takes precedence over the general timeout when sending commands to the server.
- `reconnect_attempts`: Specify how many times the client should retry to send queries. Defaults to `0`. Makes sure to read the [reconnection section](#reconnection) before enabling it.
+- `protocol:` The version of the RESP protocol to use. Default to `3`.
### Sentinel support
The client is able to perform automatic failover by using [Redis Sentinel](https://redis.io/docs/manual/sentinel/).
@@ -205,18 +206,28 @@
redis.call("EXISTS", "counter") # => 1
redis.call("EXISTS", "counter") { |c| c > 0 } # => true
```
+### `*_v` methods
+
+In some it's more convenient to pass commands as arrays, for that `_v` versions of `call` methods are available.
+
+```ruby
+redis.call_v(["MGET"] + keys)
+redis.blocking_call_v(1, ["MGET"] + keys)
+redis.call_once_v(1, ["MGET"] + keys)
+```
+
### Blocking commands
For blocking commands such as `BRPOP`, a custom timeout duration can be passed as first argument of the `#blocking_call` method:
```
redis.blocking_call(timeout, "BRPOP", "key", 0)
```
-If `timeout` is reached, `#blocking_call` returns `nil`.
+If `timeout` is reached, `#blocking_call` raises `RedisClient::ReadTimeoutError` and doesn't retry regardless of the `reconnect_attempts` configuration.
`timeout` is expressed in seconds, you can pass `false` or `0` to mean no timeout.
### Scan commands