1.15.2 Great tps drop (lastloginapi related)
Drc-DEV opened this issue ยท 8 comments
This appears in console, TPS drop to 1-2 sometimes the server crashes, sometimes keeps going
Enabled debug, I'll send the logs as soon as they gather
# / = = = = = = = = = = = = = = = = \
# | STORAGE SETTINGS |
# \ = = = = = = = = = = = = = = = = /
storage:
# What type of storage the plugin should use?
# Database storage types:
# => mysql | [Remote] Save the data into a MySQL database
# => sqlite | [File] Save the data into a SQLite database (default)
database-storage-type: sqlite
storage-settings:
# General settings of SQL databases
general-sql-settings:
varchar-size: 255
upgrade:
save-old-table: true
old-table-suffix: "_backup"
tables:
players: "lastloginapi_players"
versions: "lastloginapi_versions"
# SQLite settings
sqlite:
database-file: "database.db"
# MySQL settings
mysql:
address: "localhost"
port: "3306"
database: "database"
username: "username"
password: "password"
# Size of the connection pool
pool-size: 10
# Lifetime of each connection, in milliseconds (Default: 30 minutes = 1800000ms)
connection-lifetime: 1800000
# Property used to alert when the connection is not using a valid SSL certificate
use-ssl: false
# Charset used by tables
charset: "utf8"
[LastLoginAPI] Trying to initialize database 'SQLite'
>.... [03:53:59 WARN]: java.util.concurrent.CompletionException: java.lang.NullPointerException
>.... [03:53:59 WARN]: at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:273)
>.... [03:53:59 WARN]: at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:280)
>.... [03:53:59 WARN]: at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1643)
>.... [03:53:59 WARN]: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>.... [03:53:59 WARN]: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>.... [03:53:59 WARN]: at java.lang.Thread.run(Thread.java:748)
>.... [03:53:59 WARN]: Caused by: java.lang.NullPointerException
>.... [03:53:59 WARN]: at com.google.common.io.ByteStreams.toByteArray(ByteStreams.java:165)
>.... [03:53:59 WARN]: at com.alessiodp.lastloginapi.common.storage.sql.SQLTable.parseSchema(SQLTable.java:84)
>.... [03:53:59 WARN]: at com.alessiodp.lastloginapi.common.storage.sql.SQLTable.setupTables(SQLTable.java:37)
>.... [03:53:59 WARN]: at com.alessiodp.lastloginapi.common.storage.dispatchers.LLSQLDispatcher.init(LLSQLDispatcher.java:57)
>.... [03:53:59 WARN]: at com.alessiodp.lastloginapi.common.storage.LLDatabaseManager.initializeDispatcher(LLDatabaseManager.java:37)
>.... [03:53:59 WARN]: at com.alessiodp.lastloginapi.core.common.storage.DatabaseManager.reload(DatabaseManager.java:47)
>.... [03:53:59 WARN]: at com.alessiodp.lastloginapi.common.LastLoginPlugin.reloadConfiguration(LastLoginPlugin.java:78)
>.... [03:53:59 WARN]: at com.alessiodp.lastloginapi.common.commands.sub.CommandReload.onCommand(CommandReload.java:42)
>.... [03:53:59 WARN]: at com.alessiodp.lastloginapi.core.common.commands.utils.CommandUtils.lambda$executeCommand$0(CommandUtils.java:40)
>.... [03:53:59 WARN]: at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1640)
>.... [03:53:59 WARN]: ... 3 more
Seems like player requests are made multiple times for the same uuids:
This has been happening a lot lately. Can you make it so LastLoginAPI is just a soft dependency? I'd rather have less functionality than have an unstable server.
Sorry but it is not possible for Parties. Thanks to it Parties is able to handle offline players.
Can you send me the log of LLAPI with debug log enabled (or the entire server log) + the config.yml of LLAPI. (I need to read storage settings, you can hide the password)
I am working on an update, can you contact me via Discord or something else so I can send to you an update jar?
I am not able to replicate the bug but I made some changes to see what is going on :)