Fixed - FlushListener catches causes ClassCastException. #5650

pull/5661/head
Nikita Koksharov 1 year ago
parent 8c94d175b5
commit 3c0b352772

@ -75,8 +75,7 @@ public class RedissonIdGenerator extends RedissonExpirable implements RIdGenerat
private final AtomicBoolean isWorkerActive = new AtomicBoolean(); private final AtomicBoolean isWorkerActive = new AtomicBoolean();
private void startIdRequestsHandle() { private void startIdRequestsHandle() {
if (!isWorkerActive.compareAndSet(false, true) if (!isWorkerActive.compareAndSet(false, true)) {
|| commandExecutor.getServiceManager().getExecutor().isShutdown()) {
return; return;
} }
@ -84,6 +83,10 @@ public class RedissonIdGenerator extends RedissonExpirable implements RIdGenerat
} }
private void handleIdRequests() { private void handleIdRequests() {
if (getServiceManager().isShuttingDown()) {
return;
}
if (queue.peek() == null) { if (queue.peek() == null) {
isWorkerActive.set(false); isWorkerActive.set(false);
if (!queue.isEmpty()) { if (!queue.isEmpty()) {

Loading…
Cancel
Save