From aacfe0c8a8786e1662ecaf79631cfae2ca946229 Mon Sep 17 00:00:00 2001 From: Michele Rastelli Date: Mon, 9 May 2022 14:29:28 +0200 Subject: [PATCH] fixed IndexOutOfBoundsException in RoundRobinHostHandler --- .../com/arangodb/internal/net/RoundRobinHostHandler.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/arangodb/internal/net/RoundRobinHostHandler.java b/src/main/java/com/arangodb/internal/net/RoundRobinHostHandler.java index b79c85c14..e7cc650ea 100644 --- a/src/main/java/com/arangodb/internal/net/RoundRobinHostHandler.java +++ b/src/main/java/com/arangodb/internal/net/RoundRobinHostHandler.java @@ -32,7 +32,7 @@ public class RoundRobinHostHandler implements HostHandler { private final HostResolver resolver; - private int current; + private long current; private int fails; private final List lastFailExceptions; private Host currentHost; @@ -43,7 +43,7 @@ public RoundRobinHostHandler(final HostResolver resolver) { this.resolver = resolver; lastFailExceptions = new ArrayList<>(); hosts = resolver.resolve(true, false); - current = 0; + current = 0L; reset(); } @@ -59,7 +59,7 @@ public Host get(final HostHandle hostHandle, AccessType accessType) { throw e; } - final int index = (current++) % size; + final int index = (int) ((current++) % size); Host host = hosts.getHostsList().get(index); if (hostHandle != null) { final HostDescription hostDescription = hostHandle.getHost();