Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

some usernames appear as white/unformatted #1364

Closed
4 of 5 tasks
quiquelhappy opened this issue Sep 5, 2024 · 4 comments
Closed
4 of 5 tasks

some usernames appear as white/unformatted #1364

quiquelhappy opened this issue Sep 5, 2024 · 4 comments
Labels
Resolution: User no longer cares User does not care, so why should we? Type: Bug Plugin is not working as described on the wiki

Comments

@quiquelhappy
Copy link

quiquelhappy commented Sep 5, 2024

Server version

BungeeCord-Bootstrap:1.21-R0.1-SNAPSHOT:84ac7ab:1864

TAB version

4.1.8

Plugin list

not needed for this bug report.

Describe the bug

fallback __DEFAULT__ formatting.

we use redisbungee, and redisbungee can sometimes have issues syncronizing players, or underlying services might have issues pulling data from syncronized players (such as luckperms fetching permission data from players on other proxies).

if the permission data or player data can't be pulled, they should at least be using the __DEFAULT__ formatting.

this has been an issue for pretty much an entire year now
image

Expected behavior

use fallback __DEFAULT__ formatting.

Steps to reproduce

  1. load players into the server that result in errors while pulling permission data or other player-specific data (easily done with either redisbungee + luckperms try and error, or causing some sort of I/O exception reading player permissions, or fake players pushing mock player data to the proxy)

Additional info

this has been an issue for long now, and it has been happening in all released versions for about a year, probably before that too.

I see this error every now and then on my console, I don't know if its caused by TAB using RedisBungee, or just RedisBungee itself freaking out when this happens - still, a simple try/catch or null result should fallback to __DEFAULT__ and likely show a warning in console for clarification.

Task BungeeTask(sched=net.md_5.bungee.scheduler.BungeeScheduler@38f116f6, id=42983, owner=com.imaginarycode.minecraft.redisbungee.RedisBungee@74c23525, task=com.imaginarycode.minecraft.redisbungee.RedisBungeeListener$$Lambda/0x00000098018da9d8@5507405f, delay=0, period=0, running=true) encountered an exception
java.lang.RuntimeException: java.lang.NullPointerException: null key in entry: null=ce05a8b3-a17f-366b-b494-21fedd26256f
    at com.imaginarycode.minecraft.redisbungee.api.PlayerDataManager.serversToPlayersBuilder(PlayerDataManager.java:270)
    at com.imaginarycode.minecraft.redisbungee.internal.caffeine.cache.LocalLoadingCache.lambda$newMappingFunction$3(LocalLoadingCache.java:183)
    at com.imaginarycode.minecraft.redisbungee.internal.caffeine.cache.BoundedLocalCache.lambda$doComputeIfAbsent$14(BoundedLocalCache.java:2688)
    at java.base/java.util.concurrent.ConcurrentHashMap.compute(Unknown Source)
    at com.imaginarycode.minecraft.redisbungee.internal.caffeine.cache.BoundedLocalCache.doComputeIfAbsent(BoundedLocalCache.java:2686)
    at com.imaginarycode.minecraft.redisbungee.internal.caffeine.cache.BoundedLocalCache.computeIfAbsent(BoundedLocalCache.java:2669)
    at com.imaginarycode.minecraft.redisbungee.internal.caffeine.cache.LocalCache.computeIfAbsent(LocalCache.java:112)
    at com.imaginarycode.minecraft.redisbungee.internal.caffeine.cache.LocalLoadingCache.get(LocalLoadingCache.java:58)
    at com.imaginarycode.minecraft.redisbungee.api.PlayerDataManager.serversToPlayers(PlayerDataManager.java:238)
    at com.imaginarycode.minecraft.redisbungee.AbstractRedisBungeeAPI.getServerToPlayers(AbstractRedisBungeeAPI.java:116)
    at com.imaginarycode.minecraft.redisbungee.AbstractRedisBungeeAPI.getPlayersOnServer(AbstractRedisBungeeAPI.java:126)
    at com.imaginarycode.minecraft.redisbungee.RedisBungeeListener.lambda$onPluginMessage$0(RedisBungeeListener.java:97)
    at net.md_5.bungee.scheduler.BungeeTask.run(BungeeTask.java:63)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
    at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException: null key in entry: null=ce05a8b3-a17f-366b-b494-21fedd26256f
    at com.imaginarycode.minecraft.redisbungee.internal.com.google.common.collect.CollectPreconditions.checkEntryNotNull(CollectPreconditions.java:31)
    at com.imaginarycode.minecraft.redisbungee.internal.com.google.common.collect.ImmutableMultimap$Builder.put(ImmutableMultimap.java:171)
    at com.imaginarycode.minecraft.redisbungee.api.PlayerDataManager$1.lambda$doPooledPipeline$0(PlayerDataManager.java:254)
    at java.base/java.util.HashMap.forEach(Unknown Source)
    at com.imaginarycode.minecraft.redisbungee.api.PlayerDataManager$1.doPooledPipeline(PlayerDataManager.java:254)
    at com.imaginarycode.minecraft.redisbungee.api.PlayerDataManager$1.doPooledPipeline(PlayerDataManager.java:243)
    at com.imaginarycode.minecraft.redisbungee.api.tasks.RedisPipelineTask.unifiedJedisTask(RedisPipelineTask.java:33)
    at com.imaginarycode.minecraft.redisbungee.api.tasks.RedisTask.execute(RedisTask.java:59)
    at com.imaginarycode.minecraft.redisbungee.api.tasks.RedisTask.call(RedisTask.java:35)
    at com.imaginarycode.minecraft.redisbungee.api.PlayerDataManager.serversToPlayersBuilder(PlayerDataManager.java:268)
    ... 18 more

Checklist

  • I am running latest version of the plugin
  • I have read the wiki to make sure it's not an issue with configuration
  • I ticked all of the boxes without actually reading them
  • I have read the Compatibility wiki page and am not trying to run the plugin on an unsupported server version / platform
  • I am willing to cooperate to get this issue resolved faster, including providing any additional information requested or testing new builds
@quiquelhappy quiquelhappy added the Type: Bug Plugin is not working as described on the wiki label Sep 5, 2024
@Tanguygab
Copy link
Collaborator

I already replied to you on Discord... this was fixed already #1317

Repository owner deleted a comment Sep 5, 2024
@NEZNAMY
Copy link
Owner

NEZNAMY commented Sep 5, 2024

This error has absolutely nothing to do with TAB. Remove it and try again.

@NEZNAMY
Copy link
Owner

NEZNAMY commented Sep 27, 2024

Any news @quiquelhappy ?

@NEZNAMY
Copy link
Owner

NEZNAMY commented Oct 11, 2024

No response for 5 weeks, assuming user has died. The described issue is most likely caused by the RedisBungee error, which is out of TAB's control.

@NEZNAMY NEZNAMY closed this as not planned Won't fix, can't repro, duplicate, stale Oct 11, 2024
@NEZNAMY NEZNAMY added the Resolution: User no longer cares User does not care, so why should we? label Oct 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Resolution: User no longer cares User does not care, so why should we? Type: Bug Plugin is not working as described on the wiki
Projects
None yet
Development

No branches or pull requests

3 participants