[posila] [0.18.0] Crash: "TransportLineManager::update"

This subforum contains all the issues which we already resolved.
Post Reply
parkkk
Manual Inserter
Manual Inserter
Posts: 4
Joined: Sat Mar 02, 2019 7:49 am
Contact:

[posila] [0.18.0] Crash: "TransportLineManager::update"

Post by parkkk »

after i stopped playing 0.17 stable, i updated the game, turn on the game, and pressed continue button.
the game crashed
Attachments
factorio-current.log
(13.45 KiB) Downloaded 116 times

parkkk
Manual Inserter
Manual Inserter
Posts: 4
Joined: Sat Mar 02, 2019 7:49 am
Contact:

Re: [0.18.0] Crash: "TransportLineManager::update"

Post by parkkk »

0.18.0 server is the same
Attachments
factorio-current.log
(54.95 KiB) Downloaded 108 times

Loewchen
Global Moderator
Global Moderator
Posts: 8304
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: [0.18.0] Crash: "TransportLineManager::update"

Post by Loewchen »

Post the save please.

User avatar
boskid
Factorio Staff
Factorio Staff
Posts: 2240
Joined: Thu Dec 14, 2017 6:56 pm
Contact:

Re: [0.18.0] Crash: "TransportLineManager::update"

Post by boskid »

This crashes are most likely related to 79200 and may be "won't fix". Solution is to not remove mods that were defining 1x1 loaders using "loader" type

funkygerbil
Burner Inserter
Burner Inserter
Posts: 7
Joined: Tue Jan 08, 2019 8:29 am
Contact:

Re: [0.18.0] Crash: "TransportLineManager::update"

Post by funkygerbil »

I'm experiencing the same issue updating from 0.17 stable to 0.18.2:

1) Save in 0.17 stable
2) Update to 0.18.2
3) Update all mods
4) Launch 0.18.2
5) Load save game

Game crashes.
I've attached the logs/mod list and uploaded the save game: https://drive.google.com/file/d/1RMR13G ... rRBAJ/view

I'm aware of 79200 but please note that I haven't removed miniloader or any other mods. Problem is unchanged after reinstalling miniloader.

I hope that you can help, please let me know if you require any more information.
Attachments
mods.png
mods.png (33.01 KiB) Viewed 3477 times
factorio-dump-current.dmp
(805.97 KiB) Downloaded 90 times
factorio-current.log
(31.91 KiB) Downloaded 98 times

Rseding91
Factorio Staff
Factorio Staff
Posts: 13198
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [0.18.0] Crash: "TransportLineManager::update"

Post by Rseding91 »

The problem is the miniloader migration. There's no fix except to load the save in 0.17 with the right mods and delete all modded loaders from your world, save, and then load it in 0.18 or later.
If you want to get ahold of me I'm almost always on Discord.

User avatar
Deadlock989
Smart Inserter
Smart Inserter
Posts: 2528
Joined: Fri Nov 06, 2015 7:41 pm

Re: [0.18.0] Crash: "TransportLineManager::update"

Post by Deadlock989 »

There are several other mods which defined 1x1 loaders with a belt distance of 0 since 0.16.

Are all of those saved games now permanently blocked from running in 0.18 as well, short of deleting every 1x1 loader in your megabase by hand in 0.17? Seems a bit of a strange result from a change designed to prevent the corruption of saved games. You're going to get crash reports either way. I'd have preferred the status quo, which doesn't spoil existing saves unless you remove a mod from them, which is never going to pan out all that well.
Image

posila
Factorio Staff
Factorio Staff
Posts: 5201
Joined: Thu Jun 11, 2015 1:35 pm
Contact:

Re: [posila] [0.18.0] Crash: "TransportLineManager::update"

Post by posila »

I am still trying to look into this. But it is true the ability to set belt distance on loader prototype screwed up things a lot. In a long run it is better to have this resolved now.

posila
Factorio Staff
Factorio Staff
Posts: 5201
Joined: Thu Jun 11, 2015 1:35 pm
Contact:

Re: [posila] [0.18.0] Crash: "TransportLineManager::update"

