Villagers running around with Shopkeeper names
blablubbabcDEV opened this issue ยท 14 comments
Migrated from: https://dev.bukkit.org/projects/shopkeepers/issues/133
Originally posted by der_Kernschatten (May 7, 2013):
What steps will reproduce the problem?
- No specific event seems to trigger this bug.What is the expected output? What do you see instead?
I expect named shopkeepers to stay in their place as shopkeepers. Today, I thought I saw a shopkeeper walking around. Turns out, it was a villager with a nameplate from one of the shops. I soon noticed all of the shopkeepers names were walking around on villagers. They behaved as normal villagers and shopkeepers still seemed to function.What version of the product are you using?
1.13.2 on Bukkit 2771 (1.5.2-R0.1)Do you have an error log of what happened?
These logs may be unrelated, but it is what I have.2013-05-07 18:35:08 [WARNING] [Shopkeepers] Task #1033 for Shopkeepers v1.13.2 generated an exception
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.remove(HashMap.java:857)
at com.nisovin.shopkeepers.ShopkeepersPlugin$4.run(ShopkeepersPlugin.java:583)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftTask.run(CraftTask.java:53)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345)
at net.minecraft.server.v1_5_R3.MinecraftServer.r(MinecraftServer.java:513)
at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:226)
at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:477)
at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:410)
at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
2013-05-07 18:35:51 [WARNING] [Shopkeepers] Task #1050 for Shopkeepers v1.13.2 generated an exception
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.remove(HashMap.java:857)
at com.nisovin.shopkeepers.ShopkeepersPlugin$4.run(ShopkeepersPlugin.java:594)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftTask.run(CraftTask.java:53)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345)
at net.minecraft.server.v1_5_R3.MinecraftServer.r(MinecraftServer.java:513)
at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:226)
at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:477)
at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:410)
at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)2013-05-07 19:25:57 [WARNING] [Shopkeepers] Task #3482 for Shopkeepers v1.13.2 generated an exception
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.remove(HashMap.java:857)
at com.nisovin.shopkeepers.ShopkeepersPlugin$4.run(ShopkeepersPlugin.java:583)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftTask.run(CraftTask.java:53)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345)
at net.minecraft.server.v1_5_R3.MinecraftServer.r(MinecraftServer.java:513)
at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:226)
at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:477)
at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:410)
at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
Originally commented by der_Kernschatten (May 8, 2013):
Logged in again and shopkeeper names were white.
Faux shopkeepers still existed so I used Essentials /smite to kill all of them while leaving as many normal villagers intact. This may be coincidence, but the faux shopkeepers seemed harder to kill whereas if a normal villager was hit, it was usually instant death on the second strike.
I moved far enough away for chunkunload - no effect.
I restarted the server and shopkeeper names turned green and I don't see any faux villagers walking around with shopkeeper tags at this time.
Originally commented by der_Kernschatten (May 8, 2013):
Follow-up
I think I have observed a correlation. I can't see anything in the save file that would match the observation though.
Some Shopkeepers names are being 'cloned'. Some are not.
Some have white name tags. Some have green.
The ones that are white are not being cloned. In fact, the ones that I'm seeing in white, I don't think I've ever seen duplicated.
Changing the names of the green Shopkeepers doesn't change their clones name.
No error messages occurred prior to the reappearance of nametags. However, changing the name seemed to trigger these:
2013-05-08 17:57:59 [WARNING] [Shopkeepers] Task #7406 for Shopkeepers v1.13.2 generated an exception
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.remove(HashMap.java:857)
at com.nisovin.shopkeepers.ShopkeepersPlugin$4.run(ShopkeepersPlugin.java:583)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftTask.run(CraftTask.java:53)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345)
at net.minecraft.server.v1_5_R3.MinecraftServer.r(MinecraftServer.java:513)
at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:226)
at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:477)
at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:410)
at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
2013-05-08 17:58:11 [WARNING] [Shopkeepers] Task #7409 for Shopkeepers v1.13.2 generated an exception
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.remove(HashMap.java:857)
at com.nisovin.shopkeepers.ShopkeepersPlugin$4.run(ShopkeepersPlugin.java:583)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftTask.run(CraftTask.java:53)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345)
at net.minecraft.server.v1_5_R3.MinecraftServer.r(MinecraftServer.java:513)
at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:226)
at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:477)
at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:410)
at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
2013-05-08 17:58:20 [WARNING] [Shopkeepers] Task #7412 for Shopkeepers v1.13.2 generated an exception
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.remove(HashMap.java:857)
at com.nisovin.shopkeepers.ShopkeepersPlugin$4.run(ShopkeepersPlugin.java:583)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftTask.run(CraftTask.java:53)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345)
at net.minecraft.server.v1_5_R3.MinecraftServer.r(MinecraftServer.java:513)
at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:226)
at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:477)
at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:410)
at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
2013-05-08 17:58:36 [WARNING] [Shopkeepers] Task #7415 for Shopkeepers v1.13.2 generated an exception
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.remove(HashMap.java:857)
at com.nisovin.shopkeepers.ShopkeepersPlugin$4.run(ShopkeepersPlugin.java:583)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftTask.run(CraftTask.java:53)
at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345)
at net.minecraft.server.v1_5_R3.MinecraftServer.r(MinecraftServer.java:513)
at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:226)
at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:477)
at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:410)
at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
Edited May 8, 2013
Originally commented by der_Kernschatten (May 7, 2013):
Another observation, possibly unrelated... for a while, shopkeeper's nametags were showing up green. Not too long ago, they switched to white. After another restart, they are green again.
The faux shopkeepers (villagers with the nametag) have white nametags.
Originally commented by der_Kernschatten (May 11, 2013):
@nisovin:
I posit that we have no new plugins from the time this started. We have been using Shopkeepers with no errors until this lastest update.
The only plugin I know to directly interact with the villagers is: Rebalance Villagers.
Now, we did briefly install 'Mobs' and it's dependency 'More Events', but both have long been removed.
I don't know what the Green vs White Nametags means on a Shopkeeper, but regardless of the nametag color they all function properly.
Additionally to ensure that I have been clear, the clones/faux shopkeepers, as I have called them, function as normal villagers - not as shopkeepers. They also often have a different skin.
I am fairly certain that I've observed them take up the random shopkeeper nametags while remaining within the same village/chunk waiting for it to happen after I had killed off the previous generation of faux shopkeepers.
Originally commented by der_Kernschatten (May 11, 2013):
@nisovin:
I disabled every single plugin except Shopkeepers.
Shopkeepers have green name tags upon server load. Some villagers still walk around with random white Shopkeeper nametags.
To be specific, this is what I disabled: Deadmanschest, Essentials, Permissions, GroupManager, Essentials Spawn, FlyWithFood, Sentry, WorldEdit, WorldGuard, Citizens, CreeperHeal, Denizen, PTWeaks, Rebalance Villagers, TimeIsMoney, Vault
Originally commented by der_Kernschatten (May 8, 2013):
Follow-up
Nuked the villagers. Respawned them so no names were visible. Left for a while. Came back with no server restart and Shopkeepers had white nametags with no clones running around.
Originally commented by der_Kernschatten (May 9, 2013):
Follow-up
Logged in. No errors. ALL shopkeepers have green nametags now and all are being cloned.
Originally commented by nisovin (May 10, 2013):
I suspect this is being caused by a plugin conflict. For some reason the villagers aren't being properly removed when the chunk unloads, even though they should be.
Originally commented by der_Kernschatten (May 14, 2013):
Upon enabling PTWeaks, Shopkeepers started flipping between Green and White Nametags.
I did not, however, see any cloning. I will keep troubleshooting with different plugins to try to get to the bottom of this.
Is it documented anywhere what the green/white means?
Originally commented by der_Kernschatten (May 16, 2013):
@Rascas:
I enabled NoLagg.
Everything had been working fine then I lost the ability to interact with the Shopkeepers. I could interact with block on the other side of them as if they were not even there.
If I left and came back, sometimes this would fix the Shopkeeper.
When i ran "/nolagg resend" all of the Shopkeepers started working again.
No error messages.
No drop in ticks.
We still have plenty of RAM.
Additionally, we still see error messages when a Shopkeeper is renamed.
Originally commented by nisovin (Dec 3, 2013):
This is an old ticket, but I'll make a few comments before closing it for future reference.
The green names are caused by a config setting. I would assume that the white names were being caused by a plugin removing the villager and recreating it, but stripping the color from the name out.
Those exceptions were caused by an unrelated error that was resolved.
Originally commented by der_Kernschatten (May 12, 2013):
I killed off all of the clones.
All plugins were disabled. I am slowly re-enabling them.
Enabled: Deadmanschest, Essentials, Permissions, GroupManager, Essentials Spawn, Sentry, WorldEdit, WorldGuard, Citizens, CreeperHeal, Rebalance Villagers
Disabled: FlyWithFood, Denizen, PTWeaks, TimeIsMoney, Vault
So far, no re-occurrence of the bug.