mojira.dev
MC-91533

Container minecarts with invalid loot table cannot be removed from world

Caused by:

When summoning a container minecart (chest or hopper) with an invalid loot table, the minecart cannot be removed from the world anymore. Trying to punch it will cause the following exception (based on MC-91061):

Error executing task (15w44a)

[17:15:55] [Server thread/FATAL]: Error executing task
java.util.concurrent.ExecutionException: com.google.common.util.concurrent.UncheckedExecutionException: java.lang.IllegalArgumentException: Invalid loot table name 'chests:simple_dungeon.json' (can't contain periods)
	at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.8.0_25]
	at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[?:1.8.0_25]
	at g.a(SourceFile:46) [15w44a.jar:?]
	at net.minecraft.server.MinecraftServer.D(SourceFile:590) [15w44a.jar:?]
	at net.minecraft.server.MinecraftServer.C(SourceFile:546) [15w44a.jar:?]
	at bxw.C(SourceFile:154) [15w44a.jar:?]
	at net.minecraft.server.MinecraftServer.run(SourceFile:450) [15w44a.jar:?]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_25]
Caused by: com.google.common.util.concurrent.UncheckedExecutionException: java.lang.IllegalArgumentException: Invalid loot table name 'chests:simple_dungeon.json' (can't contain periods)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache.get(LocalCache.java:3934) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3938) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4821) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4827) ~[guava-17.0.jar:?]
	at azu.a(SourceFile:46) ~[15w44a.jar:?]
	at ye.A(SourceFile:243) ~[15w44a.jar:?]
	at ye.a(SourceFile:54) ~[15w44a.jar:?]
	at qh.a(SourceFile:25) ~[15w44a.jar:?]
	at qh.a(SourceFile:20) ~[15w44a.jar:?]
	at ye.N(SourceFile:135) ~[15w44a.jar:?]
	at yb.a(SourceFile:190) ~[15w44a.jar:?]
	at zo.f(SourceFile:1069) ~[15w44a.jar:?]
	at ls.f(SourceFile:1030) ~[15w44a.jar:?]
	at mc.a(SourceFile:907) ~[15w44a.jar:?]
	at is.a(SourceFile:68) ~[15w44a.jar:?]
	at is.a(SourceFile:12) ~[15w44a.jar:?]
	at fh$1.run(SourceFile:13) ~[15w44a.jar:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:1.8.0_25]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_25]
	at g.a(SourceFile:45) ~[15w44a.jar:?]
	... 5 more
Caused by: java.lang.IllegalArgumentException: Invalid loot table name 'chests:simple_dungeon.json' (can't contain periods)
	at azu$a.a(SourceFile:61) ~[15w44a.jar:?]
	at azu$a.load(SourceFile:56) ~[15w44a.jar:?]
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3524) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2317) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2280) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2195) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache.get(LocalCache.java:3934) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3938) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4821) ~[guava-17.0.jar:?]
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4827) ~[guava-17.0.jar:?]
	at azu.a(SourceFile:46) ~[15w44a.jar:?]
	at ye.A(SourceFile:243) ~[15w44a.jar:?]
	at ye.a(SourceFile:54) ~[15w44a.jar:?]
	at qh.a(SourceFile:25) ~[15w44a.jar:?]
	at qh.a(SourceFile:20) ~[15w44a.jar:?]
	at ye.N(SourceFile:135) ~[15w44a.jar:?]
	at yb.a(SourceFile:190) ~[15w44a.jar:?]
	at zo.f(SourceFile:1069) ~[15w44a.jar:?]
	at ls.f(SourceFile:1030) ~[15w44a.jar:?]
	at mc.a(SourceFile:907) ~[15w44a.jar:?]
	at is.a(SourceFile:68) ~[15w44a.jar:?]
	at is.a(SourceFile:12) ~[15w44a.jar:?]
	at fh$1.run(SourceFile:13) ~[15w44a.jar:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:1.8.0_25]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_25]
	at g.a(SourceFile:45) ~[15w44a.jar:?]
	... 5 more

Using the /kill command only gives the following error:

[17:23:47] [Server thread/WARN]: Couldn't process command: 'kill @e[type=!Player]'
[17:23:47] [Client thread/INFO]: [CHAT] An unknown error occurred while attempting to perform this command

How to reproduce

  1. Go in creative mode

  2. Summon any entity that can use a loot table, for example:

    /summon MinecartChest ~ ~ ~ {LootTable:"."}
  3. Try to destroy the entity

Linked issues

Comments 0

No comments.

marcono1234

Erik Broes

Unconfirmed

destroy, entity, kill, loot-table

Minecraft 15w44a, Minecraft 15w46a

Minecraft 15w49a

Retrieved