lavalink-devs / Lavalink

Standalone audio sending node based on Lavaplayer.
https://lavalink.dev/
MIT License
1.59k stars 672 forks source link

Lavalink server crashing 50% of the time. #265

Closed NorteX-dev closed 4 years ago

NorteX-dev commented 4 years ago

Description

Half of the time, when I try playing with Lavalink, it crashes with this:

Exception in websocket connection, closing. Channel state is Websocket Channel is null

java.lang.IllegalStateException: Failed to connect to wss://eu-central219.discord.media/?v=4

I can't get a consistent result at this, it doesn't work sometimes and sometimes it does.

Version info

Client used: erela,js

Output of java -jar Lavalink.jar --version:

The output is fine at the start but crashes when I start playing.
OtterBoops commented 4 years ago

From the information you provided I can only tell you that version 4 of Discord's API is discontinued and it is expected to not be reachable.

NorteX-dev commented 4 years ago

OK, then how do I use a new one? I copied the application.yml file from a ready template and didn't really change anything there.

OtterBoops commented 4 years ago

Please

Output of java -jar Lavalink.jar --version

freyacodes commented 4 years ago

From the information you provided I can only tell you that version 4 of Discord's API is discontinued and it is expected to not be reachable.

This is misinformation. The voice servers have a different protocol from the main gateway. The URL is fine.

@NorteX-dev you've failed to provide the required version info and full logs. Without those, we can't help you.

NorteX-dev commented 4 years ago

Then tell me what you need and how do I gather them. I'll be fast to respond.

NorteX-dev commented 4 years ago

Exact logs:

