When a player that isn't whitelisted tries to join it gives a CompletionException error and logs to file
[17:59:01 INFO]: UUID of player lariatt_ is 38c02cdd-3fe3-4dd3-a74a-33f560dab1b3
[17:59:01 INFO]: Disconnecting lariatt_ (/XXX.XXX.XXX.XXX:57216): You are not whitelisted on this server!
[17:59:01 ERROR]: [Plan] Ran into CompletionException - logged to plugins/Plan/logs/CompletionException-44e2972033.txt
[17:59:01 ERROR]: [Plan] (INCLUDE CONTENTS OF THE FILE IN ANY REPORTS)
[17:59:01 ERROR]: [Plan] What to do: Report this, duplicate key exists in SQL.
[17:59:01 INFO]: lariatt_ (/XXX.XXX.XXX.XXX:57216) lost connection: You are not whitelisted on this server!
44e2972033 - Last occurred: 2026-05-07 Occurrences: 7
---- Context 5 ----
Plan v5.6 build 2965
ShreddedPaper 1.21.11-DEV-8910c3c (MC: 1.21.11)
Server v1.21.11-R0.1-SNAPSHOT
Report this, duplicate key exists in SQL.
Transaction: class com.djrapitops.plan.storage.database.transactions.events.StoreAllowlistBounceTransaction
DB State: OPEN - fatal: false
Error code: 1062
INSERT INTO plan_allowlist_bounce (uuid,name,server_id,times,last_bounce) VALUES (?,?,(SELECT plan_servers.id FROM plan_servers WHERE plan_servers.uuid=? LIMIT 1),?,?)
Duplicate key
---- Context 4 ----
Plan v5.6 build 2965
ShreddedPaper 1.21.11-DEV-8910c3c (MC: 1.21.11)
Server v1.21.11-R0.1-SNAPSHOT
Report this, duplicate key exists in SQL.
Transaction: class com.djrapitops.plan.storage.database.transactions.events.StoreAllowlistBounceTransaction
DB State: OPEN - fatal: false
Error code: 1062
INSERT INTO plan_allowlist_bounce (uuid,name,server_id,times,last_bounce) VALUES (?,?,(SELECT plan_servers.id FROM plan_servers WHERE plan_servers.uuid=? LIMIT 1),?,?)
Duplicate key
---- Context 3 ----
Plan v5.6 build 2965
ShreddedPaper 1.21.11-DEV-8910c3c (MC: 1.21.11)
Server v1.21.11-R0.1-SNAPSHOT
Report this, duplicate key exists in SQL.
Transaction: class com.djrapitops.plan.storage.database.transactions.events.StoreAllowlistBounceTransaction
DB State: OPEN - fatal: false
Error code: 1062
INSERT INTO plan_allowlist_bounce (uuid,name,server_id,times,last_bounce) VALUES (?,?,(SELECT plan_servers.id FROM plan_servers WHERE plan_servers.uuid=? LIMIT 1),?,?)
Duplicate key
---- Context 2 ----
Plan v5.6 build 2965
ShreddedPaper 1.21.11-DEV-8910c3c (MC: 1.21.11)
Server v1.21.11-R0.1-SNAPSHOT
Report this, duplicate key exists in SQL.
Transaction: class com.djrapitops.plan.storage.database.transactions.events.StoreAllowlistBounceTransaction
DB State: OPEN - fatal: false
Error code: 1062
INSERT INTO plan_allowlist_bounce (uuid,name,server_id,times,last_bounce) VALUES (?,?,(SELECT plan_servers.id FROM plan_servers WHERE plan_servers.uuid=? LIMIT 1),?,?)
Duplicate key
---- Context 1 ----
Plan v5.6 build 2965
ShreddedPaper 1.21.11-DEV-8910c3c (MC: 1.21.11)
Server v1.21.11-R0.1-SNAPSHOT
Report this, duplicate key exists in SQL.
Transaction: class com.djrapitops.plan.storage.database.transactions.events.StoreAllowlistBounceTransaction
DB State: OPEN - fatal: false
Error code: 1062
INSERT INTO plan_allowlist_bounce (uuid,name,server_id,times,last_bounce) VALUES (?,?,(SELECT plan_servers.id FROM plan_servers WHERE plan_servers.uuid=? LIMIT 1),?,?)
Duplicate key
---- Stacktrace ----
java.util.concurrent.CompletionException: com.djrapitops.plan.exceptions.database.DBOpException: SQL Failure: Duplicate entry '1d514072-6a8a-49a1-9793-775b9a06f3bd' for key 'uuid'
java.base/java.util.concurrent.CompletableFuture.wrapInCompletionException(CompletableFuture.java:323)
java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:359)
java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:364)
java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1791)
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
java.base/java.lang.Thread.run(Thread.java:1474)
Caused by:
com.djrapitops.plan.exceptions.database.DBOpException: SQL Failure: Duplicate entry '1d514072-6a8a-49a1-9793-775b9a06f3bd' for key 'uuid'
Plan-5.6-build-2965.jar//com.djrapitops.plan.exceptions.database.DBOpException.forCause(DBOpException.java:153)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.transactions.ExecStatement.execute(ExecStatement.java:57)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.transactions.Transaction.execute(Transaction.java:223)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.transactions.events.StoreAllowlistBounceTransaction.performOperations(StoreAllowlistBounceTransaction.java:60)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.transactions.Transaction.executeTransaction(Transaction.java:89)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.SQLDB.lambda$executeTransaction$4(SQLDB.java:374)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.DBAccessLock.performDatabaseOperation(DBAccessLock.java:78)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.DBAccessLock.performDatabaseOperation(DBAccessLock.java:56)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.SQLDB.lambda$executeTransaction$5(SQLDB.java:373)
java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1789)
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
java.base/java.lang.Thread.run(Thread.java:1474)
Caused by:
java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '1d514072-6a8a-49a1-9793-775b9a06f3bd' for key 'uuid'
com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:109)
com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:114)
com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:990)
com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1168)
com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1103)
com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate(ClientPreparedStatement.java:1450)
com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate(ClientPreparedStatement.java:1086)
Plan-5.6-build-2965.jar//plan.com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61)
Plan-5.6-build-2965.jar//plan.com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.transactions.ExecStatement.callExecute(ExecStatement.java:70)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.transactions.ExecStatement.execute(ExecStatement.java:64)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.transactions.ExecStatement.execute(ExecStatement.java:55)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.transactions.Transaction.execute(Transaction.java:223)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.transactions.events.StoreAllowlistBounceTransaction.performOperations(StoreAllowlistBounceTransaction.java:60)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.transactions.Transaction.executeTransaction(Transaction.java:89)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.SQLDB.lambda$executeTransaction$4(SQLDB.java:374)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.DBAccessLock.performDatabaseOperation(DBAccessLock.java:78)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.DBAccessLock.performDatabaseOperation(DBAccessLock.java:56)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.SQLDB.lambda$executeTransaction$5(SQLDB.java:373)
java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1789)
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
java.base/java.lang.Thread.run(Thread.java:1474)
java.base/java.lang.Thread.getStackTrace(Thread.java:2193)
Plan-5.6-build-2965.jar//com.djrapitops.plan.storage.database.SQLDB.executeTransaction(SQLDB.java:360)
Plan-5.6-build-2965.jar//com.djrapitops.plan.gathering.listeners.bukkit.PlayerOnlineListener.onPlayerLogin(PlayerOnlineListener.java:94)
co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80)
org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:71)
io.papermc.paper.plugin.manager.PaperEventManager.lambda$callEvent$0(PaperEventManager.java:60)
io.multipaper.shreddedpaper.threading.SynchronousPluginExecution.execute(SynchronousPluginExecution.java:49)
io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:59)
io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131)
org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:628)
org.bukkit.event.Event.callEvent(Event.java:46)
io.papermc.paper.connection.HorriblePlayerLoginEventHack.execute(HorriblePlayerLoginEventHack.java:89)
org.bukkit.craftbukkit.event.CraftEventFactory.handleLoginResult(CraftEventFactory.java:2312)
net.minecraft.server.network.ServerLoginPacketListenerImpl.verifyLoginAndFinishConnectionSetup(ServerLoginPacketListenerImpl.java:209)
net.minecraft.server.network.ServerLoginPacketListenerImpl.tick(ServerLoginPacketListenerImpl.java:97)
net.minecraft.network.Connection.tick(Connection.java:598)
net.minecraft.server.network.ServerConnectionListener.tick(ServerConnectionListener.java:230)
net.minecraft.server.MinecraftServer.tickConnection(MinecraftServer.java:1953)
net.minecraft.server.dedicated.DedicatedServer.tickConnection(DedicatedServer.java:597)
net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1857)
net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1662)
net.minecraft.server.dedicated.DedicatedServer.tickServer(DedicatedServer.java:475)
net.minecraft.server.MinecraftServer.processPacketsAndTick(MinecraftServer.java:1718)
net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1384)
net.minecraft.server.MinecraftServer.lambda$spin$2(MinecraftServer.java:398)
java.base/java.lang.Thread.run(Thread.java:1474)
This could be linked to us running a semi-niche server software (Shreddedpaper). Even if so it's likely that this could be an error on folia as well. It doesn't seem to be causing any other issues.
Describe the issue
When a player that isn't whitelisted tries to join it gives a CompletionException error and logs to file
Exceptions & Other Logs
Plugin versions
Plan version 5.6 build 2965
Additional information
This could be linked to us running a semi-niche server software (Shreddedpaper). Even if so it's likely that this could be an error on folia as well. It doesn't seem to be causing any other issues.