Commit Graph

274 Commits

Author SHA1 Message Date
Daniele Alessandri adb489b4d3 Internal optimizations for the Predis\PubSubContext class. 2010-06-29 14:39:24 +02:00
Daniele Alessandri 5cf10ddbfa Add support for variable arguments in Predis\Client::pipeline(). 2010-06-26 12:49:57 +02:00
Daniele Alessandri ac2b718387 Handle aborted MULTI/EXEC transactions. 2010-06-12 10:52:45 +02:00
Daniele Alessandri 89e46912a2 Add support for variable arguments in Predis\Client::multiExec(). 2010-06-12 10:40:28 +02:00
Daniele Alessandri 200d864df3 Parse WATCH and UNWATCH replies as boolean values. 2010-06-12 10:12:07 +02:00
Daniele Alessandri 35b8588dc4 Check for the capabilities of the passed client instance when initializing a \Predis\PubSubContext instance. 2010-06-12 10:06:13 +02:00
Daniele Alessandri 371a7ad69b Less code duplication please. 2010-06-12 09:59:20 +02:00
Daniele Alessandri 5ae476ee16 Check for the capabilities of the passed client instance when initializing a \Predis\MultiExecBlock instance. 2010-06-12 09:52:32 +02:00
Daniele Alessandri f4f19ace0a Adopt more consistent behaviours for \Predis\MultiExecBlock. 2010-06-12 09:27:59 +02:00
Daniele Alessandri 50092d1421 Start adding support for WATCH/UNWATCH to \Predis\MultiExecBlock. 2010-06-12 08:57:42 +02:00
Daniele Alessandri 5287bb2387 New commands: WATCH and UNWATCH (Redis v2.2-dev). 2010-06-12 08:16:00 +02:00
Daniele Alessandri dd07c12402 Clean up leftovers. 2010-06-09 19:10:10 +02:00
Daniele Alessandri 42aa8333fc Slight optimization for multibulk replies. 2010-06-09 19:06:04 +02:00
Daniele Alessandri 25ac5c3ca4 Make Predis\Command::getArguments() a public method. 2010-06-09 19:04:31 +02:00
Daniele Alessandri 0e69438c0b Remove dots at the end of exception messages. 2010-05-23 09:08:55 +02:00
Daniele Alessandri 761e3a2527 Add an optional argument to MultiBulkResponseIterator::sync() to specify if the synchronization of an iterable multibulk response should be performed by consuming the rest of the reply or by closing the underlying connection. 2010-05-23 09:03:17 +02:00
Daniele Alessandri 316d3de10e Add static method Predis\RedisServerProfile::getDevelopment() to create a new instance of the 'dev' server profile. 2010-05-23 08:47:29 +02:00
Daniele Alessandri 5757318c9b Remove Predis\RedisServerProfile::compareWith() since it is useless and it is broken anyway. 2010-05-23 08:45:22 +02:00
Daniele Alessandri c781e91c2e Fix typos. 2010-05-22 16:10:17 +02:00
Daniele Alessandri 9f21cb12a2 Rename Predis\Distribution\IDistributionAlgorithm to Predis\Distribution\IDistributionStrategy. 2010-05-22 14:32:29 +02:00
Daniele Alessandri 69a0ed6d2f Suppress PHP notices in Predis\ConnectionCluster::getConnectionById() if the specified connection alias/index does not exist. 2010-05-22 12:27:14 +02:00
Daniele Alessandri 1f663f06be Implement Predis\Client::getClientFor() to initialize a new client from a single connection of a cluster by its alias. 2010-05-22 12:22:34 +02:00
Daniele Alessandri 5427bdcf22 Fast fail on exceptions different than Predis\ServerException or Predis\CommunicationException. 2010-05-22 11:56:45 +02:00
Daniele Alessandri 6c512784cb Merge branch 'pipeline_partial_failures'
Conflicts:
	lib/Predis.php
