diff --git a/redisson/src/main/java/org/redisson/RedissonExecutorService.java b/redisson/src/main/java/org/redisson/RedissonExecutorService.java index 42f064a4b..68e2a57b6 100644 --- a/redisson/src/main/java/org/redisson/RedissonExecutorService.java +++ b/redisson/src/main/java/org/redisson/RedissonExecutorService.java @@ -172,7 +172,7 @@ public class RedissonExecutorService implements RScheduledExecutorService { tasksCounterName = objectName + ":counter"; tasksName = objectName + ":tasks"; statusName = objectName + ":status"; - terminationTopic = redisson.getTopic(objectName + ":termination-topic", codec); + terminationTopic = redisson.getTopic(objectName + ":termination-topic", LongCodec.INSTANCE); tasksRetryIntervalName = objectName + ":retry-interval"; schedulerChannelName = objectName + ":scheduler-channel"; @@ -539,15 +539,15 @@ public class RedissonExecutorService implements RScheduledExecutorService { } final CountDownLatch latch = new CountDownLatch(1); - MessageListener listener = new MessageListener() { + MessageListener listener = new MessageListener() { @Override - public void onMessage(CharSequence channel, Integer msg) { + public void onMessage(CharSequence channel, Long msg) { if (msg == TERMINATED_STATE) { latch.countDown(); } } }; - int listenerId = terminationTopic.addListener(Integer.class, listener); + int listenerId = terminationTopic.addListener(Long.class, listener); if (isTerminated()) { terminationTopic.removeListener(listenerId); diff --git a/redisson/src/main/java/org/redisson/config/Config.java b/redisson/src/main/java/org/redisson/config/Config.java index fa648c725..af8e505b0 100644 --- a/redisson/src/main/java/org/redisson/config/Config.java +++ b/redisson/src/main/java/org/redisson/config/Config.java @@ -24,6 +24,7 @@ import java.util.concurrent.ExecutorService; import org.redisson.client.codec.Codec; import org.redisson.codec.DefaultReferenceCodecProvider; +import org.redisson.codec.FstCodec; import org.redisson.codec.JsonJacksonCodec; import org.redisson.codec.ReferenceCodecProvider; import org.redisson.connection.ConnectionManager; @@ -111,6 +112,7 @@ public class Config { if (oldConf.getCodec() == null) { // use it by default oldConf.setCodec(new JsonJacksonCodec()); +// oldConf.setCodec(new FstCodec()); } setUseScriptCache(oldConf.isUseScriptCache()); diff --git a/redisson/src/main/java/org/redisson/connection/SentinelConnectionManager.java b/redisson/src/main/java/org/redisson/connection/SentinelConnectionManager.java index 0a4a72f7c..158d9576d 100755 --- a/redisson/src/main/java/org/redisson/connection/SentinelConnectionManager.java +++ b/redisson/src/main/java/org/redisson/connection/SentinelConnectionManager.java @@ -135,6 +135,7 @@ public class SentinelConnectionManager extends MasterSlaveConnectionManager { String port = map.get("port"); String host = createAddress(ip, port); + log.info("sentinel: {} added", host); URI sentinelAddr = URIBuilder.create(host); RFuture future = registerSentinel(sentinelAddr, this.config); connectionFutures.add(future); diff --git a/redisson/src/main/java/org/redisson/spring/session/RedissonSessionRepository.java b/redisson/src/main/java/org/redisson/spring/session/RedissonSessionRepository.java index 91e7852d5..d22c7d6c7 100644 --- a/redisson/src/main/java/org/redisson/spring/session/RedissonSessionRepository.java +++ b/redisson/src/main/java/org/redisson/spring/session/RedissonSessionRepository.java @@ -259,7 +259,7 @@ public class RedissonSessionRepository implements FindByIndexNameSessionReposito } String id = body.split(":")[1]; - RedissonSession session = new RedissonSession(id); + RedissonSession session = new RedissonSession(keyPrefix, id); if (session.load()) { session.clearPrincipal(); } @@ -270,7 +270,7 @@ public class RedissonSessionRepository implements FindByIndexNameSessionReposito } String id = body.split(":")[1]; - RedissonSession session = new RedissonSession(id); + RedissonSession session = new RedissonSession(keyPrefix, id); if (session.load()) { session.clearPrincipal(); } @@ -306,7 +306,7 @@ public class RedissonSessionRepository implements FindByIndexNameSessionReposito @Override public RedissonSession findById(String id) { - RedissonSession session = new RedissonSession(id); + RedissonSession session = new RedissonSession(keyPrefix, id); if (!session.load() || session.isExpired()) { return null; } diff --git a/redisson/src/test/java/org/redisson/RedissonBucketTest.java b/redisson/src/test/java/org/redisson/RedissonBucketTest.java index e05bd296c..2691a4d87 100755 --- a/redisson/src/test/java/org/redisson/RedissonBucketTest.java +++ b/redisson/src/test/java/org/redisson/RedissonBucketTest.java @@ -21,7 +21,7 @@ public class RedissonBucketTest extends BaseTest { public void testSizeInMemory() { RBucket al = redisson.getBucket("test"); al.set(1234); - assertThat(al.sizeInMemory()).isEqualTo(49); + assertThat(al.sizeInMemory()).isEqualTo(55); } @Test diff --git a/redisson/src/test/java/org/redisson/RedissonFairLockTest.java b/redisson/src/test/java/org/redisson/RedissonFairLockTest.java index 4d3451272..e4562179e 100644 --- a/redisson/src/test/java/org/redisson/RedissonFairLockTest.java +++ b/redisson/src/test/java/org/redisson/RedissonFairLockTest.java @@ -19,6 +19,7 @@ import org.junit.Assert; import org.junit.Test; import org.redisson.api.RLock; import org.redisson.api.RScript; +import org.redisson.client.codec.LongCodec; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -96,7 +97,7 @@ public class RedissonFairLockTest extends BaseConcurrentTest { Assert.fail("Lock should have been unlocked by now"); } //check the timeout scores - they should all be within a reasonable amount of time from now - List queue = redisson.getScript().eval(RScript.Mode.READ_ONLY, + List queue = redisson.getScript(LongCodec.INSTANCE).eval(RScript.Mode.READ_ONLY, "local result = {}; " + "local timeouts = redis.call('zrange', KEYS[1], 0, 99, 'WITHSCORES'); " + "for i=1,#timeouts,2 do " + diff --git a/redisson/src/test/java/org/redisson/RedissonScriptTest.java b/redisson/src/test/java/org/redisson/RedissonScriptTest.java index 7ee416ceb..e6aa344d1 100644 --- a/redisson/src/test/java/org/redisson/RedissonScriptTest.java +++ b/redisson/src/test/java/org/redisson/RedissonScriptTest.java @@ -52,16 +52,16 @@ public class RedissonScriptTest extends BaseTest { @Test public void testEval() { - RScript script = redisson.getScript(); - List res = script.eval(RScript.Mode.READ_ONLY, "return {1,2,3.3333,'\"foo\"',nil,'bar'}", RScript.ReturnType.MULTI, Collections.emptyList()); - assertThat(res).containsExactly(1L, 2L, 3L, "foo"); + RScript script = redisson.getScript(StringCodec.INSTANCE); + List res = script.eval(RScript.Mode.READ_ONLY, "return {'1','2','3.3333','foo',nil,'bar'}", RScript.ReturnType.MULTI, Collections.emptyList()); + assertThat(res).containsExactly("1", "2", "3.3333", "foo"); } @Test public void testEvalAsync() { - RScript script = redisson.getScript(); - RFuture> res = script.evalAsync(RScript.Mode.READ_ONLY, "return {1,2,3.3333,'\"foo\"',nil,'bar'}", RScript.ReturnType.MULTI, Collections.emptyList()); - assertThat(res.awaitUninterruptibly().getNow()).containsExactly(1L, 2L, 3L, "foo"); + RScript script = redisson.getScript(StringCodec.INSTANCE); + RFuture> res = script.evalAsync(RScript.Mode.READ_ONLY, "return {'1','2','3.3333','foo',nil,'bar'}", RScript.ReturnType.MULTI, Collections.emptyList()); + assertThat(res.awaitUninterruptibly().getNow()).containsExactly("1", "2", "3.3333", "foo"); } @Test diff --git a/redisson/src/test/java/org/redisson/executor/CallableTask.java b/redisson/src/test/java/org/redisson/executor/CallableTask.java index aef9dc3ae..63c053cbc 100644 --- a/redisson/src/test/java/org/redisson/executor/CallableTask.java +++ b/redisson/src/test/java/org/redisson/executor/CallableTask.java @@ -1,8 +1,9 @@ package org.redisson.executor; +import java.io.Serializable; import java.util.concurrent.Callable; -public class CallableTask implements Callable { +public class CallableTask implements Callable, Serializable { public static final String RESULT = "callable"; diff --git a/redisson/src/test/java/org/redisson/executor/DelayedTask.java b/redisson/src/test/java/org/redisson/executor/DelayedTask.java index dd4ae4b08..b657ebe9f 100644 --- a/redisson/src/test/java/org/redisson/executor/DelayedTask.java +++ b/redisson/src/test/java/org/redisson/executor/DelayedTask.java @@ -1,12 +1,13 @@ package org.redisson.executor; +import java.io.Serializable; import java.util.concurrent.Callable; import org.redisson.api.RAtomicLong; import org.redisson.api.RedissonClient; import org.redisson.api.annotation.RInject; -public class DelayedTask implements Callable { +public class DelayedTask implements Callable, Serializable { @RInject private RedissonClient redisson; diff --git a/redisson/src/test/java/org/redisson/executor/IncrementCallableTask.java b/redisson/src/test/java/org/redisson/executor/IncrementCallableTask.java index 268c14eae..19e171e76 100644 --- a/redisson/src/test/java/org/redisson/executor/IncrementCallableTask.java +++ b/redisson/src/test/java/org/redisson/executor/IncrementCallableTask.java @@ -1,11 +1,12 @@ package org.redisson.executor; +import java.io.Serializable; import java.util.concurrent.Callable; import org.redisson.api.RedissonClient; import org.redisson.api.annotation.RInject; -public class IncrementCallableTask implements Callable { +public class IncrementCallableTask implements Callable, Serializable { private String counterName; diff --git a/redisson/src/test/java/org/redisson/executor/IncrementRunnableTask.java b/redisson/src/test/java/org/redisson/executor/IncrementRunnableTask.java index 2469b068e..6bfb213fc 100644 --- a/redisson/src/test/java/org/redisson/executor/IncrementRunnableTask.java +++ b/redisson/src/test/java/org/redisson/executor/IncrementRunnableTask.java @@ -1,9 +1,11 @@ package org.redisson.executor; +import java.io.Serializable; + import org.redisson.api.RedissonClient; import org.redisson.api.annotation.RInject; -public class IncrementRunnableTask implements Runnable { +public class IncrementRunnableTask implements Runnable, Serializable { private String counterName; diff --git a/redisson/src/test/java/org/redisson/executor/ParameterizedTask.java b/redisson/src/test/java/org/redisson/executor/ParameterizedTask.java index 80ff7ea53..01da1fc27 100644 --- a/redisson/src/test/java/org/redisson/executor/ParameterizedTask.java +++ b/redisson/src/test/java/org/redisson/executor/ParameterizedTask.java @@ -1,8 +1,9 @@ package org.redisson.executor; +import java.io.Serializable; import java.util.concurrent.Callable; -public class ParameterizedTask implements Callable { +public class ParameterizedTask implements Callable, Serializable { private String param; diff --git a/redisson/src/test/java/org/redisson/executor/RedissonExecutorServiceTest.java b/redisson/src/test/java/org/redisson/executor/RedissonExecutorServiceTest.java index 41961c4d6..b4141d5cd 100644 --- a/redisson/src/test/java/org/redisson/executor/RedissonExecutorServiceTest.java +++ b/redisson/src/test/java/org/redisson/executor/RedissonExecutorServiceTest.java @@ -4,6 +4,7 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.awaitility.Awaitility.await; import java.io.IOException; +import java.io.Serializable; import java.util.Arrays; import java.util.Collections; import java.util.List; @@ -515,7 +516,7 @@ public class RedissonExecutorServiceTest extends BaseTest { redisson.getExecutorService("test").submit(new TaskCallableClass()); } - public static class TaskStaticCallableClass implements Callable { + public static class TaskStaticCallableClass implements Callable, Serializable { @Override public String call() throws Exception { @@ -530,7 +531,7 @@ public class RedissonExecutorServiceTest extends BaseTest { assertThat(res).isEqualTo("123"); } - public class TaskRunnableClass implements Runnable { + public class TaskRunnableClass implements Runnable, Serializable { @Override public void run() { @@ -543,7 +544,7 @@ public class RedissonExecutorServiceTest extends BaseTest { redisson.getExecutorService("test").submit(new TaskRunnableClass()); } - public static class TaskStaticRunnableClass implements Runnable { + public static class TaskStaticRunnableClass implements Runnable, Serializable { @Override public void run() { diff --git a/redisson/src/test/java/org/redisson/executor/RunnableRedissonTask.java b/redisson/src/test/java/org/redisson/executor/RunnableRedissonTask.java index 998f87fbb..9c0c28b84 100644 --- a/redisson/src/test/java/org/redisson/executor/RunnableRedissonTask.java +++ b/redisson/src/test/java/org/redisson/executor/RunnableRedissonTask.java @@ -1,9 +1,11 @@ package org.redisson.executor; +import java.io.Serializable; + import org.redisson.api.RedissonClient; import org.redisson.api.annotation.RInject; -public class RunnableRedissonTask implements Runnable { +public class RunnableRedissonTask implements Runnable, Serializable { @RInject private RedissonClient redissonClient; diff --git a/redisson/src/test/java/org/redisson/executor/RunnableTask.java b/redisson/src/test/java/org/redisson/executor/RunnableTask.java index a15683e9b..f05b221a8 100644 --- a/redisson/src/test/java/org/redisson/executor/RunnableTask.java +++ b/redisson/src/test/java/org/redisson/executor/RunnableTask.java @@ -1,6 +1,8 @@ package org.redisson.executor; -public class RunnableTask implements Runnable { +import java.io.Serializable; + +public class RunnableTask implements Runnable, Serializable { @Override public void run() { diff --git a/redisson/src/test/java/org/redisson/executor/RunnableTask2.java b/redisson/src/test/java/org/redisson/executor/RunnableTask2.java index ceb0eb444..16a692161 100644 --- a/redisson/src/test/java/org/redisson/executor/RunnableTask2.java +++ b/redisson/src/test/java/org/redisson/executor/RunnableTask2.java @@ -2,7 +2,7 @@ package org.redisson.executor; import java.io.Serializable; -public class RunnableTask2 implements Runnable { +public class RunnableTask2 implements Runnable, Serializable { private static final long serialVersionUID = 2105094575950438867L; diff --git a/redisson/src/test/java/org/redisson/executor/ScheduledLongRunnableTask.java b/redisson/src/test/java/org/redisson/executor/ScheduledLongRunnableTask.java index 1f98f14c0..28b7bd6c5 100644 --- a/redisson/src/test/java/org/redisson/executor/ScheduledLongRunnableTask.java +++ b/redisson/src/test/java/org/redisson/executor/ScheduledLongRunnableTask.java @@ -1,9 +1,11 @@ package org.redisson.executor; +import java.io.Serializable; + import org.redisson.api.RedissonClient; import org.redisson.api.annotation.RInject; -public class ScheduledLongRunnableTask implements Runnable { +public class ScheduledLongRunnableTask implements Runnable, Serializable { @RInject private RedissonClient redisson;