Commit Graph

1282 Commits

Author SHA1 Message Date
Mark Paluch
ea74bd65be Fix result sorting using Redis repository query methods.
We now correctly apply sorting when calling a repository query method with a Sort parameter or when defining the sort order as part of the method name.

Original Pull Request: #2087
2021-06-18 12:59:21 +02:00
Mark Paluch
f901746b06 Polishing.
Add since tags, equals/hashCode/toString methods. Reformat code.

Original pull request: #2060.
Closes #2055
2021-06-17 14:40:23 +02:00
yanam
a2f2d9051a Add support for BitFieldSubCommands that generate multiple bit operations using non-chaining methods.
Original pull request: #2060.
Closes #2055
2021-06-17 14:40:23 +02:00
Mark Paluch
26d1cf63e3 Polishing.
Inline valueFromLoader method. Refine tests to not rely on the number of runtime CPU cores.

See #2079
Original pull request: #2082.
2021-06-15 09:30:56 +02:00
Piotr Mionskowski
5e1c2be082 Synchronize RedisCache.get(…) with ValueLoader only if value is absent.
RedisCache.get(…) now optimistically fetches the cache value before entering cache-wide synchronization. The previous version synchronized all calls to `get(key, valueLoader)`.

Closes #2079
Original pull request: #2082.
2021-06-15 09:30:56 +02:00
Mark Paluch
479b4a2647 Fix XREVRANGE using Lettuce to use the same connection.
XREVRANGE using Lettuce uses now the same connection instead of pinning execution to a dedicated connection.

Closes #2078
2021-06-09 15:54:03 +02:00
Mark Paluch
9dff05cfa9 Prepare 2.5.1 (2021.0.1).
See #2034
2021-05-14 12:23:22 +02:00
Mark Paluch
0506d94584 Updated changelog.
See #2034
2021-05-14 12:23:18 +02:00
Mark Paluch
9baf3b0b1e Updated changelog.
See #2033
2021-05-14 12:06:44 +02:00
Mark Paluch
8641ab1091 Guard non-initialized RedisConnectionFactory.getConnection() with IllegalStateException.
Obtaining a Connection from RedisConnectionFactory and its reactive variant is now guarded by IllegalStateException that is thrown if the connection factory was not yet initialized.

Previously, connections could be obtained where configuration was partially applied.

Closes #2057
2021-05-12 11:56:22 +02:00
Mark Paluch
6c88127305 Prepare 2.5 GA (2021.0.0).
See #2023
2021-04-14 14:18:22 +02:00
Mark Paluch
550248f482 Updated changelog.
See #2023
2021-04-14 14:18:19 +02:00
Mark Paluch
b198ac0a64 Updated changelog.
See #2024
2021-04-14 11:43:34 +02:00
Mark Paluch
b369191819 Updated changelog.
See #2004
2021-04-14 11:17:43 +02:00
Mark Paluch
6d719a4292 Add test to verify RedisCache.clear().
See #2028.
2021-04-13 11:22:21 +02:00
ooooo-youwillsee
4360c3a8b8 Update reference documentation to set RedisConnectionFactory on RedisTemplate.
Closes #2030
2021-04-13 10:07:35 +02:00
Mark Paluch
19e719ec00 Updated changelog.
See #2005
2021-03-31 18:30:45 +02:00
Mark Paluch
d33712bc1c Prepare 2.5 RC1 (2021.0.0).
See #2003
2021-03-31 17:04:35 +02:00
Mark Paluch
da4d0a589a Updated changelog.
See #2003
2021-03-31 17:04:33 +02:00
Mark Paluch
284dfbcca6 Adapt to changes in Jedis 3.6.
Closes #2017
Original Pull Request: #2021
2021-03-31 15:00:06 +02:00
Mark Paluch
4a2abdcd9b Provide TLS support for Sentinel clients in Jedis driver.
Closes #1560
Original Pull Request: #2021
2021-03-31 14:59:46 +02:00
Mark Paluch
0f6a152295 Polishing.
Reorder methods. Move rewriteConfig directly implemented on connection to DefaultedRedisConnection respective DefaultedRedisClusterConnection.

Add overload to run config rewrite on individual cluster nodes. Add tests. Add since tags and update Javadoc.

See #1992
Original pull request: #2012.
2021-03-29 11:40:51 +02:00
Manousos Mathioudakis
2d56eaf3c6 Add support for CONFIG REWRITE.
Signed-off-by: Manousos Mathioudakis <manoumathioudakis@yahoo.gr>

Closes #1992
Original pull request: #2012.
2021-03-29 11:40:50 +02:00
Christoph Strobl
3a1fbe1cf7 Remove limit(long) from Cursor and hint users to stream().limit(...)
Original Pull Request: #2014
2021-03-25 13:11:53 +01:00
Mark Paluch
b0dd3cda6c Deprecate Cursor.open().
This method should not be called from code consuming the Cursor.

See: #1575
Original Pull Request: #2014
2021-03-25 12:49:10 +01:00
Mark Paluch
0061d6c7af Polishing.
Let Cursor extend CloseableCursor. Refine nullability annotations and align nullability behavior in tests with actual nullability usage.

