* Add normalizeVariadic to RPUSHX and LPUSHX commands
RPUSHX and LPUSHX commands were missing the setArguments method
with normalizeVariadic call, unlike their RPUSH and LPUSH counterparts.
This caused errors when passing values as a single array argument
(e.g. $client->rpushx('key', ['val1', 'val2'])).
Fixes#1504
* Update CHANGELOG.md with RPUSHX/LPUSHX variadic fix (#1633)
* Fix variadic arguments normalization for [L|R]PUSHX
---------
Co-authored-by: Till Krüss <tillkruss@users.noreply.github.com>
* Initial work on retries
* Added retry class and test coverage
* Added support for standalone and cluster
* Make TimeoutException instance of CommunicationException
* Added pipeline, trasnaction, replication support
* Fixed broken test
* Marked test as relay-incompatible
* Marked test as relay-incompatible
* Fixed analysis errors, added missing tests
* Codestyle fixes
* Fixed test
* Update README.md
* Update README.md
* Update README.md
* Updated README.md
* Refactor retry on read and write
* Added check for timeout value
* Updated README.md
* Fixed README.md
* Codestyle changes
* Added missing coverage
* Added missing test coverage
* Removed comments
* Added retry support for Relay connection (#1620)
* Added integration test case with mocked retry
* Changed client initialisation in tests
* Marked test as relay-incompatible
---------
Co-authored-by: Pavlo Yatsukhnenko <yatsukhnenko@users.noreply.github.com>
* Added basic structures and test coverage
* Added most of the test coverage
* Added more test coverage
* Codestyle fixes
* Fixed static analysis
* ANother static analysis fix
* Codestyle fixes
* Fixed version constraints
* Added missing annotations
* Use class context
* Added more test coverage
* Codestyle fixes
* Added experimental mentioning
* Retry SentinelReplication::retryCommandOnFailure on all classes with Throwable interface
* Retry SentinelReplication::retryCommandOnFailure on all classes with Throwable interface
* Fix coding style
* BITOP added operation validation
* Ensure that the arguments are not an empty list before doing operation check
* Updated changelog, fixed linter errors
* added test for the new bitop operations
* fixed liniting
* update requiresRedisVersion
---------
Co-authored-by: Vladyslav Vildanov <117659936+vladvildanov@users.noreply.github.com>
* implement XSETID command
* modify CHANGELOG.md
* split test to basic and extended version
---------
Co-authored-by: aleksanders <alexander.s@seranking.com>
* implement XCLAIM command
* modify CHANGELOG.md
* add empty line before return
* test xclaim with all available options
* review refactoring
* remove fast-track check for empty answer
---------
Co-authored-by: aleksanders <alexander.s@seranking.com>
* fix(sentinel-replication): Treat LOADING error responses as ConnectionException to allow retry mechanism to discard the current replica and switch to the next available one.
* fix(sentinel-replication): add changelog entries for LOADING response handling
* Update CHANGELOG.md
* Update CHANGELOG.md
---------
Co-authored-by: Mustafa AKBEL <mustafa.akbel@pusula.net.tr>
Co-authored-by: Till Krüss <tillkruss@users.noreply.github.com>
* Fix return type for ZCOUNT (#1546)
* Fix return type for ZCOUNT
ZCOUNT returns an `int`:
> Integer reply: the number of members in the specified score range.
* Update CHANGELOG.md
---------
Co-authored-by: Till Krüss <tillkruss@users.noreply.github.com>
* Added changelog entry
---------
Co-authored-by: Tim Düsterhus <timwolla@googlemail.com>
Co-authored-by: Till Krüss <tillkruss@users.noreply.github.com>