[2.0.29] Crash loading save from 2.0.28 - possibly fluid related
Posted: Wed Jan 08, 2025 8:58 am
I have a save file with ~300 hours of game time in it and since updating to 2.0.29 Factorio crashes when loading the save with the following log:
The save file works fine when opening in 2.0.28 and so this appears to be something introduced in the 2.0.29 update.
Code: Select all
14.236 Loading level.dat: 250794737 bytes.
14.242 Info Scenario.cpp:178: Map version 2.0.28-1
17.440 Info MapSetupHelper.cpp:674: Deleting 3 leaked electric networks
Factorio crashed. Generating symbolized stacktrace, please wait ...
/tmp/factorio-build-0ZJT18/src/Util/StacktraceToStream.cpp (52): walkStackAndPrintToStream
/tmp/factorio-build-0ZJT18/src/Util/StacktraceToStream.cpp (60): Util::printStacktraceToStream(WriteStream&)
/tmp/factorio-build-0ZJT18/src/Util/Logger.cpp (334): Logger::writeStacktrace(WriteStream*, StackTraceInfo*)
/tmp/factorio-build-0ZJT18/src/Util/Logger.cpp (379): Logger::logStacktrace(StackTraceInfo*)
/tmp/factorio-build-0ZJT18/src/Util/Logging.cpp (103): Logging::logAndAbortOrThrow(char const*, unsigned int, LogLevel, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
/tmp/factorio-build-0ZJT18/src/Util/Logging.cpp (95): Logging::logAndAbortOrThrow(char const*, unsigned int, LogLevel, char const*, ...)
/tmp/factorio-build-0ZJT18/src/Util/ReleaseAssert.cpp (7): ReleaseAssertFailed(char const*, unsigned int, char const*)
/tmp/factorio-build-0ZJT18/src/Fluid/FluidBuffer.cpp (136): FluidBuffer::setVolume(FixedPointNumberTemplate<long, 24u, true>)
/tmp/factorio-build-0ZJT18/src/Fluid/FluidBuffer.cpp (134): FluidBuffer::setVolume(FixedPointNumberTemplate<long, 24u, true>)
/tmp/factorio-build-0ZJT18/src/Fluid/FluidSegment.cpp (273): FluidSegment::removeFluidBoxForMigration(FluidBox*)
/tmp/factorio-build-0ZJT18/src/Map/MapSetupHelper.cpp (415): MapSetupHelper::migrateFluidBoxes()
/tmp/factorio-build-0ZJT18/src/Map/MapSetupHelper.cpp (183): MapSetupHelper::MapSetupHelper(Map&, MapDeserialiser*, bool, ProgressObserver*)
/tmp/factorio-build-0ZJT18/src/Map/Map.cpp (828): Map::setupEntities(Map&, MapDeserialiser*, bool, ProgressObserver*)
/tmp/factorio-build-0ZJT18/src/Scenario/Scenario.cpp (330): Scenario::loadFactory(MapInterface, Filesystem::Path const*, Filesystem::Path const&, ScenarioExecutionContext, LoadType, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, ProgressObserver*, bool, InputListener*)
/tmp/factorio-build-0ZJT18/src/Scenario/ParallelScenarioLoader.cpp (192): ParallelScenarioLoader::doLoad(MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>)
/opt/gcc-13.2.0/include/c++/13.2.0/bits/invoke.h (61): void std::__invoke_impl<void, void (*)(MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>), MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>::Enum>(std::__invoke_other, void (*&&)(MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>), MapInterface&&, ParallelScenarioLoader*&&, MapDeserialiser*&&, InputType&&, InputSource*&&, MultiplayerManagerBase*&&, NamedBool<EnableReplayTag>::Enum&&)
/opt/gcc-13.2.0/include/c++/13.2.0/bits/invoke.h (96): std::__invoke_result<void (*)(MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>), MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>::Enum>::type std::__invoke<void (*)(MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>), MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>::Enum>(void (*&&)(MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>), MapInterface&&, ParallelScenarioLoader*&&, MapDeserialiser*&&, InputType&&, InputSource*&&, MultiplayerManagerBase*&&, NamedBool<EnableReplayTag>::Enum&&)
/opt/gcc-13.2.0/include/c++/13.2.0/bits/std_thread.h (292): void std::thread::_Invoker<std::tuple<void (*)(MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>), MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>::Enum> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul, 5ul, 6ul, 7ul>(std::_Index_tuple<0ul, 1ul, 2ul, 3ul, 4ul, 5ul, 6ul, 7ul>)
/opt/gcc-13.2.0/include/c++/13.2.0/bits/std_thread.h (299): std::thread::_Invoker<std::tuple<void (*)(MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>), MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>::Enum> >::operator()()
/opt/gcc-13.2.0/include/c++/13.2.0/bits/std_thread.h (244): std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>), MapInterface, ParallelScenarioLoader*, MapDeserialiser*, InputType, InputSource*, MultiplayerManagerBase*, NamedBool<EnableReplayTag>::Enum> > >::_M_run()
/tmp/tmp.dlP10F34z6/objdir/../gcc-13.2.0/libstdc++-v3/src/c++11/thread.cc (104): execute_native_thread_routine
./nptl/pthread_create.c (442): start_thread
0x7a5275d2684f
0xffffffffffffffff
Stack trace logging done
18.342 Error FluidBuffer.cpp:136: volume >= ZERO_FLUID was not true
18.342 Error CrashHandler.cpp:643: Received 6
Logger::writeStacktrace skipped.
18.342 Error Util.cpp:95: Unexpected error occurred. If you're running the latest version of the game you can help us solve the problem by posting the contents of the log file on the Factorio forums.
Please also include the save file(s), any mods you may be using, and any steps you know of to reproduce the crash.
20.555 Info SystemUtil.cpp:871: Started /usr/bin/xdg-open; trampoline PID: 1946284
20.555 Uploading log file