Commit Graph

595 Commits

Author SHA1 Message Date
Marcos Nils
6c8d7a5045 Add fail in case test doesn't throw any exception 2014-01-16 18:14:55 -03:00
Marcos Nils
46733c5d5a Add test for redis cluster max redirections and refactor JedisClusterCommand exception handling 2014-01-16 18:04:27 -03:00
Marcos Nils
2f9564e1d3 Variable refactor in JedisClusterTest 2014-01-14 21:20:33 -03:00
Marcos Nils
ccf93714e6 Fix ClusterCommand tearDown as gossip may take some time to send data to nodes 2014-01-14 17:58:21 -03:00
Marcos Nils
a09a682f09 Remove sysout prints from test 2014-01-14 16:00:22 -03:00
Marcos Nils
4ab8ea2ef7 Move Jedis CRC16 util as it's being used in the project.
Changed Makefile to cleanup redis cluster node configuration before running tests
Add cleanup to ClusterCommandTest.
2014-01-14 15:57:53 -03:00
Marcos Nils
33716e237c Add JedisClusterException file 2014-01-03 16:45:22 -03:00
Marcos Nils
dd0bbdaf91 Several changes have been added to this commit:
- Add asking to cluster commands
- Make jedis cluster return connection to original pool
- Add tests for MOVED and ASK cluster responses
- Refactor connection handler to recalculate connections based on slots

This commit makes the first usable version of Jedis along with Redis Cluster
2014-01-03 16:42:21 -03:00
Marcos Nils
1b26815799 Add functionality to recalculate slots when receiving MOVED response from node.
Add test to check for ASK responses (implementation missing)
2014-01-02 20:52:17 -03:00
Marcos Nils
b2d22e2060 Add slot based connection which routes requests according to key slot 2013-12-28 00:59:35 -03:00
Marcos Nils
9f767a0848 Add automatic discovery of cluster nodes 2013-12-27 23:09:44 -03:00
Marcos Nils
af72248c22 Implement all Jedis cluster commands and rename RedisSlot class 2013-12-20 16:56:29 -03:00
Marcos Nils
0bc27ac3a2 Refactor redis cluster connection handler and add JedisAskDataException handling 2013-12-20 15:28:32 -03:00
Marcos Nils
c008070045 Add JedisClusterCommand and updated code to use it respectively 2013-12-10 10:25:41 -03:00
Marcos Nils
0ebbf02c94 Change Moved cluster test and add confirmation for jedis cluster tests 2013-12-09 15:17:13 -03:00
Marcos Nils
726c3151b6 Add RedisSlot helper to calculate key slot 2013-12-08 01:08:14 -03:00
Marcos Nils
a8987ed865 Add first test to thorw MovedDataException when receiving MOVED from a cluster node 2013-12-07 17:55:17 -03:00
Jonathan Leibiusky
46966fb89f Prepare redis cluster for testing. The cluster will always be in a deterministic state to be able to reproduce -MOVED and -ASK 2013-12-02 19:27:12 -05:00
Jonathan Leibiusky
5b15d48803 Refactor to have interfaces.
Add cluster pipeline commands.
2013-12-02 14:34:05 -05:00
Jonathan Leibiusky
77d244b96a Add CLUSTER INFO, CLUSTER SETSLOT and CLUSTER GETKEYSINSLOT commands 2013-12-02 14:05:35 -05:00
Jonathan Leibiusky
dde278152f Add CLUSTER ADDSLOTS and CLUSTER DELSLOTS commands 2013-12-02 11:36:55 -05:00
Jonathan Leibiusky
403f2b292c Add CLUSTER MEET command 2013-12-02 10:01:19 -05:00
Jonathan Leibiusky
e7e2bfaedf Launch 3 nodes on ports 7379 to 7381 with cluster enabled.
Add command CLUSTER NODES
2013-12-02 09:53:40 -05:00
Jungtaek Lim
15891c4117 make jedis unit tests pass to Redis 2.8.1
* increase sentinel instance to test JedisSentinelTest
** clear() called, slave promoted to master (slave of no one), New
Sentinel force to restore it (demote) -> slave is not reusable
* ipv6 applied at Redis 2.8 -> localhost / 127.0.0.1 / ::1 is now all same

