RandomPatches (Forge)

RandomPatches (Forge)

56M Downloads

Randompatches 1.15.2 - 1.21.1.2, com.mojang.authlib.GameProfile [....] lost connection: Timed out

Naheulf opened this issue ยท 68 comments

commented

Description of the Issue

Server connexion timed out. before timed out setting.

Steps to Reproduce the Issue

  1. Find an enough heavier modpack and/or a weak computer to be timed out when connecting to a server.
  2. Add random patch to the server
  3. Change keepAlivePacketInterval to 60 seconds
  4. reload random patch config.
  5. Try to connect to the server again

Expected Behavior

Client should connect to the server
or
Server timed out the client after the keepAlivePacketInterval set in randompatches.toml

Actual Behavior

Client is still timed out after 30 seconds

Note

I don't know if it's the same bug as #83
Modpack used on my computer / on the server is available on curse at https://www.curseforge.com/minecraft/modpacks/industrial-adventure-fr/files/2942219

commented

Kind of a shot in the dark, but could anyone check if the latest version fixes this?

commented

This is strange. I am unable to say if the patch works or not. (I installed the Beta version on both client and server and change config time out to 10x they normal values.)
Some times I am able to connect to the server.
But some times I was still disconnected by the server...

Server logs:
latest.log
debug.log

This patch should be used on server, client or both ?

commented

was going to update my pack today anyway so ill ask everyone if it works or not.

commented

I'm waiting for my testers!

commented

Looks like I'll have to try something else. The login/read timeout changes are server-sided.

commented

I've tried another fix, but this one has to be installed on the client as well.

commented

Yeah ! This one seem to works ! (At least for me)

BUT

The "/stop" command no longer works (I don't know if it's related to this fix or to previous fix). The server begin to stop but never kick connected players. And after players disconnected by themselves the server don't stop.

commented

Alright, I'll look at this again tomorrow. :)

commented

should i wait before updating then ?

commented

Does 1.15.2-1.21.1.5 work?

commented

Possible related issue in another mod: Lothrazar/Cyclic#1437

commented

So I get almost the same issue as I did with Cyclic: the client can't connect to the server over lan on the same machine, with nothing but the latest Random Patches beta loaded.

JustRandomPatches

Client log: https://paste.ee/p/XJmyT

Server log: https://paste.ee/p/t9f8Y

This was on a system with a slow CPU. I can test it more exhaustively on a different OS if needed.

commented

Update : Last night I failed to connect to the server when there were other players connected. Can #104 interfere with the results of my previous tests ? Since I can connect very few times without Randompatches.

commented

No, unless the default values are too small.

commented

Does 1.15.2-1.21.1.5 work?

Yup, that works for me, at least over LAN.

EDIT: I think my previous post may have been an issue with vanilla/MultiMC, as the server won't accept usernames that are too long, so disregard that.

commented

randompatches-1.15.2-1.21.1.5 , still having this issue with one of my users "[01:13:11] [Server thread/INFO] [minecraft/ServerLoginNetHandler]: com.mojang.authlib.GameProfile@4,properties={textures=[com.mojang.authlib.properties.Property@582ef98e]},legacy=false

also i looked at my server config its empty
only has this line

RandomPatches configuration

commented

Can you try resetting the configuration by deleting the file?

commented

it doesnt help every restart it wipes the config O_O
this also seems to happen on the dedicated server not test on virtual server on my pc

commented

Oh no, I must have screwed up somewhere.

commented

i got my friend to try with virtual server and my pack https://www.curseforge.com/minecraft/modpacks/forager-pack and still he gets timed out msg and wont allow to connect

commented

any news on this issue @TheRandomLabs ?

commented

Whoops, forgot about this. I'll look at it on the weekend. The configuration should not be being wiped...

commented

Thank you ๐Ÿ™ Hope it's and easy fix ๐Ÿคž๐Ÿคž

commented

Sorry for the delayed response, but have you ensured the encoding of the configuration file is UTF-8? If not, can you let me know what it is?
EDIT: The latest version should now print an error when the configuration is reset.

commented

Edit: Version 1.21.1.1 works, friend's join took 45 seconds

Still having issues with this. My friend gets disconnected at roughly 32 seconds every time with the following settings server & client:

keepAlivePacketInterval = 15
readTimeout = 240
loginTimeout = 2400
commented

We're seeing this on 1.22.0.0 as well, Valhelsia 2 modpack. Seems like if the client takes more than 60 seconds to load, they get timed out regardless of these values.

	keepAlivePacketInterval = 600
	readTimeout = 600
	loginTimeout = 1800

When first player joined I saw

[RandomPatches ServerLoginNetHandler Transformer]: Patching method: func_73660_a (func_73660_a)
[RandomPatches NettyCompressionDecoder Transformer]: Transforming class: net/minecraft/network/NettyCompressionDecoder
[RandomPatches NettyCompressionDecoder Transformer]: Patching method: decode (decode)

