Paper icon indicating copy to clipboard operation
Paper copied to clipboard

[Profile Lookup Executor #0/FATAL]: Uncaught exception in thread Profile Lookup Executor #0

Open andrewkm opened this issue 4 years ago • 8 comments

Expected behavior

No exception

Observed/Actual behavior

[21:58:52] [Profile Lookup Executor #0/FATAL]: Uncaught exception in thread Profile Lookup Executor #0
java.util.ConcurrentModificationException: null
	at com.google.common.collect.LinkedHashMultimap$ValueSet$1.checkForComodification(LinkedHashMultimap.java:376) ~[patched_1.17.1.jar:git-Paper-278]
	at com.google.common.collect.LinkedHashMultimap$ValueSet$1.hasNext(LinkedHashMultimap.java:382) ~[patched_1.17.1.jar:git-Paper-278]
	at java.util.AbstractCollection.toString(AbstractCollection.java:458) ~[?:?]
	at java.lang.String.valueOf(String.java:3365) ~[?:?]
	at java.lang.StringBuilder.append(StringBuilder.java:169) ~[?:?]
	at java.util.AbstractMap.toString(AbstractMap.java:556) ~[?:?]
	at com.google.common.collect.AbstractMapBasedMultimap$AsMap.toString(AbstractMapBasedMultimap.java:1357) ~[patched_1.17.1.jar:git-Paper-278]
	at com.google.common.collect.AbstractMultimap.toString(AbstractMultimap.java:263) ~[patched_1.17.1.jar:git-Paper-278]
	at com.google.common.collect.LinkedHashMultimap.toString(LinkedHashMultimap.java:80) ~[patched_1.17.1.jar:git-Paper-278]
	at com.google.common.collect.ForwardingObject.toString(ForwardingObject.java:63) ~[patched_1.17.1.jar:git-Paper-278]
	at java.lang.String.valueOf(String.java:3365) ~[?:?]
	at java.lang.StringBuffer.append(StringBuffer.java:300) ~[?:?]
	at org.bukkit.craftbukkit.libs.org.apache.commons.lang3.builder.ToStringStyle.appendDetail(ToStringStyle.java:626) ~[patched_1.17.1.jar:git-Paper-278]
	at org.bukkit.craftbukkit.libs.org.apache.commons.lang3.builder.ToStringStyle.appendInternal(ToStringStyle.java:590) ~[patched_1.17.1.jar:git-Paper-278]
	at org.bukkit.craftbukkit.libs.org.apache.commons.lang3.builder.ToStringStyle.append(ToStringStyle.java:476) ~[patched_1.17.1.jar:git-Paper-278]
	at org.bukkit.craftbukkit.libs.org.apache.commons.lang3.builder.ToStringBuilder.append(ToStringBuilder.java:846) ~[patched_1.17.1.jar:git-Paper-278]
	at com.mojang.authlib.GameProfile.toString(GameProfile.java:108) ~[patched_1.17.1.jar:git-Paper-278]
	at java.lang.String.valueOf(String.java:3365) ~[?:?]
	at java.lang.StringBuilder.append(StringBuilder.java:169) ~[?:?]
	at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillGameProfile(YggdrasilMinecraftSessionService.java:202) ~[patched_1.17.1.jar:git-Paper-278]
	at com.destroystokyo.paper.profile.PaperMinecraftSessionService.fillGameProfile(PaperMinecraftSessionService.java:38) ~[patched_1.17.1.jar:git-Paper-278]
	at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.fillProfileProperties(YggdrasilMinecraftSessionService.java:186) ~[patched_1.17.1.jar:git-Paper-278]
	at com.destroystokyo.paper.profile.PaperMinecraftSessionService.fillProfileProperties(PaperMinecraftSessionService.java:31) ~[patched_1.17.1.jar:git-Paper-278]
	at net.minecraft.world.level.block.entity.TileEntitySkull.lambda$updateGameprofile$2(TileEntitySkull.java:157) ~[patched_1.17.1.jar:git-Paper-278]
	at net.minecraft.SystemUtils.a(SystemUtils.java:391) ~[patched_1.17.1.jar:git-Paper-278]
	at net.minecraft.world.level.block.entity.TileEntitySkull.lambda$updateGameprofile$5(TileEntitySkull.java:154) ~[patched_1.17.1.jar:git-Paper-278]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) ~[?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) ~[?:?]
	at java.lang.Thread.run(Thread.java:831) [?:?]

Steps/models to reproduce

Happens randomly, no proper reproduction steps on hand. However, from what I can tell, it almost always happens on server start, when tons of players are joining a server at once, that was just brought back up.

Plugin list

On request, https://discordapp.com/users/244248979330564096

Paper version

Paper Build 283

Agreements

  • [X] I am running the latest version of Paper available from https://papermc.io/downloads.
  • [X] I have searched for and ensured there isn't already an open issue regarding this.
  • [X] My version of Minecraft is supported by Paper.

Other

No response

andrewkm avatar Sep 30 '21 01:09 andrewkm

This seems very unfeasible to fix without properly synchronizing the entire collection for game profiles. This really seems that while this object is being toString()'d in another thread while another thread is also mutating this collection.

Please feel free to comment on this issue if you are still regularly experiencing this issue, and this could be looked into further.

Owen1212055 avatar Aug 07 '22 23:08 Owen1212055

@Owen1212055 we are definitely still getting hammered with this. Usually happens when moving a couple dozen players from one server to another via waterfall send command. However getting the odd one here and there as well.

Latest ones look as such: https://pastebin.com/raw/FN31H03F

andrewkm avatar Aug 12 '22 01:08 andrewkm

@Owen1212055 we are definitely still getting hammered with this.

Usually happens when moving a couple dozen players from one server to another via waterfall send command.

However getting the odd one here and there as well.

Latest ones look as such: https://pastebin.com/raw/FN31H03F

Those exceptions look like invalid player heads... Do you mind showing your plugins? (Owen#1212)

Owen1212055 avatar Aug 12 '22 01:08 Owen1212055

Sent via Discord.

andrewkm avatar Aug 12 '22 01:08 andrewkm

Although I am still really unsure what could be causing this, I ask that you try to remove half of your plugins to see if one of them might be causing this.

Owen1212055 avatar Aug 13 '22 15:08 Owen1212055

Any followup, @andrewkm ?

Owen1212055 avatar Sep 13 '22 18:09 Owen1212055

We have tried without plugins as well and continue to get them. Although we get far less recently. Last four looked as such:

https://gist.githubusercontent.com/andrewkm/1a675b2f60c22e65744c51d13d484f1f/raw/e6d4c56905e3068cc1f904020945394eee63f057/gistfile1.txt https://gist.githubusercontent.com/andrewkm/50fc45bdf0ba42cc4c6b1fcd87971d54/raw/6c5096df33770993d925cf07a8fbb8c04a627408/gistfile1.txt https://gist.githubusercontent.com/andrewkm/4406be535965bf2a9af9273a688fdad4/raw/134dd6476636c2b036b41340ea6e00973e663dfc/gistfile1.txt https://gist.githubusercontent.com/andrewkm/c7d74bcde89298719a1ae3471071d3b6/raw/d9eadce694c3fedc2a794413adc63210d04f5ae4/gistfile1.txt

andrewkm avatar Sep 13 '22 19:09 andrewkm

3/4 of those are network issues, the first one is odd, maybe a mojang API derp?

electronicboy avatar Sep 13 '22 19:09 electronicboy

But are you still seeing the ConcurrentModificationException when you remove all your plugins?

Owen1212055 avatar Sep 30 '22 17:09 Owen1212055

I will be closing this issue in the meantime. Please try to see if you encounter this specific issue even without plugins, as it really seems like some plugin is modifying this in away that is causing this exception to arise. (The logs you mentioned from before were not the same issue)

Owen1212055 avatar Oct 13 '22 17:10 Owen1212055

Apologies for not responding here. I completely forgot and just wrote it off as not important. It's for the most part stopped happening and I haven't seen it since.

andrewkm avatar Oct 25 '22 20:10 andrewkm

Well perfect! Thank you very much for the follow up.

Owen1212055 avatar Oct 25 '22 20:10 Owen1212055