Post by posila »

Sigh, what did I get into ...
The main issue I can see now is that migration just doesn't work when migrating between two transport belt connectable types. The problem is, the migration creates dummy entity to load old type and migrated entity at the same type and when loading finishes it deletes dummy entities (because during loading, other stuff might reference them, so everything needs to load first, so that references are properly cleared). This causes two transport belt connectable entities with overlapping connections to exist on the map. But that it forbidden to happen. I can fairly easily fix this at cost of losing items on transport belt lines that the dummy entity was part of, but it uncoveres deeper problem. You could make a save with overlapping belt and chest, and than add migration to migrate chests to belts, result in overlapping belts and corrupted save.

This is similar to the original problem of dummy entity having different belt distance than the original, causing overlapping belt connection points, corrupting the save. I don't know where does the TransportLineManager::update crash come from, I haven't managed to reproduce the crash yet.

(Oh, and I haven't even started to think about what happens to migrated pipes)

User avatar
Deadlock989
Smart Inserter
Smart Inserter
Posts: 2528
Joined: Fri Nov 06, 2015 7:41 pm

Re: [posila] [0.18.0] Crash: "TransportLineManager::update"

Post by Deadlock989 »

It feels like the cure was worse than the sickness, to be fair ...
Image

posila
Factorio Staff
Factorio Staff
Posts: 5201
Joined: Thu Jun 11, 2015 1:35 pm
Contact:

Re: [posila] [0.18.0] Crash: "TransportLineManager::update"

Post by posila »

Well, it was rotten all along and now we just stepped into it.

For 0.18.3, I applied bandaid solution that should get pre-0.18 saves migrated without corrupting the game state. But items on transport lines that go through the migrated loaders will be lost. I am leaving this open mainly because problem of migration of transport belt connectables potentially causing game state corruption was not fully fixed, and also it would be nice to have migration of items too, if possible.

User avatar
Deadlock989
Smart Inserter
Smart Inserter
Posts: 2528
Joined: Fri Nov 06, 2015 7:41 pm

Re: [posila] [0.18.0] Crash: "TransportLineManager::update"

Post by Deadlock989 »

posila wrote:
Thu Jan 30, 2020 3:26 pm
Well, it was rotten all along and now we just stepped into it.

For 0.18.3, I applied bandaid solution that should get pre-0.18 saves migrated without corrupting the game state. But items on transport lines that go through the migrated loaders will be lost. I am leaving this open mainly because problem of migration of transport belt connectables potentially causing game state corruption was not fully fixed, and also it would be nice to have migration of items too, if possible.
If the transport lines surrounding the loaders are preserved then losing a handful of items is a completely acceptable price to pay, thanks for looking into it.
Image

posila
Factorio Staff
Factorio Staff
Posts: 5201
Joined: Thu Jun 11, 2015 1:35 pm
Contact:

Re: [posila] [0.18.0] Crash: "TransportLineManager::update"

Post by posila »

It might be more than handful. In the worst case, the transport line spanned across many many belt tiles (up to 200, I think?)

User avatar
Deadlock989
Smart Inserter
Smart Inserter
Posts: 2528
Joined: Fri Nov 06, 2015 7:41 pm

Re: [posila] [0.18.0] Crash: "TransportLineManager::update"

Post by Deadlock989 »

Oh - the whole line. Yeah, that's not ideal. But still a massive improvement on having to rip up every loader in 0.17 and then replace them all by hand in 0.18.
Image

posila
Factorio Staff
Factorio Staff
Posts: 5201
Joined: Thu Jun 11, 2015 1:35 pm
Contact:

Re: [posila] [0.18.0] Crash: "TransportLineManager::update"

Post by posila »

So, in 0.18.4, migrating pre-0.18 saves will correctly migrate items on affected transport lines also. In the end I decided not to worry about cases of someone trying migrating 1x1 loader to 1x2 loader or non-transport-belt-connectible entity to transport belt connectible entity. If someone tries to do that, and it results in overlapping belt connections, there are consistency checks that will catch that.

Post Reply

Return to “Resolved Problems and Bugs”