Polymer

Polymer

763k Downloads

`java.util.concurrent.TimeoutException` relating to REI logged when loading world

magneticflux- opened this issue ยท 8 comments

commented

The error:

[02:37:27] [Render thread/INFO]: [STDERR]: java.util.concurrent.TimeoutException
[02:37:27] [Render thread/INFO]: [STDERR]: 	at java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1960)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2095)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.client.entry.filtering.rules.ManualFilteringRule.prepareCache(ManualFilteringRule.java:77)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.common.entry.type.PreFilteredEntryList.refilterNew(PreFilteredEntryList.java:175)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.common.entry.type.PreFilteredEntryList.addEntryAfter(PreFilteredEntryList.java:67)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.common.entry.type.EntryRegistryImpl.addEntryAfter(EntryRegistryImpl.java:182)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at me.shedaniel.rei.api.client.registry.entry.EntryRegistry.addEntry(EntryRegistry.java:108)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at eu.pb4.polymer.impl.client.compat.ReiCompatibility.update(ReiCompatibility.java:57)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at eu.pb4.polymer.impl.client.compat.ReiCompatibility.lambda$registerEvents$3(ReiCompatibility.java:34)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at eu.pb4.polymer.api.utils.events.SimpleEvent.invoke(SimpleEvent.java:26)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at eu.pb4.polymer.impl.client.networking.PolymerClientProtocolHandler.lambda$handleSearchRebuild$19(PolymerClientProtocolHandler.java:364)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at net.minecraft.class_1255.redirect$zhk000$redirectExecuteTask(class_1255.java:521)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at net.minecraft.class_1255.method_16075(class_1255.java:131)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at net.minecraft.class_1255.method_5383(class_1255.java:116)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at net.minecraft.class_310.method_1523(class_310.java:1129)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at net.minecraft.class_310.method_1514(class_310.java:768)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at net.minecraft.client.main.Main.method_44604(Main.java:244)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at net.minecraft.client.main.Main.main(Main.java:51)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at java.base/java.lang.reflect.Method.invoke(Method.java:578)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at org.quiltmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:423)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at org.quiltmc.loader.impl.launch.knot.Knot.launch(Knot.java:76)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at org.quiltmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:24)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at java.base/java.lang.reflect.Method.invoke(Method.java:578)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at org.polymc.impl.OneSixLauncher.invokeMain(OneSixLauncher.java:104)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at org.polymc.impl.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:175)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at org.polymc.impl.OneSixLauncher.launch(OneSixLauncher.java:185)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at org.polymc.EntryPoint.listen(EntryPoint.java:144)
[02:37:27] [Render thread/INFO]: [STDERR]: 	at org.polymc.EntryPoint.main(EntryPoint.java:74)
[02:37:47] [Render thread/INFO]: [STDERR]: java.util.concurrent.TimeoutException
[02:37:47] [Render thread/INFO]: [STDERR]: 	at java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1960)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2095)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.client.entry.filtering.FilteringContextImpl.handleResult(FilteringContextImpl.java:107)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.common.entry.type.PreFilteredEntryList.refilterNew(PreFilteredEntryList.java:176)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.common.entry.type.PreFilteredEntryList.addEntryAfter(PreFilteredEntryList.java:67)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.common.entry.type.EntryRegistryImpl.addEntryAfter(EntryRegistryImpl.java:182)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at me.shedaniel.rei.api.client.registry.entry.EntryRegistry.addEntry(EntryRegistry.java:108)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at eu.pb4.polymer.impl.client.compat.ReiCompatibility.update(ReiCompatibility.java:57)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at eu.pb4.polymer.impl.client.compat.ReiCompatibility.lambda$registerEvents$3(ReiCompatibility.java:34)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at eu.pb4.polymer.api.utils.events.SimpleEvent.invoke(SimpleEvent.java:26)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at eu.pb4.polymer.impl.client.networking.PolymerClientProtocolHandler.lambda$handleSearchRebuild$19(PolymerClientProtocolHandler.java:364)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at net.minecraft.class_1255.redirect$zhk000$redirectExecuteTask(class_1255.java:521)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at net.minecraft.class_1255.method_16075(class_1255.java:131)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at net.minecraft.class_1255.method_5383(class_1255.java:116)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at net.minecraft.class_310.method_1523(class_310.java:1129)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at net.minecraft.class_310.method_1514(class_310.java:768)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at net.minecraft.client.main.Main.method_44604(Main.java:244)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at net.minecraft.client.main.Main.main(Main.java:51)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at java.base/java.lang.reflect.Method.invoke(Method.java:578)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at org.quiltmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:423)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at org.quiltmc.loader.impl.launch.knot.Knot.launch(Knot.java:76)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at org.quiltmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:24)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at java.base/java.lang.reflect.Method.invoke(Method.java:578)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at org.polymc.impl.OneSixLauncher.invokeMain(OneSixLauncher.java:104)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at org.polymc.impl.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:175)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at org.polymc.impl.OneSixLauncher.launch(OneSixLauncher.java:185)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at org.polymc.EntryPoint.listen(EntryPoint.java:144)
[02:37:47] [Render thread/INFO]: [STDERR]: 	at org.polymc.EntryPoint.main(EntryPoint.java:74)

Also, that error from #41 happens after leaving the world, but it doesn't seem to affect anything.

Full log:
https://mclo.gs/TjccQ9Q

commented

It only seems to happen sometimes? It may be more likely when the Minecraft window is not focused while the world is loading.

commented

Does it prevent you joinging the world?

commented

No, it just freezes the game for about a minute (waiting for the timeout?)

commented

Looking that it worked before, it might be something within rei that broke... Polymer's integration with it had tendency to break because of some random changes in it... Try reporting that to them too.

commented

For the time being I disabled REI compatibility by default. It was always most problematic one with it's api behaviour always changing (working fine when originally written, but got worse and more broken over time without any changes on my side).

commented

I just got the issue in pure-REI code:

[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: java.util.concurrent.TimeoutException
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1960)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2095)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.client.entry.filtering.rules.ManualFilteringRule.prepareCache(ManualFilteringRule.java:77)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.common.entry.type.PreFilteredEntryList.onReFilter(PreFilteredEntryList.java:143)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.common.entry.type.EntryRegistryImpl.refilter(EntryRegistryImpl.java:130)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.common.entry.type.EntryRegistryImpl.endReload(EntryRegistryImpl.java:100)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at me.shedaniel.rei.api.common.registry.Reloadable.endReload(Reloadable.java:47)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at me.shedaniel.rei.impl.common.plugins.PluginManagerImpl.startReload(PluginManagerImpl.java:363)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at me.shedaniel.rei.RoughlyEnoughItemsCore._reloadPlugins(RoughlyEnoughItemsCore.java:123)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at me.shedaniel.rei.RoughlyEnoughItemsCoreClient.lambda$reloadPlugins$24(RoughlyEnoughItemsCoreClient.java:462)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
[06:57:37] [REI-ReloadPlugins/INFO]: [STDERR]: 	at java.base/java.lang.Thread.run(Thread.java:1589)

I think the only reason Polymer appeared was a concurrency coincidence.

commented

Hmm, good to know

commented

The issue here is REI's timeout for filtering is way to strict (10 seconds), I will increase the timeout so that more comparisons can be made, polymer can enable back the integration then.