LuckPerms

LuckPerms

41.4k Downloads

MongoDB proccess killed by plugin

ITeMbI4 opened this issue ยท 5 comments

commented

Description

When plugin get interfaced with MongoDB local server under Windows, MongoDB process will be killed!
P.S. I don't have any other databases on MongoDB server yet, only LuckPerms uses it for now. I also run 2 servers in bungee network, plugin configs are identical!

me.lucko.luckperms.lib.mongodb.MongoSocketOpenException: Exception opening socket
        at me.lucko.luckperms.lib.mongodb.internal.connection.SocketStream.open(SocketStream.java:70) ~[?:?]
        at me.lucko.luckperms.lib.mongodb.internal.connection.InternalStreamConnection.open(InternalStreamConnection.java:128) ~[?:?]
        at me.lucko.luckperms.lib.mongodb.internal.connection.DefaultServerMonitor$ServerMonitorRunnable.run(DefaultServerMonitor.java:131) ~[?:?]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: java.net.ConnectException: Connection refused: no further information
        at sun.nio.ch.Net.pollConnect(Native Method) ~[?:?]
        at sun.nio.ch.Net.pollConnectNow(Net.java:672) ~[?:?]
        at sun.nio.ch.NioSocketImpl.timedFinishConnect(NioSocketImpl.java:542) ~[?:?]
        at sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:597) ~[?:?]
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327) ~[?:?]
        at java.net.Socket.connect(Socket.java:633) ~[?:?]
        at me.lucko.luckperms.lib.mongodb.internal.connection.SocketStreamHelper.initialize(SocketStreamHelper.java:64) ~[?:?]
        at me.lucko.luckperms.lib.mongodb.internal.connection.SocketStream.initializeSocket(SocketStream.java:79) ~[?:?]
        at me.lucko.luckperms.lib.mongodb.internal.connection.SocketStream.open(SocketStream.java:65) ~[?:?]
        ... 3 more```

### Reproduction Steps

1. You have licensed minecraft server
2. Enable MongoDB in settings and connect to local server (without credential)
2. Join server
3. Exit server
4. Wait approx. 1 min
5. Check windows processes

As result, `mongod.exe` process will be killed

### Expected Behaviour

Process will not be killed by plugin

### Server Details

GIT #108 Paper 1.18.1

### LuckPerms Version

v5.3.89

### Logs and Configs

Plugin config are identical on 2 servers:
https://gist.github.com/ITeMbI4/a92bd77a6343bb333e2daaf746af90f7

Server logs:
https://gist.github.com/ITeMbI4/8b0af9f150447d8b5d908a28076762cc


### Extra Details

_No response_
commented

@ITeMbI4
Is this still an issue or have you resolves the errors now?

commented

I don't get any errors now, thanks for help.

commented

Also get this error when server starts

[01:10:24 ERROR]: [LuckPerms] Exception occurred whilst enabling SQL messaging service
java.lang.IllegalStateException: Can't find a supported sql storage implementation
at me.lucko.luckperms.common.messaging.MessagingFactory$SqlMessengerProvider.obtain(MessagingFactory.java:201) ~[?:?]
at me.lucko.luckperms.common.messaging.LuckPermsMessagingService.(LuckPermsMessagingService.java:71) ~[?:?]
at me.lucko.luckperms.common.messaging.MessagingFactory.getServiceFor(MessagingFactory.java:121) ~[?:?]
at me.lucko.luckperms.bukkit.messaging.BukkitMessagingFactory.getServiceFor(BukkitMessagingFactory.java:64) ~[?:?]
at me.lucko.luckperms.common.messaging.MessagingFactory.getInstance(MessagingFactory.java:89) ~[?:?]
at me.lucko.luckperms.common.plugin.AbstractLuckPermsPlugin.enable(AbstractLuckPermsPlugin.java:167) ~[?:?]
at me.lucko.luckperms.bukkit.LPBukkitBootstrap.onEnable(LPBukkitBootstrap.java:175) ~[?:?]
at me.lucko.luckperms.bukkit.loader.BukkitLoaderPlugin.onEnable(BukkitLoaderPlugin.java:51) ~[LuckPerms-Bukkit-5.3.89.jar:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264) ~[paper-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:370) ~[paper-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:500) ~[paper-api-1.18.1-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.v1_18_R1.CraftServer.enablePlugin(CraftServer.java:564) ~[paper-1.18.1.jar:git-Paper-108]
at org.bukkit.craftbukkit.v1_18_R1.CraftServer.enablePlugins(CraftServer.java:478) ~[paper-1.18.1.jar:git-Paper-108]
at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:286) ~[paper-1.18.1.jar:git-Paper-108]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1202) ~[paper-1.18.1.jar:git-Paper-108]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.18.1.jar:git-Paper-108]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
[01:10:24 WARN]: [LuckPerms] Messaging service 'sql' not recognised.

commented

Hi @ITeMbI4

The [LuckPerms] Exception occurred whilst enabling SQL messaging service error is caused by having the messaging-service setting in the config.yml set to sql when you're not using an sql based storage-method, which MongoDB is not. Also, are you actually adding the connection uri into the config as well? Or only changing the storage-method setting?

commented

Hi, @OmegaWeaponDev
When I have written this bug, I was using storage-method and filled up standard connection without URL.
Yesterday I found URL setting and set it up as well. Now I don't see any errors but not sure in that...