Introduced Jackson2JsonRedisSerializer and added optional dependency for Jackson2 core/databind (fasterxml) library.
Added additional parameterised test cases. Needed to increase the max active connections limit for the connection pools used in RedisMapTests.
Update to Jedis 2.2.1 and Implement newly supported Operations.
Handle removed BinaryTransaction class.
Handle some Jedis return types changed from String to bytes.
Handle some Jedis arg types changed from int to long by removing casting.
Remove ignored tests for issues fixed in Jedis 2.2.1
Throw UnsupportedOpException on multi-arg bitOp NOT
Ensure consistent results across all drivers when bitOp is called with NOT and more than one arg.
Updated dependency of XStream since Spring framework 4.0 requires a newer version.
Spring 4 added another method to get cached object to the Cache interface. The method has been added to RedisCache in order to provide compatibility, while calling get internally and casting values to required type.
DATAREDIS-231
- Do not stop the container on Exception, as it
will attempt unnecessary unsubscribe
- Retry connect indefinitely until container is
stopped
- Ensure connection is closed after subscription
failure
- Set listening to false if SubscriptionTask errors
out for any reason
- Change default recovery interval to 5 seconds
DATAREDIS-153
- Return conn to pool as broken resource if NPE
occurs (for example if a null key or value is given),
preventing later flush of OutputStream with incomplete
data
- Workaround Jedis issue in pub/sub tests that prevents
subscribing with a pooled connection
- Continue not using pool in conn tests, as they
are too brittle with potentially unclosed pipelines,
unexecuted txs, etc
DATAREDIS-195
- Make expire and expireAt use pExpire and pExpireAt,
falling back to expire and expireAt if not available
(driver does not support or using Redis 2.4)
- Add new getExpire method that will return mills
if requested, using pTTL if supported
Can't specify a resource location for script as a
String in Spring app context, as it would get
injected as script text instead. Switched to property
injection for clarity.
DATAREDIS-227
Add "enableDefaultSerializer" property on
RedisTemplate. If false, serializers can be null
and no serialization will be performed if they are.
DATAREDIS-228
- RedisTemplate.exec() will now deserialize raw results
using RT serializers, where applicable. This behavior
is disabled if convertPipelineAndTxResults is set
to false on the ConnectionFactory
- Add new RedisTemplate.exec(RedisSerializer) method
that will deserialize all results using the provided
serializer.
- Change StringRedisConn to not deserialize pipelined/
exec results by default
- Remove option to enable/disable deserialize of
results in StringRedisTemplate. In most cases, the
same StringRedisConn is not used b/w ops in a pipeline
or tx, so this is rarely useful
and strip individual op results
DATAREDIS-223
- closePipeline now returns Lists of exec results instead of flattening results
- Temp revert conversion of exec results for
consistency