See: #1575
Original Pull Request: #2014
2021-03-25 12:48:09 +01:00
Mark Paluch
b7f2d68d73 Add limit option to ScanCursor.
ScanCursor can be now limited to a maximum number of elements to be retrieved.

Closes: #1575
Original Pull Request: #2014
2021-03-25 12:47:21 +01:00
Christoph Strobl
daa99f8698 Simplify return path for reading collections.
Reduce the nesting level of byte[] checks and processing.

Original Pull Request: #2015
2021-03-25 09:22:46 +01:00
Mark Paluch
4e9f4bc4ad Polishing.
Move off deprecated StringUtils.isEmpty method. Fix type reference using the component type and not the component's component type. Add early return for null values.

Original Pull Request: #2015
2021-03-25 09:22:35 +01:00
Mark Paluch
d5ba93cc25 Pass-thru byte arrays in entities into Bucket.
MappingRedisConverter now accepts data for byte arrays as single property to avoid flattening out binary data into a collection form. We still accept data in a collection form to retain compatibility.

Closes: #1981
Original Pull Request: #2015
2021-03-25 09:22:00 +01:00
Christoph Strobl
b2349fd1ea Guard tests when no cluster available.
See #1711
Original Pull Request: #1977
2021-03-24 13:49:51 +01:00
Christoph Strobl
7207305637 Update state check error message to include failure hint.
Original Pull Request: #2013
2021-03-24 13:49:01 +01:00
Mark Paluch
73650cf943 Return AbstractRedisClient from LettuceConnectionFactory.
Closes #1745
Original Pull Request: #2013
2021-03-24 13:48:49 +01:00
Mark Paluch
503d639c5d Make RedisConnectionProxy public.
RedisConnectionProxy is now public so it can be used properly for Java proxy creation across different class loaders. Previously, creating a Java proxy from a different class loader failed because of visibility/access restrictions.

Closes #2016
2021-03-24 09:33:02 +01:00
Mark Paluch
9dd9b3244c Prepare 2.5 M5 (2021.0.0).
See #1974
2021-03-17 11:17:27 +01:00
Mark Paluch
e1f38e3809 Updated changelog.
See #1974
2021-03-17 11:17:25 +01:00
Mark Paluch
b9770659f6 Updated changelog.
See #1976
2021-03-17 11:03:40 +01:00
Mark Paluch
930c412370 Updated changelog.
See #1972
2021-03-17 10:35:13 +01:00
Mark Paluch
9b39c09389 Polishing.
Add support for Jedis Streams using JedisCluster. Add fromMany(…) for non-pipelined usage to JedisInvoker.

Reformat code, add author tags. Extract Jedis-specific stream type converters to StreamConverters. Properly convert StreamEntry and StreamEntryID into list/map. Update tests.

See #1711
Original pull request: #1977.
2021-03-16 09:45:06 +01:00
dengliming
a31c739ab6 Add support to Redis Streams using Jedis.
Closes #1711
Original pull request: #1977.
2021-03-16 09:44:53 +01:00
Mark Paluch
654b2284ed Polishing.
Add integration tests for Lettuce Cluster zRevRangeByLex. Fix converter usage in tests.

See #1998
2021-03-15 17:30:59 +01:00
Mark Paluch
4dd5a7a4fa Fix JedisClusterZSetCommands.reverseRangeByLex(…) parameter order.
max/min parameter are now used in the correct order.

Closes #1998
2021-03-15 17:30:59 +01:00
Christoph Strobl
04dae74c8b Update JavaDoc.
Original Pull Request: #1996
2021-03-15 08:31:09 +01:00
Mark Paluch
e496c19021 Consider target type when calling getAllOf(…).
We now accept a type hint when calling getAllOf(…) to avoid materializing null instances when the actual type hint cannot resolve to an entity.

Closes #1995
Original Pull Request: #1996
2021-03-15 08:30:55 +01:00
Mark Paluch
535ee68d95 Move off deprecated API.
Original Pull Request: #1991
2021-03-08 10:11:17 +01:00
Mark Paluch
b5ea3f6826 Accept cluster nodes without hostname.
RedisNode can now be constructed using an empty hostname. This can happen when a node is in failover state. RedisNode exposes hasValidHost() to check whether the node has a valid hostname.

Also, introduce copy constructor to avoid mutations caused by the builder.

Closes #1985
Original Pull Request: #1991
2021-03-08 10:09:56 +01:00
Mark Paluch
b8eabee2b0 Polishing.
Tweak Javadoc. Extract comparator as constant. Remove Map copying for toString usage.

Closes #1982
2021-03-03 11:15:03 +01:00
Stefan Berger
bfc720f30d Improved performance of Bucket.extract().
By using a TreeMap, entries starting with a certain prefix can be found
much faster than before.

Closes #1982
2021-03-03 11:14:52 +01:00
dengliming
cf2cce8fbf Use Jedis SetParams.KEEPTTL instead of injecting byte[] args.
Closes #1986.
2021-03-03 10:19:07 +01:00
Mark Paluch
7cbeca1f48 Polishing.
Remove ZAddArgs.empty() method to avoid confusion with none() method. Use NONE constant only internally. Adapt calling methods.

Reformat code.

See #1794
Original pull request: #1988.
2021-03-03 10:11:13 +01:00