wolveix / satisfactory-server

A Dockerized version of the Satisfactory dedicated server
https://hub.docker.com/r/wolveix/satisfactory-server
MIT License
1.41k stars 155 forks source link

Server error after new U5 Experimental update on restart #74

Closed sciro-de closed 3 years ago

sciro-de commented 3 years ago

Hi, the server was working like a charm the last week, but there was a new update so I restarted the container, now the Server doesnt wanna boot up, the log shows the following:

`[2021.11.04-05.45.47:654][ 0]LogOnline: Display: STEAM: OnlineSubsystemSteam::Shutdown()

CommonUnixCrashHandler: Signal=11

[2021.11.04-05.45.47:671][ 0]LogCore: === Critical error: ===

Unhandled Exception: SIGSEGV: invalid attempt to write memory at address 0x0000000000000003

[2021.11.04-05.45.47:671][ 0]LogCore: Fatal error: [File:D:/ws/SB-160502110050-fad/UE4/Games/FactoryGame/Source/FactoryGame/Private/Server/FGServerQuerySocket.cpp] [Line: 25]

Could not bind address '0.0.0.0:15777'. Server cannot continue initialization.

0x00007ffa64d26665 libUE4Server-FactoryGame-Linux-Shipping.so!FServerQuerySocket::Init() [D:/ws/SB-160502110050-fad/UE4/Games/FactoryGame/Source/FactoryGame/Private/Server/FGServerQuerySocket.cpp:25]

0x00007ffa94302a14 libUE4Server-Core-Linux-Shipping.so!FRunnableThreadPThread::Run() [D:/ws/SB-160502110050-fad/UE4/Engine/Source/Runtime/Core/Private/HAL/PThreadRunnableThread.cpp:16]

0x00007ffa942cad63 libUE4Server-Core-Linux-Shipping.so!FRunnableThreadPThread::_ThreadProc(void*) [D:/ws/SB-160502110050-fad/UE4/Engine/Source/Runtime/Core/Private/HAL/PThreadRunnableThread.h:185]

0x00007ffa948c8fa3 libpthread.so.0!UnknownFunction(0x7fa2)

0x00007ffa9073d4cf libc.so.6!clone(+0x3e)

0x00007ffa942abeb6 libUE4Server-Core-Linux-Shipping.so!FGenericPlatformMisc::RaiseException(unsigned int) [D:/ws/SB-160502110050-fad/UE4/Engine/Source/Runtime/Core/Private/GenericPlatform/GenericPlatformMisc.cpp:472]

0x00007ffa9444732b libUE4Server-Core-Linux-Shipping.so!FOutputDevice::LogfImpl(char16_t const*, ...) [D:/ws/SB-160502110050-fad/UE4/Engine/Source/Runtime/Core/Private/Misc/OutputDevice.cpp:61]

0x00007ffa64d26665 libUE4Server-FactoryGame-Linux-Shipping.so!FServerQuerySocket::Init() [D:/ws/SB-160502110050-fad/UE4/Games/FactoryGame/Source/FactoryGame/Private/Server/FGServerQuerySocket.cpp:25]

0x00007ffa94302a14 libUE4Server-Core-Linux-Shipping.so!FRunnableThreadPThread::Run() [D:/ws/SB-160502110050-fad/UE4/Engine/Source/Runtime/Core/Private/HAL/PThreadRunnableThread.cpp:16]

0x00007ffa942cad63 libUE4Server-Core-Linux-Shipping.so!FRunnableThreadPThread::_ThreadProc(void*) [D:/ws/SB-160502110050-fad/UE4/Engine/Source/Runtime/Core/Private/HAL/PThreadRunnableThread.h:185]

0x00007ffa948c8fa3 libpthread.so.0!UnknownFunction(0x7fa2)

0x00007ffa9073d4cf libc.so.6!clone(+0x3e)

[2021.11.04-05.45.47:681][ 0]LogExit: Executing StaticShutdownAfterError

Engine crash handling finished; re-raising signal 11 for the default handler. Good bye.

/home/steam/init.sh: line 54: 36 Segmentation fault Engine/Binaries/Linux/UE4Server-Linux-Shipping FactoryGame -log -NoSteamClient -unattended

Experimental flag is set. Experimental will be downloaded instead of Early Access.

Checking available space...

Downloading the latest version of the game...

Redirecting stderr to '/home/steam/Steam/logs/stderr.txt'

[ 0%] Checking for available updates...

[----] Verifying installation...

Steam Console Client (c) Valve Corporation

-- type 'quit' to exit --

Loading Steam API...OK`

Will provide more information later if needed, have to hurry out of house to work now :(

CoMPaTech commented 3 years ago

I have the same issue, but I think it's the dedicated server itself, not the container environment.

sciro-de commented 3 years ago

It indeed is, it's related to the new IPv6 support....

https://questions.satisfactorygame.com/post/61830560831c852052359b1c

There is a workaround, I just dont know how to apply it with docker :/

CONFIRMED WORKAROUND: In order to work around this, you need to supply "-MultiHome=0.0.0.0" (w/o quotes) to the execution command. You may need to use the server's IP instead of 0.0.0.0, e.g. "-MultiHome=123.123.123.123". For docker containers, you will need to find the command and edit the containers entrypoint with a new command appending the MultiHome parameter to it.

wolveix commented 3 years ago

This has already been added to the container, per the latest commit. So I'm not sure why it's working for some people but not others.

Unfortunately, I'm out today and won't be able to get to this until tomorrow. I did draft a commit to make this configurable a few days ago (along with the beacon and query ports), but haven't pushed it. If someone else wants to tackle this before tomorrow and submit a PR, I'd greatly appreciate it!

sciro-de commented 3 years ago

It it working for me now, I first turned off my container with docker-compose down and just manually used docker pull wolveix/satisfactory-server:latest and then docker-compose up -d.

Maybe dockerhub is slow? If i search for the satisfactory container it says "Updated 3 days ago" on the list view...

Sorry for the trouble :X And thanks for your reply

CoMPaTech commented 3 years ago

Confirmed, good find @sciro-de