Code Monkey home page Code Monkey logo

Comments (22)

onebeastchris avatar onebeastchris commented on August 22, 2024 1

Should be resolved in the latest build. Thanks for reporting!

from floodgate.

Brasil150 avatar Brasil150 commented on August 22, 2024

Yes, this is happening here too. I'm desperate because my players, both Java and Bedrock, can't log in. I even went so far as to blame ViaVersion.

from floodgate.

Camotoy avatar Camotoy commented on August 22, 2024

Can you post full logs and a Geyser dump if relevant?

from floodgate.

Brasil150 avatar Brasil150 commented on August 22, 2024

@Camotoy Sorry but it's not the Geyser dump. This is what is happening on my Proxy. Kicks players as they enter.

[21:16:46 ERROR]: [/0.0.0.0|frestxl] <-> DownstreamBridge <-> [lobby] - encountered exception
java.lang.NullPointerException: Cannot invoke "java.util.Locale.getLanguage()" because "locale" is null
        at org.geysermc.floodgate.util.Utils.getLocale(Utils.java:87) ~[?:?]
        at org.geysermc.floodgate.util.BungeeCommandUtil.getUserAudience(BungeeCommandUtil.java:66) ~[?:?]
        at org.geysermc.floodgate.player.audience.FloodgateSenderMapper.map(FloodgateSenderMapper.java:44) ~[?:?]
        at org.geysermc.floodgate.player.audience.FloodgateSenderMapper.map(FloodgateSenderMapper.java:34) ~[?:?]
        at org.geysermc.floodgate.shadow.org.incendo.cloud.bungee.BungeeCommand.hasPermission(BungeeCommand.java:83) ~[?:?]
        at net.md_5.bungee.connection.DownstreamBridge.handle(DownstreamBridge.java:806) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at net.md_5.bungee.protocol.packet.Commands.handle(Commands.java:230) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:127) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:289) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:333) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:455) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:801) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:501) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:399) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]
        at java.lang.Thread.run(Thread.java:840) [?:?]

from floodgate.

andrewkm avatar andrewkm commented on August 22, 2024

@Camotoy Sorry but it's not the Geyser dump. This is what is happening on my Proxy. Kicks players as they enter.


[21:16:46 ERROR]: [/0.0.0.0|frestxl] <-> DownstreamBridge <-> [lobby] - encountered exception

java.lang.NullPointerException: Cannot invoke "java.util.Locale.getLanguage()" because "locale" is null

        at org.geysermc.floodgate.util.Utils.getLocale(Utils.java:87) ~[?:?]

        at org.geysermc.floodgate.util.BungeeCommandUtil.getUserAudience(BungeeCommandUtil.java:66) ~[?:?]

        at org.geysermc.floodgate.player.audience.FloodgateSenderMapper.map(FloodgateSenderMapper.java:44) ~[?:?]

        at org.geysermc.floodgate.player.audience.FloodgateSenderMapper.map(FloodgateSenderMapper.java:34) ~[?:?]

        at org.geysermc.floodgate.shadow.org.incendo.cloud.bungee.BungeeCommand.hasPermission(BungeeCommand.java:83) ~[?:?]

        at net.md_5.bungee.connection.DownstreamBridge.handle(DownstreamBridge.java:806) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at net.md_5.bungee.protocol.packet.Commands.handle(Commands.java:230) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:127) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:289) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:333) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:455) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:801) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:501) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:399) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[Waterfall.jar:git:Waterfall-Bootstrap:1.20-R0.3-SNAPSHOT:37a9ace:577]

        at java.lang.Thread.run(Thread.java:840) [?:?]

Exact same issue here.

from floodgate.

Brasil150 avatar Brasil150 commented on August 22, 2024

Testing a few Floodgate builds ago doesn't cause this.

from floodgate.

andrewkm avatar andrewkm commented on August 22, 2024

Testing a few Floodgate builds ago doesn't cause this.

Same here, I've reverted back for now to mitigate the issue.

from floodgate.

Camotoy avatar Camotoy commented on August 22, 2024

Do any of you have disabled commands in your Bungee config?

from floodgate.

Brasil150 avatar Brasil150 commented on August 22, 2024

There are no commands disabled in my Waterfall config. (Except "bungee" command but this is default).

from floodgate.

