Daniele Alessandri
|
fcecd2579a
|
Added "connection_timeout" and "read_write_timeout" as optional arguments for the ConnectionParameters class.
|
2009-12-30 10:25:06 +01:00 |
|
Daniele Alessandri
|
55c40afcd8
|
Bugfix: return an empty string instead of null when the data length of a bulk reply is 0.
|
2009-12-29 14:55:26 +01:00 |
|
Daniele Alessandri
|
abbc9108e0
|
Fixed another E_STRICT notice that was being raised when using a pipeline.
|
2009-12-27 11:42:18 +01:00 |
|
Daniele Alessandri
|
b757afe492
|
Removed a superfluous method call.
|
2009-12-27 10:57:23 +01:00 |
|
Daniele Alessandri
|
75a06019f8
|
Fixed E_STRICT notices that were being raised by PHP due to a slightly different method signature used for two command classes.
|
2009-12-27 10:53:29 +01:00 |
|
Daniele Alessandri
|
51710682c7
|
ZSetReverseRange now inherits from ZSetRange as the two commands share the same behaviour. This change allowed us to remove some code duplication.
|
2009-12-27 10:48:41 +01:00 |
|
Daniele Alessandri
|
f82d11a8db
|
Changed the name of Predis\Client::createCommandInstance into Predis\Client::createCommand.
|
2009-12-27 10:33:02 +01:00 |
|
Daniele Alessandri
|
6814845e3f
|
Removed a wrong type-check in Predis\Client::setupConnection that was breaking the initialization of a cluster of connections when using an array of URI strings as parameters.
|
2009-12-26 19:42:45 +01:00 |
|
Daniele Alessandri
|
e8a0f3f627
|
Fix for a warning emitted by PHP when passing an array of strings parameters to Predis\Client::create.
|
2009-12-26 19:39:18 +01:00 |
|
Daniele Alessandri
|
6e39491692
|
Changed the returned string used to hash a Connection instance when using a cluster of connections. IMPORTANT NOTE: if you are using a version of Predis older than this commit, then this change will surely have an impact on your existing partitioned data as it changes the distribution of server nodes over the ring.
|
2009-12-25 22:04:24 +01:00 |
|
Daniele Alessandri
|
6d43827af9
|
Merge branch 'server_compat'
Conflicts:
lib/Predis.php
|
2009-12-25 21:25:40 +01:00 |
|
Daniele Alessandri
|
8eb51ec0d1
|
Updated the test suite to work with the new parameters for Predis\Client.
|
2009-12-25 21:11:08 +01:00 |
|
Daniele Alessandri
|
47bb83bbb2
|
Type checking + minor fixes + more readable code for Predis\Client::__construct and Predis\Client::create.
|
2009-12-25 20:51:17 +01:00 |
|
Daniele Alessandri
|
e64333d77b
|
Complete rewrite of the client construction and initialization bits.
|
2009-12-25 19:54:12 +01:00 |
|
Daniele Alessandri
|
822a3e56e2
|
Implemented the "WITHSCORES" option for ZRANGE and ZREVRANGE.
|
2009-12-23 21:54:53 +01:00 |
|
Daniele Alessandri
|
d9b304f9e3
|
Merge branch 'cmd_zincrby'
|
2009-12-19 10:49:34 +01:00 |
|
Daniele Alessandri
|
d3a62d68bb
|
Fixed the return value of Predis\Commands\ZSetIncrementBy as it does not return a boolean value but the current score after the increment operation.
|
2009-12-19 10:45:19 +01:00 |
|
Daniele Alessandri
|
20e416306c
|
Added support for key tags: instead of hashing the full key, we hash only the portion enclosed within curly brackets.
|
2009-12-18 22:57:16 +01:00 |
|
Daniele Alessandri
|
3ccbff4277
|
The second parameter for RedisServerProfile::createCommandInstance is now optional.
|
2009-12-18 22:02:30 +01:00 |
|
Daniele Alessandri
|
6e76fbf660
|
Moved the default server profile class name to a private static variable of the Client class.
|
2009-12-18 21:59:00 +01:00 |
|
Daniele Alessandri
|
88cda9e52c
|
Added the new public method Client::setServerProfile.
|
2009-12-18 21:29:44 +01:00 |
|
Daniele Alessandri
|
876ac2ec7c
|
Renamed class RedisServerCompatibility to RedisServerProfile.
|
2009-12-18 21:24:19 +01:00 |
|
Daniele Alessandri
|
e57348720f
|
Just removed a bunch of unuseful comments...
|
2009-12-18 21:16:24 +01:00 |
|
Daniele Alessandri
|
f811877c87
|
More trivial changes for HashRing::add and HashRing::remove.
|
2009-12-18 21:08:42 +01:00 |
|
Daniele Alessandri
|
d3115e6259
|
Trivial changes in HashRing::getNodeKey.
|
2009-12-18 21:04:44 +01:00 |
|
Daniele Alessandri
|
ca7f3e294c
|
Removed the rather superfluous private method ConnectionCluster::getConnectionFromRing.
|
2009-12-18 20:48:04 +01:00 |
|
Daniele Alessandri
|
bcfa64f431
|
Moved the hash calculation for a command from ConnectionCluster to the command instance itself.
|
2009-12-18 20:43:35 +01:00 |
|
Daniele Alessandri
|
3428529be6
|
Client::executeCommandInternal must accept IConnection types! Stupid bugs are indeed stupid.
|
2009-12-16 00:23:55 +01:00 |
|
Daniele Alessandri
|
b1edc31af3
|
When using a ConnectionCluster (sharding data over multiple servers), disallow sending commands that cannot be hashed by a key argument.
|
2009-12-14 18:15:10 +01:00 |
|
Daniele Alessandri
|
344ec44059
|
Refactored Client::executeCommand and introduced the new method Client::executeCommandOnShards which is useful to execute commands on all the connections registered in a ConnectionCluster instance.
|
2009-12-14 18:02:54 +01:00 |
|
Daniele Alessandri
|
8d4958a516
|
The second parameter for Client::createCommandInstance is now optional.
|
2009-12-14 17:57:17 +01:00 |
|
Daniele Alessandri
|
b777daa535
|
Slightly improved the internals of Command::getArgument and Command::getArguments.
|
2009-12-14 17:54:11 +01:00 |
|
Daniele Alessandri
|
177120e1a2
|
The private method computeHash of ConnectionCluster is now a static method.
|
2009-12-14 17:47:10 +01:00 |
|
Daniele Alessandri
|
a84c9bdac7
|
ConnectionCluster now implements the IteratorAggregate interface, thus enabling iterations over the registered connections simply by using a foreach loop.
|
2009-12-14 17:43:30 +01:00 |
|
Daniele Alessandri
|
c7cd2b67e0
|
Same fix as commit 755c252 in master for the short alias of \Predis\Commands\Decrement
|
2009-12-04 21:09:38 +01:00 |
|
Daniele Alessandri
|
755c252fde
|
Fixed a small bug in which the short alias for \Predis\Commands\Decrement was wrongly set to 'incr' instead of 'decr' (thanks to Jeff lewwid{at}gmail.com for noticing). The test suite is flawed in this respect since it uses only the extended aliases for commands but the short ones are not checked for correctness.
|
2009-12-03 21:47:48 +01:00 |
|
Daniele Alessandri
|
cfcb635c24
|
Predis\Client now uses the new compatibility profiles, though it is still hardcoded which profile to load.
|
2009-11-29 13:38:04 +01:00 |
|
Daniele Alessandri
|
d0d51257c9
|
Added compatibility profiles for Redis server versions 1.0 and the upcoming 1.2.
|
2009-11-29 13:16:42 +01:00 |
|
Daniele Alessandri
|
a70c5b0800
|
Added the new abstract class 'RedisServerCompatibility'. Its subclassess will be used to define a set compatibility profiles for each version of the Redis server. The only drawback is that the selected compatibility profile will be shared among multiple connections when using client-side sharding.
|
2009-11-29 13:09:08 +01:00 |
|
Daniele Alessandri
|
c1fb041014
|
Merge branch 'pipeline'
Conflicts:
lib/Predis.php
|
2009-11-29 11:13:50 +01:00 |
|
Daniele Alessandri
|
d99b6e1213
|
Merge branch 'parameters'
|
2009-11-29 11:11:43 +01:00 |
|
Daniele Alessandri
|
8480019b2a
|
Removed leftovers from the old pipeline implementation.
|
2009-11-28 14:24:00 +01:00 |
|
Daniele Alessandri
|
45be8e6385
|
Reworked a bit the internals of Predis\Client::create().
|
2009-11-28 13:20:01 +01:00 |
|
Daniele Alessandri
|
6bd7ef9217
|
Made the constructor method of Predis\Client more flexible with the passed arguments.
|
2009-11-28 13:09:49 +01:00 |
|
Daniele Alessandri
|
bb81971d71
|
Fix for a possible notice message thrown by PHP when there is no query string in the URI used to create a ConnectionParameters instance.
|
2009-11-28 12:24:15 +01:00 |
|
Daniele Alessandri
|
904278f927
|
Refactored out in a new method of ConnectionParameters the code to get the value of a parameter or a default value if the same parameter is not set. This also fixes a few PHP notice messages.
|
2009-11-28 11:46:59 +01:00 |
|
Daniele Alessandri
|
0adcd39486
|
Pipelines can now be initialized and used even without an anonymous function block. This is also needed to get pipelining support backported to PHP 5.2.
|
2009-11-28 11:18:34 +01:00 |
|
Daniele Alessandri
|
f727c6aa69
|
Fixed a bug when reading large bulk replies from remote Redis instances
|
2009-11-21 18:24:59 +01:00 |
|
Daniele Alessandri
|
374070a2c1
|
Renamed the class ListPushTailPopFirst into ListPopLastPushHead (did the same for it registered alias), the former name was incorrect
|
2009-11-20 23:15:36 +01:00 |
|
Daniele Alessandri
|
af810d9613
|
Implemented ZINCRBY (Class: \Predis\Commands\ZSetIncrementBy)
|
2009-11-20 22:23:42 +01:00 |
|