Connection Timeout Causes Sever Crash
DarkArc opened this issue ยท 1 comments
Description
There's a random crash after several hours that started happening after an update (I'll dig out the old version soon).
Reproduction Steps
Random, server sitting idle for a while.
Expected Behaviour
No crash.
Server Details
git-Paper-168 (MC: 1.18.1) (Implementing API version 1.18.1-R0.1-SNAPSHOT) (Git: dcca6cb)
LuckPerms Version
LuckPerms v5.3.89
Logs and Configs
[22:00:24 WARN]: [Vault] Stable Version: 1.7.3 is out! You are still running version: 1.7.2
[22:00:24 WARN]: [Vault] Update at: https://dev.bukkit.org/projects/vault
[02:05:42 INFO]: Stopping server
[02:05:42 WARN]: [me.lucko.luckperms.lib.hikari.pool.PoolBase] luckperms-hikari - Failed to validate connection me.lucko.luckperms.lib.mariadb.MariaDbConnection@14ce4416 ((conn=2502) Connection.setNetworkTimeout cannot be called on a closed connection). Possibly consider using a shorter maxLifetime value.
[02:05:42 WARN]: [me.lucko.luckperms.lib.hikari.pool.PoolBase] luckperms-hikari - Failed to validate connection me.lucko.luckperms.lib.mariadb.MariaDbConnection@7e2e90ab ((conn=2503) Connection.setNetworkTimeout cannot be called on a closed connection). Possibly consider using a shorter maxLifetime value.
[02:05:42 WARN]: [me.lucko.luckperms.lib.hikari.pool.PoolBase] luckperms-hikari - Failed to validate connection me.lucko.luckperms.lib.mariadb.MariaDbConnection@6057aaec ((conn=2505) Connection.setNetworkTimeout cannot be called on a closed connection). Possibly consider using a shorter maxLifetime value.
[02:05:42 WARN]: [me.lucko.luckperms.lib.hikari.pool.PoolBase] luckperms-hikari - Failed to validate connection me.lucko.luckperms.lib.mariadb.MariaDbConnection@65fbc04 ((conn=2507) Connection.setNetworkTimeout cannot be called on a closed connection). Possibly consider using a shorter maxLifetime value.
[02:05:42 WARN]: [me.lucko.luckperms.lib.hikari.pool.PoolBase] luckperms-hikari - Failed to validate connection me.lucko.luckperms.lib.mariadb.MariaDbConnection@31e327a4 ((conn=2508) Connection.setNetworkTimeout cannot be called on a closed connection). Possibly consider using a shorter maxLifetime value.
[02:05:42 WARN]: [me.lucko.luckperms.lib.hikari.pool.PoolBase] luckperms-hikari - Failed to validate connection me.lucko.luckperms.lib.mariadb.MariaDbConnection@3b4242fb ((conn=2509) Connection.setNetworkTimeout cannot be called on a closed connection). Possibly consider using a shorter maxLifetime value.
[02:05:42 WARN]: [me.lucko.luckperms.lib.hikari.pool.PoolBase] luckperms-hikari - Failed to validate connection me.lucko.luckperms.lib.mariadb.MariaDbConnection@669f8fb5 ((conn=2514) Connection.setNetworkTimeout cannot be called on a closed connection). Possibly consider using a shorter maxLifetime value.
[02:05:42 WARN]: [me.lucko.luckperms.lib.hikari.pool.PoolBase] luckperms-hikari - Failed to validate connection me.lucko.luckperms.lib.mariadb.MariaDbConnection@1d5bb0fe ((conn=2516) Connection.setNetworkTimeout cannot be called on a closed connection). Possibly consider using a shorter maxLifetime value.
[02:05:42 WARN]: [me.lucko.luckperms.lib.hikari.pool.PoolBase] luckperms-hikari - Failed to validate connection me.lucko.luckperms.lib.mariadb.MariaDbConnection@35ad7af6 ((conn=2517) Connection.setNetworkTimeout cannot be called on a closed connection). Possibly consider using a shorter maxLifetime value.
[02:05:42 WARN]: [me.lucko.luckperms.lib.hikari.pool.PoolBase] luckperms-hikari - Failed to validate connection me.lucko.luckperms.lib.mariadb.MariaDbConnection@1cd1a322 ((conn=2518) Connection.setNetworkTimeout cannot be called on a closed connection). Possibly consider using a shorter maxLifetime value.
[02:05:47 WARN]: java.sql.SQLTransientConnectionException: luckperms-hikari - Connection is not available, request timed out after 5000ms.
[02:05:47 WARN]: at me.lucko.luckperms.lib.hikari.pool.HikariPool.createTimeoutException(HikariPool.java:696)
[02:05:47 WARN]: at me.lucko.luckperms.lib.hikari.pool.HikariPool.getConnection(HikariPool.java:197)
[02:05:47 WARN]: at me.lucko.luckperms.lib.hikari.pool.HikariPool.getConnection(HikariPool.java:162)
[02:05:47 WARN]: at me.lucko.luckperms.lib.hikari.HikariDataSource.getConnection(HikariDataSource.java:100)
[02:05:47 WARN]: at me.lucko.luckperms.common.storage.implementation.sql.connection.hikari.HikariConnectionFactory.getConnection(HikariConnectionFactory.java:174)
[02:05:47 WARN]: at me.lucko.luckperms.common.messaging.sql.SqlMessenger.getConnection(SqlMessenger.java:85)
[02:05:47 WARN]: at me.lucko.luckperms.common.messaging.sql.AbstractSqlMessenger.pollMessages(AbstractSqlMessenger.java:115)
[02:05:47 WARN]: at me.lucko.luckperms.common.plugin.scheduler.AbstractJavaScheduler$ErrorReportingRunnable.run(AbstractJavaScheduler.java:124)
[02:05:47 WARN]: at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[02:05:47 WARN]: at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[02:05:47 WARN]: at java.base/java.lang.Thread.run(Thread.java:833)
[02:05:47 WARN]: Caused by: java.sql.SQLSyntaxErrorException: (conn=2518) Connection.setNetworkTimeout cannot be called on a closed connection
[02:05:47 WARN]: at me.lucko.luckperms.lib.mariadb.internal.util.exceptions.ExceptionFactory.createException(ExceptionFactory.java:62)
[02:05:47 WARN]: at me.lucko.luckperms.lib.mariadb.internal.util.exceptions.ExceptionFactory.create(ExceptionFactory.java:171)
[02:05:47 WARN]: at me.lucko.luckperms.lib.mariadb.MariaDbConnection.setNetworkTimeout(MariaDbConnection.java:1655)
[02:05:47 WARN]: at me.lucko.luckperms.lib.hikari.pool.PoolBase.setNetworkTimeout(PoolBase.java:566)
[02:05:47 WARN]: at me.lucko.luckperms.lib.hikari.pool.PoolBase.isConnectionAlive(PoolBase.java:173)
[02:05:47 WARN]: at me.lucko.luckperms.lib.hikari.pool.HikariPool.getConnection(HikariPool.java:186)
[02:05:47 WARN]: ... 9 more
[02:05:48 WARN]: Caused by: java.sql.SQLNonTransientConnectionException: Could not connect to address=(host=REDACTED)(port=REDACTED)(type=master) : Socket fail to connect to host:REDACTED, port:REDACTED. Connect timed out
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.internal.util.exceptions.ExceptionFactory.createException(ExceptionFactory.java:73)
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.internal.util.exceptions.ExceptionFactory.create(ExceptionFactory.java:192)
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.internal.protocol.AbstractConnectProtocol.connectWithoutProxy(AbstractConnectProtocol.java:1392)
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.internal.util.Utils.retrieveProxy(Utils.java:635)
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.MariaDbConnection.newConnection(MariaDbConnection.java:150)
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.MariaDbDataSource.getConnection(MariaDbDataSource.java:302)
[02:05:48 WARN]: ... 10 more
[02:05:48 WARN]: Caused by: java.sql.SQLNonTransientConnectionException: Socket fail to connect to host:REDACTED, port:REDACTED. Connect timed out
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.internal.util.exceptions.ExceptionFactory.createException(ExceptionFactory.java:73)
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.internal.util.exceptions.ExceptionFactory.create(ExceptionFactory.java:183)
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.internal.protocol.AbstractConnectProtocol.createSocket(AbstractConnectProtocol.java:255)
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.internal.protocol.AbstractConnectProtocol.createConnection(AbstractConnectProtocol.java:519)
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.internal.protocol.AbstractConnectProtocol.connectWithoutProxy(AbstractConnectProtocol.java:1387)
[02:05:48 WARN]: ... 13 more
[02:05:48 WARN]: Caused by: java.net.SocketTimeoutException: Connect timed out
[02:05:48 WARN]: at java.base/sun.nio.ch.NioSocketImpl.timedFinishConnect(NioSocketImpl.java:546)
[02:05:48 WARN]: at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:597)
[02:05:48 WARN]: at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327)
[02:05:48 WARN]: at java.base/java.net.Socket.connect(Socket.java:633)
[02:05:48 WARN]: at me.lucko.luckperms.lib.mariadb.internal.protocol.AbstractConnectProtocol.createSocket(AbstractConnectProtocol.java:250)
[02:05:48 WARN]: ... 15 more
<more of these>
Extra Details
Given the timing, and the server setup, this might be related to automatic rebooting. It's possible this occurs when the database shutsdown faster than the main server.
Given the timing, and the server setup, this might be related to automatic rebooting. It's possible this occurs when the database shutsdown faster than the main server.
Sounds plausible.
Seems to be a driver error, not sure what I can do in LP to fix (https://luckperms.net/wiki/Storage-system-errors)