$ java -jar lavalink.jar 
2020-04-03 14:26:42.316  INFO 8092 --- [           main] lavalink.server.Launcher                 : 

       .   _                  _ _       _    __ _ _
      /\\ | | __ ___   ____ _| (_)_ __ | | __\ \ \ \
     ( ( )| |/ _` \ \ / / _` | | | '_ \| |/ / \ \ \ \
      \\/ | | (_| |\ V / (_| | | | | | |   <   ) ) ) )
       '  |_|\__,_| \_/ \__,_|_|_|_| |_|_|\_\ / / / /
    =========================================/_/_/_/

    Version:        e7220eaecb3f1db1cd21a1c1ba47d464358b141f-SNAPSHOT
    Build:          1002
    Build time:     28.03.2020 19:31:09 UTC
    Branch          master
    Commit:         e7220ea
    Commit time:    28.03.2020 19:29:10 UTC
    JVM:            14
    Lavaplayer      1.3.38

2020-04-03 14:26:42.427  INFO 8092 --- [           main] lavalink.server.Launcher                 : Starting Launcher on NorteX with PID 8092 (C:\Users\Lenovo\Desktop\Bots Archive\JS\NortexMusic\lavalink\lavalink.jar started by Lenovo in C:\Users\Lenovo\Desktop\Bots Archive\JS\NortexMusic\lavalink)
2020-04-03 14:26:42.428  INFO 8092 --- [           main] lavalink.server.Launcher                 : No active profile set, falling back to default profiles: default
2020-04-03 14:26:43.848  WARN 8092 --- [           main] io.undertow.websockets.jsr               : UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
2020-04-03 14:26:43.888  INFO 8092 --- [           main] io.undertow.servlet                      : Initializing Spring embedded WebApplicationContext
2020-04-03 14:26:43.888  INFO 8092 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 1414 ms
2020-04-03 14:26:44.329  WARN 8092 --- [           main] l.server.config.SentryConfiguration      : Turning off sentry
2020-04-03 14:26:44.336  INFO 8092 --- [           main] l.s.c.AudioSendFactoryConfiguration      : OS: Windows 10, Arch: amd64
2020-04-03 14:26:44.337  INFO 8092 --- [           main] l.s.c.AudioSendFactoryConfiguration      : JDA-NAS supported system detected. Enabled native audio sending.
2020-04-03 14:26:44.337  INFO 8092 --- [           main] l.s.c.AudioSendFactoryConfiguration      : Setting buffer to 400ms
2020-04-03 14:26:44.337  INFO 8092 --- [           main] l.s.c.AudioSendFactoryConfiguration      : Setting playlist load limit to 6
2020-04-03 14:26:44.803  INFO 8092 --- [           main] c.s.d.l.tools.GarbageCollectionMonitor   : GC monitoring enabled, reporting results every 2 minutes.
2020-04-03 14:26:45.428  INFO 8092 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2020-04-03 14:26:45.795  INFO 8092 --- [           main] org.xnio                                 : XNIO version 3.3.8.Final
2020-04-03 14:26:45.847  INFO 8092 --- [           main] org.xnio.nio                             : XNIO NIO Implementation Version 3.3.8.Final
2020-04-03 14:26:45.942  INFO 8092 --- [           main] o.s.b.w.e.u.UndertowServletWebServer     : Undertow started on port(s) 2333 (http) with context path ''
2020-04-03 14:26:45.947  INFO 8092 --- [           main] lavalink.server.Launcher                 : Started Launcher in 4.45 seconds (JVM running for 5.887)
2020-04-03 14:27:11.473  INFO 8092 --- [  XNIO-1 task-1] io.undertow.servlet                      : Initializing Spring DispatcherServlet 'dispatcherServlet'
2020-04-03 14:27:11.474  INFO 8092 --- [  XNIO-1 task-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2020-04-03 14:27:11.515  INFO 8092 --- [  XNIO-1 task-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 37 ms
2020-04-03 14:27:11.847  INFO 8092 --- [  XNIO-1 task-1] l.server.io.HandshakeInterceptorImpl     : Incoming connection from /127.0.0.1:54863
2020-04-03 14:27:11.847  INFO 8092 --- [  XNIO-1 task-2] l.server.io.HandshakeInterceptorImpl     : Incoming connection from /127.0.0.1:54862
2020-04-03 14:27:12.784  INFO 8092 --- [  XNIO-1 task-2] lavalink.server.io.SocketServer          : Connection successfully established from /127.0.0.1:54862
2020-04-03 14:27:12.784  INFO 8092 --- [  XNIO-1 task-1] lavalink.server.io.SocketServer          : Connection successfully established from /127.0.0.1:54863
2020-04-03 14:29:47.851  INFO 8092 --- [   XNIO-1 I/O-3] lavalink.server.io.SocketServer          : Connection closed from /127.0.0.1:54863 -- CloseStatus[code=1006, reason=]
2020-04-03 14:29:47.851  INFO 8092 --- [   XNIO-1 I/O-2] lavalink.server.io.SocketServer          : Connection closed from /127.0.0.1:54862 -- CloseStatus[code=1006, reason=]
2020-04-03 14:29:47.851  INFO 8092 --- [   XNIO-1 I/O-3] lavalink.server.io.SocketContext         : Shutting down 0 playing players.
2020-04-03 14:29:47.852  INFO 8092 --- [   XNIO-1 I/O-2] lavalink.server.io.SocketContext         : Shutting down 0 playing players.
2020-04-03 14:29:50.600  INFO 8092 --- [  XNIO-1 task-3] l.server.io.HandshakeInterceptorImpl     : Incoming connection from /127.0.0.1:54897
2020-04-03 14:29:50.609  INFO 8092 --- [  XNIO-1 task-3] lavalink.server.io.SocketServer          : Connection successfully established from /127.0.0.1:54897
2020-04-03 14:30:14.528  INFO 8092 --- [  XNIO-1 task-4] l.server.player.AudioLoaderRestHandler   : GET /loadtracks
2020-04-03 14:30:14.754  INFO 8092 --- [   XNIO-1 I/O-1] lavalink.server.io.SocketServer          : {"sessionId":"c642bbb9b5dd4caa7f766a1ca63c91b2","op":"voiceUpdate","guildId":"602569767294861335","event":{"token":"05902b11efb3d19f","guild_id":"602569767294861335","endpoint":"eu-central814.discord.media:80"}}
2020-04-03 14:30:14.995  INFO 8092 --- [     parallel-4] com.jcabi.manifests.Manifests            : 73 attributes loaded from 84 stream(s) in 134ms, 73 saved, 1240 ignored: ["Ant-Version", "Archiver-Version", "Automatic-Module-Name", "Bnd-LastModified", "Build-Jdk", "Build-Jdk-Spec", "Build-Time", "Built-By", "Bundle-ActivationPolicy", "Bundle-Activator", "Bundle-Category", "Bundle-Description", "Bundle-DocURL", "Bundle-License", "Bundle-ManifestVersion", "Bundle-Name", "Bundle-NativeCode", "Bundle-RequiredExecutionEnvironment", "Bundle-SymbolicName", "Bundle-Vendor", "Bundle-Version", "Copyright", "Created-By", "Export-Package", "Extension-Name", "Git-Revision", "Implementation-Build", "Implementation-Build-Date", "Implementation-Title", "Implementation-URL", "Implementation-Vendor", "Implementation-Vendor-Id", "Implementation-Version", "Import-Package", "Include-Resource", "JCabi-Build", "JCabi-Date", "JCabi-Version", "Jar-Name", "Jar-Version", "Java-Vendor", "Java-Version", "Kotlin-Runtime-Component", "Kotlin-Version", "Log4jReleaseKey", "Log4jReleaseManager", "Log4jReleaseVersion", "Magma-Version", "Main-Class", "Manifest-Version", "Multi-Release", "Originally-Created-By", "Os-Arch", "Os-Name", "Os-Version", "Private-Package", "Provide-Capability", "Require-Bundle", "Require-Capability", "Scm-Connection", "Scm-Revision", "Scm-Url", "Specification-Title", "Specification-Vendor", "Specification-Version", "Spring-Boot-Classes", "Spring-Boot-Lib", "Spring-Boot-Version", "Start-Class", "Tool", "X-Compile-Source-JDK", "X-Compile-Target-JDK", "url"]
2020-04-03 14:30:16.923  INFO 8092 --- [ader-2-thread-1] lavalink.server.player.AudioLoader       : Loaded playlist Search results for: Nightcore - Demons
2020-04-03 14:30:23.229  INFO 8092 --- [   XNIO-1 I/O-1] lavalink.server.io.SocketServer          : {"op":"play","guildId":"602569767294861335","track":"QAAAfAIAEk5pZ2h0Y29yZSAtIERlbW9ucwAQTmlnaHRjb3JlUmVhbGl0eQAAAAAAApBAAAtiT3BMczZxZllvSQABACtodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PWJPcExzNnFmWW9JAAd5b3V0dWJlAAAAAAAAAAA=","volume":100}
2020-04-03 14:30:30.246 ERROR 8092 --- [   XNIO-4 I/O-1] s.n.m.impl.connections.AudioWebSocket    : Exception in websocket connection, closing. Channel state is Websocket Channel is null

java.lang.IllegalStateException: Failed to connect to wss://eu-central814.discord.media/?v=4
    at space.npstr.magma.impl.connections.hax.ClosingUndertowWebSocketClient$1.handleFailed(ClosingUndertowWebSocketClient.java:79) ~[impl-0.12.5.jar!/:na]
    at org.xnio.IoFuture$HandlingNotifier.notify(IoFuture.java:215) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.AbstractIoFuture$1.run(AbstractIoFuture.java:211) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.IoUtils$2.execute(IoUtils.java:70) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.AbstractIoFuture.runNotifier(AbstractIoFuture.java:354) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.AbstractIoFuture.runAllNotifiers(AbstractIoFuture.java:233) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.AbstractIoFuture.setException(AbstractIoFuture.java:251) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.FutureResult.setException(FutureResult.java:89) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at io.undertow.websockets.client.WebSocketClient$ConnectionBuilder$2.notify(WebSocketClient.java:342) ~[undertow-core-2.0.26.Final.jar!/:2.0.26.Final]
    at org.xnio.AbstractIoFuture$1.run(AbstractIoFuture.java:211) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.IoUtils$2.execute(IoUtils.java:70) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.AbstractIoFuture.runNotifier(AbstractIoFuture.java:354) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.AbstractIoFuture.runAllNotifiers(AbstractIoFuture.java:233) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.AbstractIoFuture.setException(AbstractIoFuture.java:251) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.FutureResult.setException(FutureResult.java:89) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.http.HttpUpgrade$HttpUpgradeState$UpgradeResultListener.handleEvent(HttpUpgrade.java:425) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.http.HttpUpgrade$HttpUpgradeState.flushUpgradeChannel(HttpUpgrade.java:369) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.http.HttpUpgrade$HttpUpgradeState.access$900(HttpUpgrade.java:165) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener.handleEvent(HttpUpgrade.java:396) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.http.HttpUpgrade$HttpUpgradeState$StringWriteListener.handleEvent(HttpUpgrade.java:372) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.conduits.WriteReadyHandler$ChannelListenerHandler.writeReady(WriteReadyHandler.java:65) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    at io.undertow.protocols.ssl.SslConduit$SslWriteReadyHandler.writeReady(SslConduit.java:1273) ~[undertow-core-2.0.26.Final.jar!/:2.0.26.Final]
    at io.undertow.protocols.ssl.SslConduit$4.run(SslConduit.java:430) ~[undertow-core-2.0.26.Final.jar!/:2.0.26.Final]
    at org.xnio.nio.WorkerThread.safeRun(WorkerThread.java:582) ~[xnio-nio-3.3.8.Final.jar!/:3.3.8.Final]
    at org.xnio.nio.WorkerThread.run(WorkerThread.java:466) ~[xnio-nio-3.3.8.Final.jar!/:3.3.8.Final]
Caused by: java.io.EOFException: XNIO000812: Connection closed unexpectedly
    at org.xnio.http.HttpUpgrade$HttpUpgradeState$UpgradeResultListener.handleEvent(HttpUpgrade.java:416) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
    ... 10 common frames omitted
freyacodes commented 4 years ago

JDK 14 is currently broken. Please see #258 and #263

You can downgrade to JDK 13 or you could try the experimental PR.

NorteX-dev commented 4 years ago

OK, thanks for the help. I will try installing another JDK (my server recommended me to use JDK 11 so that's what I'll go for)

NorteX-dev commented 4 years ago

OK, that seems to have fixed the issue entirely.

I can now enjoy the spicy clear sound of Lavalink :D

DJS3M3N commented 4 years ago

@NorteX-dev Which JDK did you eventually switch to?

topi314 commented 4 years ago

@DJS3M3N according to the README you should use java 11-13. Java 11 runs fine for me tho

NorteX-dev commented 4 years ago

I use JDK12 and it works fine now.