Then when any player joins after that (including that first player we see)

[Netty Server IO #9/ERROR] [minecraft/ArgumentTypes]: Could not serialize net.minecraftforge.server.command.ModIdArgument@42605ffd (class net.minecraftforge.server.command.ModIdArgument) - will not be sent to client!
[Netty Server IO #9/ERROR] [minecraft/ArgumentTypes]: Could not serialize com.blamejared.crafttweaker.impl.commands.CTCommands$$Lambda$16990/839869960@5c334d4d (class com.blamejared.crafttweaker.impl.commands.CTCommands$$Lambda$16990/839869960) - will not be sent to client!
 [Netty Server IO #9/ERROR] [minecraft/ArgumentTypes]: Could not serialize com.blamejared.crafttweaker.impl.commands.CTCommands$$Lambda$17012/982345380@7d3af13 (class com.blamejared.crafttweaker.impl.commands.CTCommands$$Lambda$17012/982345380) - will not be sent to client!
 [Netty Server IO #9/ERROR] [minecraft/ArgumentTypes]: Could not serialize net.minecraftforge.server.command.ModIdArgument@4f95534c (class net.minecraftforge.server.command.ModIdArgument) - will not be sent to client!
[Netty Server IO #9/ERROR] [minecraft/ArgumentTypes]: Could not serialize net.minecraftforge.server.command.EnumArgument@b1aa295 (class net.minecraftforge.server.command.EnumArgument) - will not be sent to client!
[Netty Server IO #9/ERROR] [minecraft/ArgumentTypes]: Could not serialize net.minecraftforge.server.command.EnumArgument@6cb94aa9 (class net.minecraftforge.server.command.EnumArgument) - will not be sent to client!
[Netty Server IO #9/ERROR] [minecraft/ArgumentTypes]: Could not serialize com.ldtteam.structurize.commands.arguments.MultipleStringArgument@570531ce (class com.ldtteam.structurize.commands.arguments.MultipleStringArgument) - will not be sent to client!

If we get lucky the load takes less than 60 seconds and we join.

commented

Does the issue persist if keepAlivePacketInterval is reverted to 15?
EDIT: I've tested on the latest version of Valhelsia 2, and setting keepAlivePacketInterval to 15 seemed to resolve this issue. I should probably make it clear that increasing it much is a bad idea.

commented
commented

So 1.22.0.0 doesn't work, and you're getting the same message in the log?

commented

Ah, if it still doesn't work at 15, then I'm stumped again.

commented

We started having the issue at 15 but for some reason
โ€ฆ

Can you test version 1.21.1.1 and see if that works for you like it did me?

commented

We're getting several support requests about this daily on the Valhelsia Discord (I'm one of the developers of the pack), and I'm thoroughly confused as to what the cause could be. Seems that players get disconnected at the one minute mark after clicking connect no matter what settings the config may have (tried lowering keepAlivePacketInterval back to 15). I've tried scouring debug logs to see if anything else might be messing with things, but it seems to be just the RandomPatches tweaks from what I can see.

Luckily most players don't take a full minute to connect, but for those who have lower end hardware, have a slow connection, or haven't setup memory allocation correctly, it can be quite the problem.

If you have any ideas, please let me know, we're pretty eager to resolve it but I'm struggling to figure it out on my own.

commented

Could you confirm that the disconnection message is the same as the one in the title of this issue?
It would make more sense if the disconnection occurred at 30 seconds, and I've been able to connect to a local Valhelsia server even after a minute of waiting, so I'll have to look deeper.

commented

[minecraft/ServerPlayNetHandler]: PlayerName lost connection: Timed out is the message in latest.log,

or [03Jul2020 16:44:56.516] [Server thread/INFO] [net.minecraft.network.login.ServerLoginNetHandler/]: com.mojang.authlib.GameProfile@11700e24[id=[UUID],name=PlayerName,properties={textures=[com.mojang.authlib.properties.Property@6aed25a4]},legacy=false] (/[IP]:59466) lost connection: Timed out in debug.log.

However, after looking through more logs, it seems the time isn't always 60 seconds. In some cases, it is indeed 30 seconds. I'm not sure why the different results for different players / servers, unless they have been messing with configs and haven't informed me.

I'll try to get a consistent way to reproduce it as soon as I have a spare moment.

commented

Can I have your configuration file? Also, in the console, when someone joins the server for the first time, something like this should appear:
image
Are there any errors around that?

Apologies for new ticket, failed to find this one!

I don't know if its of any use, but I never see anything like the above in the console when people are joining. I'll try changing the keepalive packet to 15 as its 30 currently, will update once any of my players turn up! (Is that only required server side?)

commented

Nah, it's all good; I should probably pin this one. ๐Ÿ˜„
Yeah, it's only required server-side.

commented

Two users so far did not time out on joining, early to say for sure but at the moment setting the keepalive to 15 appears to have had positive effect!

commented

No problems all day, happy that the keepalive setting was the problem.

@Vaelzan - I'm from Valhelsia pack (223 but still) and changing this setting on the server seems to have done the job for us.

commented

That's great news! That still means I have no idea what's going on with the other reports. ๐Ÿ˜›

commented

Sorry if this isn't relevant, but I'm running version 1.12.2-1.22.0.0 on my world and I'm experiencing the same issues as above, even with my keepAlivePacketInterval set to 15 as it's the default. I also don't get messages in the console from RandomPatches I believe

The console when a player fails to connect (Disconnected after about 30 seconds)
My config settings

My console doesn't show any of the errors from rpoly's post, regardless of whether or not it was the first player connecting to the server.

commented

Can I have a full debug.log if possible?

commented
commented

Thank you, this is an incompatibility with Ice and Fire. I'll fix it shortly. :)

commented

@SmokePuddingEveryday Should be fixed now.

commented

You're awesome, testing now!

commented

Though I hate to give a half-hearted "bump, same" this issue does seem to remain. I have been running a little private server I play with my friends and wife and found the oddest behaviours, my friends can join but my wife repeatedly gets (as far as the server log can tell me) a timeout, while her client simply says "Disconnected". I can't find anything in either log that sheds light on anything.

However, the time out does seem to roughly always be 30 seconds, no matter what the server/client has the values set to.

commented

this may be same issue users having been having in my modpack

commented

This may be relevant. It would appear Forge removed the configurability of fml.loginTimeout at some point.

MinecraftForge/MinecraftForge#4671

commented

@Zarkazm That's not relevant. :P
This is probably different to #83, but I'll check it out.

commented

Can I have your configuration file? Also, in the console, when someone joins the server for the first time, something like this should appear:
image
Are there any errors around that?

commented

Thank you!

commented

@TheRandomLabs bah, sorry bout that. Just something I found trying to google the error.

Also, not to hijack this person's ticket, but here's my relevant logs and config from IchigoGames' modpack. Same error as OP.

randompatches.zip

commented

this may need to be its own issue but it looks like the config is resting it self i change the from loginTimeout = 900 too loginTimeout = 1300 saved txt file then made sure it was uploaded to server then restarted server to find that after restart it was back to 900 as well as all the other changes i made.

commented

hope this helps been having this issue for a few weeks now. not for my self but for my players on modpack-server

commented

@IchigoGames I just changed the config values and it seems to stay.

Anyhow, I'd like to say that the steps to reproduce are probably wrong. This is because "keepAlivePacketInterval" sets how often the server requests a keepalive from the client, not how long before the server decides to time the client out (but maybe, the client is the one deciding to disconnect?)

The second thing is that the default value for the loginTimeout in the config is 900. As it turns out, this value is stored in ticks (or at least i assume so, because digging through the code of this mod, it's replacing some "600" with whatever is in the config, and 600 ticks = 30 secs). This means that it's actually 45 seconds, which isn't that much more than 30. That might be what's timing you out.
I've changed the config values and it went from timing my friends out to letting them in (granted I'm also messing with -Dforge.readTimeout, I'll try without it and let y'all know how it goes).

EDIT: Preliminary tests for removing -Dforge.readTimeout are failing. In forge, the readTImeout is stored in a static variable that reads forge.readTimeout, could it be that the mod can't set it since it's initialized too early?

EDIT 2: I need -Dforge.readTimeout, it doesn't work without it.

commented

@StevenDoesStuffs How do you use -Dforge.readTimeout ?

I tried without succes... :/

commented

@bribri69 Like that:
javaw -Xmx4G -Dforge.readTimeout=300 -jar minecraft_server.jar
But in my case the server is hosted by a GSP and I can't add it. And this is why i (try to) use Random patch to edit this value.

commented

@Naheulf I used like this but it didn't change anything... It's like forge don't understand and don't change anything...

commented

Yeah, @Naheulf is correct, I'm not sure it wouldn't be working. Maybe the fact that it worked for me was just a coincidence (we're dealing with timeouts, which are chaotic in nature). But the thing is, I had to add it to both server and client, so try that if you aren't already @bribri69.

commented

iv done that ^ and still no luck for the the People timing out.

commented

@StevenDoesStuffs Yes, I had it on server and client... Still the same...

commented

Sorry about neglecting this issue. I'll try to find some time to figure it out soon.

commented

So many people waiting for you !! XD

commented

If you need help testing the patch, I think there are plenty of volunteers. ;)

commented

^

commented

Yes please! My internet speeds tank every night due to high traffic and it makes joining my server really hard with the short login timeout :c. Once I'm in, however, I don't get timed out again until I respawn.

commented

I'm gonna make a new issue for this.

commented

I believe I am experiencing the same issue while running an ATM 5 server. Attached is the tail of my debug.log. I also did not get any Patching method entries.

debug_tail.log