diff --git a/Plugins/Mineplex.Core/src/mineplex/core/portal/PortalRepository.java b/Plugins/Mineplex.Core/src/mineplex/core/portal/PortalRepository.java index 43f2ff35c..986ac287c 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/portal/PortalRepository.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/portal/PortalRepository.java @@ -14,6 +14,7 @@ import redis.clients.jedis.JedisPoolConfig; import redis.clients.jedis.Pipeline; import redis.clients.jedis.Response; import redis.clients.jedis.Transaction; +import redis.clients.jedis.exceptions.JedisConnectionException; public class PortalRepository { @@ -64,9 +65,18 @@ public class PortalRepository serverTransfers.add(serverTransfer); } } + catch (JedisConnectionException exception) + { + exception.printStackTrace(); + _jedisPool.returnBrokenResource(jedis); + jedis = null; + } finally { - _jedisPool.returnResource(jedis); + if (jedis != null) + { + _jedisPool.returnResource(jedis); + } } return serverTransfers; @@ -91,9 +101,18 @@ public class PortalRepository transaction.set(dataKey, serializedTransfer); transaction.exec(); } + catch (JedisConnectionException exception) + { + exception.printStackTrace(); + _jedisPool.returnBrokenResource(jedis); + jedis = null; + } finally { - _jedisPool.returnResource(jedis); + if (jedis != null) + { + _jedisPool.returnResource(jedis); + } } } @@ -124,9 +143,18 @@ public class PortalRepository removedTransfer = true; } } + catch (JedisConnectionException exception) + { + exception.printStackTrace(); + _jedisPool.returnBrokenResource(jedis); + jedis = null; + } finally { - _jedisPool.returnResource(jedis); + if (jedis != null) + { + _jedisPool.returnResource(jedis); + } } return removedTransfer;