1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Решено LoginPlus со временем перестаёт работать

Тема в разделе "Помощь", создана пользователем Dezzzix, 3 янв 2023.

Метки:
Статус темы:
Закрыта.
  1. Автор темы
    Dezzzix

    Dezzzix Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    Dezzzix
    Возникла такая проблема. Подключил плагин LoginPlus к б/д Mysql. Поначалу всё работает корректно, но проходит время и при заходе на сервер плагин ничего не даёт делать игроку, но и не даёт авторизироваться на сервере. При этом если отключить б/д, то проблема пропадает.
    Помогите кто чем сможет)
    Версия: 1.18.2
    Ядро: Purpur

    [04:16:44 WARN]: com.mysql.cj.jdbc.exceptions.CommunicationsException: The last packet successfully received from the server was 3,404,887 milliseconds ago. The last packet sent successfully to the server was 3,404,888 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
    [04:16:44 WARN]: at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174)
    [04:16:44 WARN]: at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64)
    [04:16:44 WARN]: at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953)
    [04:16:44 WARN]: at com.mysql.cj.jdbc.ClientPreparedStatement.executeQuery(ClientPreparedStatement.java:1009)
    [04:16:44 WARN]: at LoginPlus-3.2.1.jar//com.syntaxphoenix.loginplus.accounts.database.MysqlAccountDatabase.getAccount(MysqlAccountDatabase.java:72)
    [04:16:44 WARN]: at LoginPlus-3.2.1.jar//com.syntaxphoenix.loginplus.accounts.tasks.AccountLoadingThread.run(AccountLoadingThread.java:17)
    [04:16:44 WARN]: Caused by: com.mysql.cj.exceptions.CJCommunicationsException: The last packet successfully received from the server was 3,404,887 milliseconds ago. The last packet sent successfully to the server was 3,404,888 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
    [04:16:44 WARN]: at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    [04:16:44 WARN]: at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
    [04:16:44 WARN]: at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    [04:16:44 WARN]: at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
    [04:16:44 WARN]: at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
    [04:16:44 WARN]: at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)
    [04:16:44 WARN]: at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105)
    [04:16:44 WARN]: at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151)
    [04:16:44 WARN]: at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167)
    [04:16:44 WARN]: at com.mysql.cj.protocol.a.NativeProtocol.send(NativeProtocol.java:567)
    [04:16:44 WARN]: at com.mysql.cj.protocol.a.NativeProtocol.sendCommand(NativeProtocol.java:622)
    [04:16:44 WARN]: at com.mysql.cj.protocol.a.NativeProtocol.sendQueryPacket(NativeProtocol.java:987)
    [04:16:44 WARN]: at com.mysql.cj.NativeSession.execSQL(NativeSession.java:666)
    [04:16:44 WARN]: at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:930)
    [04:16:44 WARN]: ... 3 more
    [04:16:44 WARN]: Caused by: java.net.SocketException: Connection reset by peer
    [04:16:44 WARN]: at java.base/sun.nio.ch.NioSocketImpl.implWrite(NioSocketImpl.java:420)
    [04:16:44 WARN]: at java.base/sun.nio.ch.NioSocketImpl.write(NioSocketImpl.java:440)
    [04:16:44 WARN]: at java.base/sun.nio.ch.NioSocketImpl$2.write(NioSocketImpl.java:826)
    [04:16:44 WARN]: at java.base/java.net.Socket$SocketOutputStream.write(Socket.java:1035)
    [04:16:44 WARN]: at java.base/java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:81)
    [04:16:44 WARN]: at java.base/java.io.BufferedOutputStream.flush(BufferedOutputStream.java:142)
    [04:16:44 WARN]: at com.mysql.cj.protocol.a.SimplePacketSender.send(SimplePacketSender.java:55)
    [04:16:44 WARN]: at com.mysql.cj.protocol.a.TimeTrackingPacketSender.send(TimeTrackingPacketSender.java:50)
    [04:16:44 WARN]: at com.mysql.cj.protocol.a.NativeProtocol.send(NativeProtocol.java:558)
    [04:16:44 WARN]: ... 7 more
     
  2. Dymeth

    Dymeth Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    Это происходит из-за того, что плагин долго не делает никаких запросов к БД. В итоге база закрывает соединение с собой, а плагин не переподключается.

    Добавь к параметрам подключения к бд вот это:
    autoReconnect=true
    Если отдельного поля в конфиге нет, то можно попробовать добавить в название базы данных:
    myDatabase?autoReconnect=true
    Но тоже не факт, что сработает.

    Есть и альтернативное решение этой проблемы, но я бы не рекомендовал его использовать. Если интересно - переводи текст ошибки:
    The last packet sent successfully to the server was 3,404,888 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.

    Но вообще плагин ведёт себя косячно. Рекомендую как минимум зарепортить это разработчику, а как максимум перейти на другой плагин
     
  3. Автор темы
    Dezzzix

    Dezzzix Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    Dezzzix
    Благодарю, репорт написал, с проблемой что-нибудь сделаю.
     
Статус темы:
Закрыта.

Поделиться этой страницей