* Makefile: sleep some time for launch each sentinel (workaround to sentinel's issue)
** issue to sentinel leader vote: https://github.com/antirez/redis/issues/1419
*** sentinel may confused to vote with sentinels launched approximately same time
2013-12-02 22:11:52 +09:00
Jonathan Leibiusky
e10cdda5c7 Merge pull request #485 from tague/479_gradle_build_file_fix
Update Gradle build to use Apache Commons Pool 2.0.
2013-12-02 03:34:42 -08:00
Tague Griffith
3876bb04e3 Update Gradle build to use Apache Commons Pool 2.0. 2013-12-01 14:56:23 -08:00
Jonathan Leibiusky
fb02c2e3e2 Merge pull request #484 from mathieuboniface/patch-1
Updated maven dependency template Jedis version to  2.2.1 (latest)
2013-11-30 13:24:17 -08:00
Mathieu Boniface
7cd4dd4395 Updated maven dependency template Jedis version to 2.2.1 (latest) 2013-11-30 19:02:40 +01:00
Jonathan Leibiusky
6b5f080c7b Merge branch 'master' of github.com:xetorthio/jedis 2013-11-29 12:13:17 -05:00
Jonathan Leibiusky
18652b906b Merge branch 'speed-up-unit-test' of github.com:HeartSaVioR/jedis into upgrade_libs
Conflicts:
	src/test/java/redis/clients/jedis/tests/JedisPoolTest.java
	src/test/java/redis/clients/jedis/tests/JedisSentinelPoolTest.java
	src/test/java/redis/clients/jedis/tests/JedisSentinelTest.java
	src/test/java/redis/clients/jedis/tests/ShardedJedisPipelineTest.java
	src/test/java/redis/clients/jedis/tests/ShardedJedisPoolTest.java
	src/test/java/redis/clients/jedis/tests/benchmark/PoolBenchmark.java
	src/test/java/redis/clients/jedis/tests/commands/TransactionCommandsTest.java
2013-11-29 12:12:30 -05:00
Jonathan Leibiusky
bbb867781d upgrade to commons-pool 2 2013-11-28 08:13:57 -05:00
Jonathan Leibiusky
4543daf761 Merge pull request #474 from 50onRed/upgrade-dependencies
update gradle build file
2013-11-28 04:39:35 -08:00
Ivan Dyedov
c5a5e1419b upgrade dependencies in gradle build file (to match the ones in pom.xml) and update version of gradle wrapper 2013-11-04 18:16:15 -05:00
Jungtaek Lim
7e1a1a70b2 Speed up Sentinel related tests
* remove FIXME sleep codes for Sentinel related tests
** add functions for Sentinel tests (JedisSentinelTestUtil)
*** waitForSentinelRecognizeRedisReplication
*** waitForNewPromotedMaster
*** waitForSentinelsRecognizeEachOthers
**** TODO: there're no command for sentinel to list recognized sentinel
**** sleep 5.5 sec (sentinel pings to master every 5 sec)

* set HostAndPort class to public(no longer inner) class
** reason: We cannot know pool's current master if HostAndPort class is
private inner class / HostAndPort classes are duplicated (main/test)
** make getter method and parameterized constructor
*** set fields once, get anytime
2013-10-07 11:03:32 +09:00
Hisham Mardam-Bey
597366343d Fixed up eval(sha) tests to better check that the lua script ran properly. 2013-10-05 18:13:30 -04:00
Hisham Mardam-Bey
2ee7430518 Fixed issue #456 (evalsha loses args). 2013-10-05 17:33:25 -04:00
Eoin Coffey
796f80d9c0 Allow JedisPool to set a custom client name 2013-10-05 16:44:52 -04:00
Hisham Mardam-Bey
bc4d0ed0b6 Added test from pull request #429. 2013-10-05 16:43:00 -04:00
Jungtaek Lim
35a2dfd4c0 JedisSentinelPool now takes care of multi failover
* Now Pool.initPool() call closeInternalPool(), instead of destroy()
** calling destroy() in Pool.initPool() may have side effect, and JedisSentinelPool did
* modify unit test to test failover twice (needs +1 slave)
** modify configurations for additional slave
2013-09-26 10:48:17 +09:00
Jonathan Leibiusky
08e9b0c7e7 [maven-release-plugin] prepare for next development iteration 2013-09-15 15:47:05 -03:00
Jonathan Leibiusky
0defe548c9 [maven-release-plugin] prepare release jedis-2.2.1 2013-09-15 15:46:58 -03:00
Jonathan Leibiusky
1aee3b396d ooppsss... forgot password for sentinel 2013-09-15 15:41:44 -03:00
Jonathan Leibiusky
6c8d23fadf rollback sentinel1 configuration, since I broke a test 2013-09-15 15:37:01 -03:00
Jonathan Leibiusky
ad58f816b6 make sure that JedisSentinelPool use timeout, password and db 2013-09-15 15:33:22 -03:00
Jonathan Leibiusky
4d9090827f don't push binaries to github 2013-09-15 15:32:31 -03:00
Hisham Mardam-Bey
ebf1380eea Fixed bug where timeout, password, and database were not set in the
JedisSentinelPool overloaded contructor and hence not passed to JedisFactory.
2013-09-12 21:52:29 -04:00
Jonathan Leibiusky
d7d9f06bd1 [maven-release-plugin] prepare for next development iteration 2013-09-06 16:09:18 -03:00
Jonathan Leibiusky
2f26176e35 [maven-release-plugin] prepare release jedis-2.2.0 2013-09-06 16:09:11 -03:00
Jonathan Leibiusky
54d6c50e91 move back to snaptshot 2013-09-06 15:53:54 -03:00
Jonathan Leibiusky
dd3e5493a5 add target to release jedis in maven central 2013-09-06 15:52:59 -03:00