181 Commits

Author SHA1 Message Date
Jennifer Hickey
8a32aea92d Ignore intermittently failing test until fixed
Should be fixed in DATAREDIS-108
2013-08-01 11:46:29 -07:00
Jennifer Hickey
c565842986 Revert "Add temporary test failure diagnostic"
This reverts commit 32bb0b8791.
2013-08-01 10:05:44 -07:00
Jennifer Hickey
32bb0b8791 Add temporary test failure diagnostic 2013-07-30 10:29:46 -07:00
Jennifer Hickey
d258cab22c Fix NPE on SRP sort with alpha not set
DATAREDIS-230
2013-07-29 22:04:42 -07:00
Jennifer Hickey
a063904c54 Fix Jedis conns not returning to pool on failed select
DATAREDIS-213
2013-07-28 20:49:36 -07:00
Jennifer Hickey
352620d054 Remove 5 second wait starting MsgListenerContainer
with no listeners

DATAREDIS-207
2013-07-26 13:59:10 -04:00
Jennifer Hickey
dd8bc2eaaa Fix NPE on deserialize of Tuple values in tx/pipeline
DATAREDIS-229
2013-07-24 17:54:43 -07:00
Jennifer Hickey
83a5683477 Fix Lettuce setBit and setRange executing twice in pipeline
DATAREDIS-224
2013-07-18 15:35:25 -07:00
Jennifer Hickey
3244981a00 Fix StringRedisConnection not passed to callbacks
in StringTemplate.execute()

DATAREDIS-222
2013-07-16 13:41:15 -07:00
Jennifer Hickey
7b406f9d46 Fix SRP test timing issue 2013-07-15 20:06:02 -07:00
Jennifer Hickey
83eed6707f Add connection integration tests 2013-07-15 19:47:58 -07:00
Jennifer Hickey
a8890116cb Fix RJC integration tests 2013-07-15 18:04:22 -07:00
Jennifer Hickey
a18a8d4c7e Fix SRP exception on select in transaction
DATAREDIS-220
2013-07-15 17:40:50 -07:00
Jennifer Hickey
992421031a Fix NPEs on Jedis closePipeline/exec after move
DATAREDIS-218
2013-07-15 14:18:02 -07:00
Jennifer Hickey
5c31e73cbf Support null sortParams in Lettuce and SRP sort
DATAREDIS-217
2013-07-15 13:39:42 -07:00
Jennifer Hickey
058ed249fb Fix IllegalMonitorStateException in RedisCache
DATAREDIS-214
2013-07-11 11:49:13 -07:00
Jennifer Hickey
98c7cf6d7e Upgrade to Lettuce 2.3.3
DATAREDIS-204
2013-06-30 12:40:35 -07:00
Jennifer Hickey
cc21f02f49 Return null from SRP exec if watched value modified
DATAREDIS-168
2013-06-13 22:20:23 -07:00
Jennifer Hickey
9250063acf Upgrade to SRP 0.6
DATAREDIS-186

- Handle a few method signature changes to varargs

- Handle possibility of exec() throwing Exceptions
if ErrorReply received in Redis 2.6
2013-06-13 14:48:22 -07:00
Greg Turnquist
49dc960ab2 Add alternate constructor to MessageListenerAdapter
As a convenience when configuring with Java, added another constructor
call that allows setting the delegate and the default listener method
in one line of code.

```java
	public MessageListenerAdapter(Object delegate, String defaultListenerMethod) {
		this(delegate);
		setDefaultListenerMethod(defaultListenerMethod);
	}
```

This supports configuring a POJO-based listener with a single step:

```java
	@Test
	public void testCustomMethodWithAlternateConstructor() throws Exception {
		MessageListenerAdapter adapter = new MessageListenerAdapter(target, "customMethod");
		adapter.afterPropertiesSet();

		adapter.onMessage(STRING_MSG, null);

		verify(target).customMethod(PAYLOAD);
	}
```

A pure Java configuration bean can now look like this:
```java
	 @Bean
	 MessageListenerAdapter listenerAdapter(Receiver receiver) {
		 return new new MessageListenerAdapter(receiver, "pojoMethod");
	 }
	 @Bean
	 Receiver receiver() {
		 return new Receiver();
	 }
```
No longer do we have to A) assign the adapter to a variable and B) call
setDefaultListenerMethod, slimming down pure POJO configuration with pure
Java.
2013-05-31 11:16:31 -04:00
Jennifer Hickey
7c8dafce67 Redis timeouts should not be converted to 0
DATAREDIS-176

Only convert timeouts in Redis commands to 0 sec if
the value to convert is 0, otherwise round up to 1
2013-05-30 11:05:03 -07:00
Jennifer Hickey
db7b07788f Fix Lettuce compareAndSet
DATAREDIS-122

- exec() now returns null if value modified by other thread

- Use same connection for watch/unwatch and txs
2013-05-28 13:55:53 -07:00
Jennifer Hickey
39b83cea88 Fix NPE in Lettuce sort 2013-04-17 17:37:39 -07:00
Jennifer Hickey
0c9e8f5054 Fix corrupt subscription connections return to pool
with Redis 2.6

Redis 2.6 responds to unsubscribe requests even if
not subscribed. This results in unread data on the
InputStream on Subscription close if extra 
unsubscribe requests are issued. This causes 
problems if connection is reused 
(as in the case of Jedis pool).

- Only unsubscribe on Subscription close if still
subscribed