Brasil150 avatar Brasil150 commented on August 22, 2024

Testing a few Floodgate builds ago doesn't cause this.

Same here, I've reverted back for now to mitigate the issue.

Another thing, it was very difficult to find previous builds as there is no download button for other builds on the website. I had to go to Github Actions, download the zipped Build and extract it to get the jar.

from floodgate.

Camotoy avatar Camotoy commented on August 22, 2024

I cannot replicate it. I've tried with forwarding on and off, I've tried with Waterfall and Bungee, I've tried with 1.20.6 and 1.20.4, I've tried with and without LuckPerms. Something's missing - I need all the information on your setups that I can get, that you're comfortable with sharing.

from floodgate.

Brasil150 avatar Brasil150 commented on August 22, 2024

I cannot replicate it. I've tried with forwarding on and off, I've tried with Waterfall and Bungee, I've tried with 1.20.6 and 1.20.4, I've tried with and without LuckPerms. Something's missing - I need all the information on your setups that I can get, that you're comfortable with sharing.

In my case it is happening in:

Waterfall #577 - Java 17
Backend: 1.12.2(Dionysus git 899c2f4) - Java 17

If you enter 1.20.4 and 1.20.6 in Java you will not have this problem. However, if you enter something like 1.18.2, you will be disconnected with the error described.

In the case of Bedrock players, the same error occurs and they are disconnected.

from floodgate.

Z3r0xh avatar Z3r0xh commented on August 22, 2024

We have been talking about the problem here, in my tests you can enter with current clients, but from 1.20.1 onwards it no longer allows entry.

My tests have been on the latest version of both geyser and floodgate and bungeecord and papermc

#506

from floodgate.

onebeastchris avatar onebeastchris commented on August 22, 2024

I am still unable to replicate this issue, but i think this was caused by bumping cloud from beta.2 to a newer snapshot, which introduced the changes in hasPermission: Incendo/cloud-minecraft@857e537, which invokes the floodgate sender mapper, and then failing here.
The root cause here seems to be that bungee's getLocale() method returned null here; ill see if i can track that down.

from floodgate.

onebeastchris avatar onebeastchris commented on August 22, 2024

Was able to replicate with calling getLocale during the post login event; that returns null. Made a BungeeCord issue: SpigotMC/BungeeCord#3680

I will open a floodgate PR to fall back to the default locale though in this case.

EDIT: This is, apparently, intended. The PR addresses this issue properly by not assuming locale to be NonNull.

from floodgate.

andrewkm avatar andrewkm commented on August 22, 2024

Latest has resolved this issue on our end.
Thank you! :)

from floodgate.

Brasil150 avatar Brasil150 commented on August 22, 2024

I would just like to point out the difficulty of finding previous builds in cases like this, as the site only has downloads for the most recent version.

from floodgate.

Z3r0xh avatar Z3r0xh commented on August 22, 2024

Thank you very much for reviewing and fixing the error!

from floodgate.

andrewkm avatar andrewkm commented on August 22, 2024

I would just like to point out the difficulty of finding previous builds in cases like this, as the site only has downloads for the most recent version.

Thankfully we build the project on our jenkins, so have older builds available for testing.
Would be nice if Floodgate/Geyser had a jenkins/similar.

from floodgate.

AlexProgrammerDE avatar AlexProgrammerDE commented on August 22, 2024

Well there is a very badly advertised official jenkins: https://ci.opencollab.dev/job/GeyserMC/

from floodgate.

Camotoy avatar Camotoy commented on August 22, 2024

Neither Floodgate nor Geyser are uploaded to the Jenkins anymore, hence why it is badly advertised. (Even when it did, Geyser only kept the last 20 builds).

Thank you for your suggestions on older builds.

from floodgate.

onebeastchris avatar onebeastchris commented on August 22, 2024

Making older builds available isn't generally something we're really interested in - since especially Floodgate is compatible all the way back to 1.8.9, and Geyser to 1.16.5, so there isn't a big use for old builds.
However, for cases such as these - or finding regressions - having access to the last 10-20 builds seems reasonable, I agree.
Maybe we could start uploading all builds to modrinth; that would have the benefit - meaning that we wouldn't need our own additional infrastructure/downloads site with a build picker. Not sure though, we'll see

from floodgate.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.