NametagEdit

721k Downloads

team already exists

PhanaticD opened this issue ยท 6 comments

commented

Unfortunately this is still happening with build 63. My CTF minigame ended and all the players were sent to the hub server, and all of those players were kicked from the server with this error in the bungee log

java.lang.IllegalArgumentException: Team AEDAD-19 already exists in this scoreboard
    at com.google.common.base.Preconditions.checkArgument(Preconditions.java:145)
    at net.md_5.bungee.api.score.Scoreboard.addTeam(Scoreboard.java:68)
    at net.md_5.bungee.connection.DownstreamBridge.handle(DownstreamBridge.java:205)
    at net.md_5.bungee.protocol.packet.Team.handle(Team.java:102)
    at net.md_5.bungee.netty.HandlerBoss.channelRead(HandlerBoss.java:78)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:349)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:341)
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:349)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:341)
    at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:349)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:341)
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:293)
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:267)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:349)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:341)
    at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:287)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:349)
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:341)
    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:349)
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926)
    at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:1018)
    at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:394)
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:299)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858)
    at java.lang.Thread.run(Thread.java:745)
commented

You know what this sounds like, is a concurrency issue. I bet when we load the tags (from the database) asynchronously, we are potentially creating lots of teams simultaneously. Will take a look at this.

Update: I actually think this is an issue with Sort Priority being handled async.

commented

No dice on the Async theory, all nametags are applied on the main thread. For the time being, set the SortPriority of all group nametags to "0". The clash you are seeing is related to SortPriority.

commented

no i havent

commented

Have you experienced this since that one "fix" was uploaded?

commented

Going to close this issue for now as it seems resolved. If it persists, please reopen.

commented

i think is still here. 1.12.2 + latest version on spigot
https://gist.github.com/xion87/f6c3256e41176ea474c709d0df5fefb1
Not sure if is caused by this plugin