-  Use dedicated connection for RJC subscriptions,
as RJC makes extra unsubscribe calls on subscriber
close
2013-04-17 10:03:09 -07:00
Jennifer Hickey
c7555dddff Avoid NPE on LettuceConnectionFactory destroy 2013-04-16 20:14:49 -07:00
Jennifer Hickey
a41c433c97 Move common test functionality to helper classes 2013-04-16 20:14:05 -07:00
Jennifer Hickey
7c96b80e54 Make LettuceConnectionFactory thread-safe 2013-04-15 14:27:28 -07:00
Jennifer Hickey
3d4b3cfd32 Fix tests for Redis 2.6 2013-04-12 20:15:35 -07:00
Jennifer Hickey
d565786fef Fix SubscriptionConnectionTests timing issues 2013-04-12 20:14:51 -07:00
Jennifer Hickey
7d485d6463 Upgrade to SRP 0.5
DATAREDIS-132, DATAREDIS-130, DATAREDIS-152

- Upgrade to fix broken config_get in SRP 0.2

- Fix syntax errors in sort methods

- Fix syntax errors in zRange/zRevRange methods 
with offset and count
2013-04-12 11:01:18 -07:00
Jennifer Hickey
aaa28495be Fix SRP exec not returning results of commands
executed in the tx

DATAREDIS-123

- Close pipeline on exec if not explicitly
opened by user and return results of closePipeline,
not result of exec command

- Close pipeline on discard if not explicitly
opened by user
2013-04-11 15:19:32 -07:00
Jennifer Hickey
7813a13f7a Add option to disable Lettuce connection sharing 2013-04-10 17:34:29 -07:00
Jennifer Hickey
0a702bf4af Share native connection between LettuceConnections
to minimize socket usage

DATAREDIS-126
2013-04-10 15:09:11 -07:00
Jennifer Hickey
f4f9f06356 Fix SRP zRevRangeByScore incorrect parameter ordering
DATAREDIS-167
2013-04-09 17:29:53 -07:00
Jennifer Hickey
f6c44dba78 Fix Lettuce and RJC zRevRangeByScore incorrect parameter ordering
DATAREDIS-167

- Fix min/max parameter ordering

- Fix Lettuce NPEs during transactions

- Fix LettuceConnection not passing offset/count to zRevRangeByScoreWithScores
2013-04-09 17:13:01 -07:00
Jennifer Hickey
a01db2b732 Add back synchronization to avoid corrupted subscription input/output streams
- Prevent simultaneous write of subscribe/unsubscribe using the same Connection

- Fix test failure by re-initializing "done" state of SubscriptionTask between runs and adding waits
2013-04-04 23:29:42 -07:00
Jennifer Hickey
8fbabb7eae Add connection pool timeout to test 2013-04-04 20:56:23 -07:00
Jennifer Hickey
6f1739a681 Fix SubscriptionTask leaving open connections
DATAREDIS-124

- Close connection when SubscriptionTask is canceled and subscribing thread is unblocked

- Ensure non-blocking Lettuce and SRP only attempt
to close subscriptions if active

- Cleanup unecessary synchronization between
SubscriptionTask methods, now that connection is
no longer set to null

- Cleanup unused monitor notify when SubscriptionTask thread ends
2013-04-04 14:59:51 -07:00
Jennifer Hickey
2291edae67 Fix messages not received if listening on channel and pattern
DATAREDIS-165

Infinite loop in PatternSubscriptionTask causing
broken pipes and unreceived messages
2013-04-04 11:27:28 -07:00
Jennifer Hickey
78ad1a7cd4 Fix NPEs and incorrect results in several ops within a Lettuce transaction
DATAREDIS-164
2013-04-02 16:54:48 -07:00
Jennifer Hickey
5bd03c0aa5 Ignore irrelevant tests of blocking ops in transactions 2013-04-02 16:24:06 -07:00
Jennifer Hickey
d34cf27996 Fix Jedis and RJC continuing to use pipeline after closed
DATAREDIS-162, DATAREDIS-163
2013-04-02 15:49:56 -07:00
Jennifer Hickey
c5c3a81f42 Fix Jedis brPop executes twice in a transaction
DATAREDIS-159
2013-04-01 16:45:40 -07:00
Jennifer Hickey
4e13ac5b86 Fix Jedis persist does not execute as part of a transaction
DATAREDIS-160
2013-04-01 16:44:51 -07:00
Jennifer Hickey
634e8ccd72 Add tests for Jedis ops in transactions 2013-04-01 16:34:17 -07:00
Jennifer Hickey
8ec6b79e09 Fix JedisConnection execute does not return correct results
DATAREDIS-158
2013-04-01 16:08:38 -07:00
Jennifer Hickey
63a79a4ebb Fix SRP zCount/zInterStore methods executing synchronously when pipelining
DATAREDIS-142
2013-04-01 10:32:12 -07:00
Jennifer Hickey
90affe90cb Fix RJC ping executing synchronously while in pipeline 2013-04-01 10:28:45 -07:00
Jennifer Hickey
a421238403 Fix RJC zRevRangeWithScores returns incorrect results
DATAREDIS-137
2013-04-01 10:27:39 -07:00
Jennifer Hickey
97ebd34b2d Fix Lettuce zCount/zInterStore ops executing synchronously while in pipeline
DATAREDIS-140
2013-04-01 10:22:33 -07:00