From 354389f7323d1ea4de3f642b02d5698a0d259d5f Mon Sep 17 00:00:00 2001 From: Johno Crawford Date: Wed, 7 Feb 2018 11:27:59 +0100 Subject: [PATCH 1/2] Netty 4.1.21 + BOM import. --- pom.xml | 11 +++++++++++ redisson-all/pom.xml | 2 -- redisson/pom.xml | 8 -------- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/pom.xml b/pom.xml index 0a0fe6ceb..e292de56b 100644 --- a/pom.xml +++ b/pom.xml @@ -129,6 +129,17 @@ + + + + io.netty + netty-bom + 4.1.21.Final + pom + import + + + target diff --git a/redisson-all/pom.xml b/redisson-all/pom.xml index 6852e5928..bf33af98c 100644 --- a/redisson-all/pom.xml +++ b/redisson-all/pom.xml @@ -87,12 +87,10 @@ io.netty netty-transport-native-epoll linux-x86_64 - 4.1.20.Final io.netty netty-transport-native-kqueue - 4.1.20.Final de.ruedigermoeller diff --git a/redisson/pom.xml b/redisson/pom.xml index eff12fa28..c26b5c6f7 100644 --- a/redisson/pom.xml +++ b/redisson/pom.xml @@ -34,45 +34,37 @@ io.netty netty-transport-native-kqueue - 4.1.20.Final provided io.netty netty-transport-native-epoll - 4.1.20.Final provided io.netty netty-common - 4.1.20.Final io.netty netty-codec - 4.1.20.Final io.netty netty-buffer - 4.1.20.Final io.netty netty-transport - 4.1.20.Final io.netty netty-resolver-dns - 4.1.20.Final io.netty netty-handler - 4.1.20.Final From c5ec14acb5bfaa46a372101b070d13e60719a7cc Mon Sep 17 00:00:00 2001 From: Nikita Date: Wed, 7 Feb 2018 14:09:22 +0300 Subject: [PATCH 2/2] few fixes --- .../org/redisson/RedissonLocalCachedMap.java | 5 ++++ .../test/java/org/redisson/BaseMapTest.java | 27 +++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/redisson/src/main/java/org/redisson/RedissonLocalCachedMap.java b/redisson/src/main/java/org/redisson/RedissonLocalCachedMap.java index 1c71e7c07..2bd86a9e7 100644 --- a/redisson/src/main/java/org/redisson/RedissonLocalCachedMap.java +++ b/redisson/src/main/java/org/redisson/RedissonLocalCachedMap.java @@ -22,6 +22,7 @@ import java.util.AbstractMap; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; +import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; @@ -679,6 +680,10 @@ public class RedissonLocalCachedMap extends RedissonMap implements R @Override public RFuture> getAllAsync(Set keys) { + if (keys.isEmpty()) { + return newSucceededFuture(Collections.emptyMap()); + } + final Map result = new HashMap(); Set mapKeys = new HashSet(keys); for (Iterator iterator = mapKeys.iterator(); iterator.hasNext();) { diff --git a/redisson/src/test/java/org/redisson/BaseMapTest.java b/redisson/src/test/java/org/redisson/BaseMapTest.java index 4e98ada25..bb6cdd708 100644 --- a/redisson/src/test/java/org/redisson/BaseMapTest.java +++ b/redisson/src/test/java/org/redisson/BaseMapTest.java @@ -812,6 +812,33 @@ public abstract class BaseMapTest extends BaseTest { assertThat(filtered.entrySet()).containsExactlyElementsOf(expectedMap.entrySet()); } + @Test + public void testGetAllOrderPartially() { + RMap map = getMap("getAll"); + map.put(1, 100); + map.put(2, 200); + map.put(3, 300); + map.put(4, 400); + RMap map2 = getMap("getAll"); + map2.put(5, 500); + map2.put(6, 600); + map2.put(7, 700); + map2.put(8, 800); + + Map filtered = map.getAll(new HashSet(Arrays.asList(2, 3, 5, 1, 7, 8))); + + Map expectedMap = new LinkedHashMap(); + expectedMap.put(1, 100); + expectedMap.put(2, 200); + expectedMap.put(3, 300); + expectedMap.put(5, 500); + expectedMap.put(7, 700); + expectedMap.put(8, 800); + + assertThat(filtered.entrySet()).containsExactlyElementsOf(expectedMap.entrySet()); + } + + @Test public void testAddAndGet() throws InterruptedException { RMap map = getMap("getAll");