Issue with a large number of plugins, yggdrasil ProfileSearchResultsResponse.getProfiles() is null

Currently looking into an issue with a server that I Admin for, we have suddenly started getting an issue with a large number of our plugins all giving an extremely similar error from the Mojang Authentication Yggdrasil methods. The server is a Waterfall linked Bungee server of around 9 separate servers, all running the most recent version of Paper. This issue started around Wednesday last week with the only thing that we can see was changed was a Paper update. We have tested reverting the paper version but no results, also entirely unable to replicate this issue on multiple local test servers. Plugins that are currently giving the issue are as follows: Citizens ChestShop Spartan HeadDatabase VersionChecker AJLeaderboards And likely a few more. All of our main servers that have a mixture of these plugins have various issues, with some not being able to run certain functions of the plugins, and some plugins completely refusing to enable on startup. We have attempted disabling each plugin one by one to find some pattern, but these all seem to have some sort of ‘weight’ in casing it with some being more likely to cause the issue but all are contributors. We have discussed with multiple of these plugin developers but all are saying that they have no idea and that it is not their plugin causing any issues. I will post some error logs that we are getting from a few of the plugins as comments here. Has anyone ever seen this before, or any ideas on what to do at all?
7 Replies
Admincraft Meta
Thanks for asking your question!
Make sure to provide as much helpful information as possible such as logs/what you tried and what your exact issue is
Make sure to mark solved when issue is solved!!!
/close !close !solved !answered
Requested by xyaafol#0
Xyaafol
XyaafolOP2y ago
[06:01:45] [Server thread/ERROR]: Error occurred while enabling ChestShop v3.12.3-SNAPSHOT (build 389) (Is it up to date?) java.lang.NullPointerException: Cannot read the array length because the return value of "com.mojang.authlib.yggdrasil.response.ProfileSearchResultsResponse.getProfiles()" is null at com.mojang.authlib.yggdrasil.YggdrasilGameProfileRepository.findProfilesByNames(YggdrasilGameProfileRepository.java:59) ~[paper-1.20.1.jar:?] at com.destroystokyo.paper.profile.PaperGameProfileRepository.findProfilesByNames(PaperGameProfileRepository.java:44) ~[paper-1.20.1.jar:git-Paper-116] at net.minecraft.server.players.GameProfileCache.lookupGameProfile(GameProfileCache.java:110) ~[?:?] at net.minecraft.server.players.GameProfileCache.get(GameProfileCache.java:181) ~[?:?] at org.bukkit.craftbukkit.v1_20_R1.CraftServer.getOfflinePlayer(CraftServer.java:1961) ~[paper-1.20.1.jar:git-Paper-116] at org.bukkit.Bukkit.getOfflinePlayer(Bukkit.java:1335) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?] at com.Acrobot.ChestShop.UUIDs.NameManager.load(NameManager.java:347) ~[ChestShop.389.jar:?] at com.Acrobot.ChestShop.ChestShop.loadConfig(ChestShop.java:190) ~[ChestShop.389.jar:?] at com.Acrobot.ChestShop.ChestShop.onEnable(ChestShop.java:158) ~[ChestShop.389.jar:?] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:281) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?] 09:16:35] [Craft Scheduler Thread - 17 - Citizens/WARN]: [Citizens] Plugin Citizens v2.0.32-SNAPSHOT (build 3156) generated an exception while executing task 322 java.lang.NullPointerException: Cannot read the array length because the return value of "com.mojang.authlib.yggdrasil.response.ProfileSearchResultsResponse.getProfiles()" is null at com.mojang.authlib.yggdrasil.YggdrasilGameProfileRepository.findProfilesByNames(YggdrasilGameProfileRepository.java:59) ~[paper-1.20.1.jar:?] at com.destroystokyo.paper.profile.PaperGameProfileRepository.findProfilesByNames(PaperGameProfileRepository.java:44) ~[paper-1.20.1.jar:git-Paper-118] at net.citizensnpcs.npc.profile.ProfileFetchThread.fetchRequests(ProfileFetchThread.java:134) ~[Citizens.2.0.32.4.jar:?] at net.citizensnpcs.npc.profile.ProfileFetchThread.run(ProfileFetchThread.java:195) ~[Citizens.2.0.32.4.jar:?] at org.bukkit.craftbukkit.v1_20_R1.scheduler.CraftTask.run(CraftTask.java:101) ~[paper-1.20.1.jar:git-Paper-118] at org.bukkit.craftbukkit.v1_20_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[paper-1.20.1.jar:git-Paper-118] at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[paper-1.20.1.jar:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?] [09:18:54] [Profile Lookup Executor #0/ERROR]: Uncaught exception in thread Profile Lookup Executor #0 java.lang.NullPointerException: Cannot invoke "java.util.Optional.isPresent()" because "optional" is null at net.minecraft.Util.ifElse(Util.java:449) ~[?:?] at net.minecraft.world.level.block.entity.SkullBlockEntity.lambda$updateGameprofile$5(SkullBlockEntity.java:141) ~[?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?] at java.lang.Thread.run(Thread.java:833) ~[?:?]
Philipp
Philipp2y ago
:thonk: Mojang API ratelimit / block
Xyaafol
XyaafolOP2y ago
That was something that I considered, but everything I can find on the ratelimit seems to say 600 per 10mins - we can get the issue, then disable one or two of the issue plugins and restart within the 10 mins and it all work with no issues Just checking again now and found a source saying 200 per min for UUID to profile checks
Philipp
Philipp2y ago
Maybe one plugins spam requests? When the problem occurs what does the API return if you query it directly from the server
Xyaafol
XyaafolOP2y ago
Apologies for my newness to the Mojang API side, how would I query from the server?
Philipp
Philipp2y ago
Looking at the logs it seems to be the findprofilebynames endpoint so E.g
curl -v -L https://api.mojang.com/users/profiles/minecraft/Philipp_DE1337
curl -v -L https://api.mojang.com/users/profiles/minecraft/Philipp_DE1337
Only works if you have console access on linux

Did you find this page helpful?