2010-05-22 11:34:57 +02:00
Daniele Alessandri e70b8ed38b Fix an old but harmless glitch in the serialization of inline commands with 0 arguments. 2010-05-21 21:10:34 +02:00
Daniele Alessandri 40d5b04278 Change the behavior of a test and add a reminder for a later in-depth examination of alternatives. 2010-05-21 21:02:09 +02:00
Daniele Alessandri f0d2551244 Fix a wrong namespace path in SafeExecutor::execute(). 2010-05-21 20:34:20 +02:00
Daniele Alessandri 4c8ecc02e5 Force disconnection in Predis\Pipeline\StandardExecutor when a Predis\ServerException is thrown to prevent protocol desynchronization between the client and the server. 2010-05-21 20:31:40 +02:00
Daniele Alessandri 84cb28e3ac Merge branch 'pubsub_experimental' 2010-05-18 12:25:10 +02:00
Daniele Alessandri 6e321a3530 Add the Predis\Client::pubSubContext() method to initialize a PubSub context from a client instance. 2010-05-18 12:23:53 +02:00
Daniele Alessandri 658272fe4b Fix wrong namespace path for EmptyRingException. 2010-05-18 11:46:42 +02:00
Daniele Alessandri fa6400dc22 Rename the \Predis\Utilities namespace to \Predis\Shared. 2010-05-17 20:05:10 +02:00
Daniele Alessandri 376dfe3451 Move IDistributionAlgorithm, HashRing and KetamaPureRing to the new Predis\Distribution namespace. 2010-05-17 19:59:54 +02:00
Daniele Alessandri a26932b3b5 Throw a more appropriate InvalidArgumentException when a non-callable argument is passed to instances of Predis\CommandPipeline and Predis\MultiExecBlock. 2010-05-17 19:46:28 +02:00
Daniele Alessandri eab70fb134 Implement the new EmptyRingException exception class. 2010-05-17 19:42:08 +02:00
Daniele Alessandri 5def6bebe3 Rename Predis\Pipeline\IExecutor to Predis\Pipeline\IPipelineExecutor. 2010-05-17 18:38:38 +02:00
Daniele Alessandri c01d185448 Bugfix: using the right variable in Predis\Pipeline\SafeExecutor makes things work. 2010-05-15 13:52:05 +02:00
Daniele Alessandri b3f340f830 Handling of partial failures and server errors in pipelines. 2010-05-15 12:30:33 +02:00
Daniele Alessandri f7bdd9d64b The default server profile for Predis\Client is now 2.0 (supports for Redis v2.0 out of the box). 2010-05-15 08:30:55 +02:00
Daniele Alessandri 4f0f2ca3eb ZUNION and ZINTER have been changed to ZUNIONSTORE and ZINTERSTORE for consistency (see Redis commit 5d373da). 2010-05-15 08:25:50 +02:00
Daniele Alessandri 7312dbe7fc Implemented the new \Predis\PubSubContext class. 2010-05-13 16:07:42 +02:00
Daniele Alessandri 27ebb1ddb5 New commands: PSUBSCRIBE and PUNSUBSCRIBE (Redis v2.0-dev). 2010-05-13 11:21:59 +02:00
Daniele Alessandri 0664bde7e9 Bugfix: replies to DEL commands must not be converted to a boolean response as DEL returns the number of keys removed. 2010-05-10 11:20:51 +02:00
Daniele Alessandri b623144881 Better support for options for ZUNION and ZINTER. 2010-04-27 21:49:03 +02:00
Daniele Alessandri c73918b991 Fix a couple of command aliases in the DEV profile. 2010-04-24 14:01:24 +02:00
Daniele Alessandri db6b8a3fc8 Parse response to HGETALL as an array of key => value. 2010-04-24 13:56:00 +02:00
Daniele Alessandri 513baa556c Process responses to HDEL as boolean values. 2010-04-24 13:09:18 +02:00
Daniele Alessandri de2d75e1d7 Process responses to HEXISTS as boolean values. 2010-04-24 12:47:09 +02:00
Daniele Alessandri 83ffdc8bc8 Various fixes for HMSET and HMSET. 2010-04-24 12:00:46 +02:00
Daniele Alessandri d79321ac8c Process responses to HSET as boolean values. 2010-04-24 11:26:35 +02:00