News:

Simutrans Tools
Know our tools that can help you to create add-ons, install and customize Simutrans.

Direct route information lost after a while

Started by DrSuperGood, December 24, 2017, 05:31:53 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

DrSuperGood

This may or may not be related. If the server game is allowed to run for a while without a save/load cycle then some of the "direct route" information for some stops seems to be lost. A passenger line still connects the stop with another stop but the other stop has no direct route listing and no passengers seem to use the line. After a save/load cycle it seems to be fixed.

jamespetts

I have split this post from the other thread because this appears to be a separate bug report. I should be grateful if people could post each bug report in its own thread (even where it might possibly, but is not certainly, related to another bug), as I need to fix each bug one by one and see clearly a complete list of each remaining bug in the development section.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Jando

I see this bug as well, screenshot of an occurrence is here: http://files.simutrans.com/index.php/s/1QakTovKhuD3hSl

Notes:
1. Stop is brand-new, less than a game-hour old.
2. Stop is served by one line, this line does not carry very-low class passengers.
3. Save/load cycle clears the bug.

jamespetts

Thank you for that. I will have a look at that when I get home from my Christmas holiday next week. In the meantime, can you elaborate on the steps necessary to reproduce this reliably in a specific place? For example, if I load the game and run it for a certain amount of time, are there specific stops where this reliably occurs to specific direct connexions?
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Jando

Quote from: jamespetts on January 03, 2018, 02:03:46 PM
Thank you for that. I will have a look at that when I get home from my Christmas holiday next week. In the meantime, can you elaborate on the steps necessary to reproduce this reliably in a specific place? For example, if I load the game and run it for a certain amount of time, are there specific stops where this reliably occurs to specific direct connexions?

Thanks for your answer, James, and a happy new year to you! Please enjoy your holidays!

I don't know how to reproduce this bug sadly. However, I don't believe it's related to amount of time a game is running, in my case it was running for perhaps 30 minutes real life time. :)

in this case I loaded my saved game, used the public player to build a MacAdam road to the smallish town Alderhill I wanted to connect, then switched to my player and built the stops, made the line and bought the first convoys for it. I kept up the stop information window for the new stop Alderhill and sooner or later a few passengers showed up there. To check for another bug related to new stops (I still need to post about that bug, that one can be reproduced but I need some time to create a good test case) I checked multiple other stations.

Then I noticed that passengers created at the new stop Alderhill seemed to be single-way only, i.e. I saw passengers from Alderhill to stop A and B but not passengers from A and B to Alderhill. That's why I checked the detail information for Alderhill and noticed that the direct route information was missing/gone.

jamespetts

Without a means of reproducing this reliably, my chance of being able to find and fix it is extremely small.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

DrSuperGood

It seems very common. If one lets the server run for an hour or two without interruptions one will eventually find lines not working.

Possibly some sort of corruption? Maybe log when direct route entries are destroyed. It seems viable as they should be seldom destroyed (only on reload,  line withdraw and stop destruction, things that are human controlled).

Spenk009

The "rebuild connexions" is stuck on 1024 in all savegames I have handy. Shouldn't this change depending on the size of the game/connections? It is initialized as uint32, which is a bit more than that.

jamespetts

Quote from: Spenk009 on January 04, 2018, 05:15:28 PM
The "rebuild connexions" is stuck on 1024 in all savegames I have handy. Shouldn't this change depending on the size of the game/connections? It is initialized as uint32, which is a bit more than that.

I have checked whether this is preventing any connexions from being rebuilt, and it appears that it is not.

The only way that I will have of solving this problem is if I can recreate the circumstances in which it occurs reliably on a specific line/convoy. I need to be able to know in advance which lines/convoys will be affected so that I can use the debugger to see the process of it going wrong. It already having gone wrong does not enable me to deduce how it went wrong.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

DrSuperGood

#9
The problem is that there seems to be no trigger. It just happens randomly after some time. Hence one needs to first try to find out the cause and then one can try to recreate it.

I have not seen it for a while now, but that can also be due to players rejoining/loading as every time that happens the direct route information is fixed.

jamespetts

Quote from: DrSuperGood on January 11, 2018, 12:27:34 AM
The problem is that there seems to be no trigger. It just happens randomly after some time. Hence one needs to first try to find out the cause and then one can try to recreate it.

I do not know of any method of finding the cause of a complex bug like this that I cannot recreate. Do you have any suggestions as to methods that might productively be employed in this regard?
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

DrSuperGood

Possibly monitor for "direct route" destructions at stops. These should only occur if player interaction is involved (line/rolling stock/stop changes) or the map is being destroyed. Hence if one were to get a complex game such as one of the servers, run it fast forward without interaction for some length of time while breaking when a "direct route" destruction occurs then one might be able to catch it happening in the act. This might not reveal the exact cause, but might hint as to what it could be or at least suggest a possible fix.

If that reveals nothing then this probably has to be demoted to a low priority bug fix. It occurs so rarely and randomly it is probably not worth any more effort to solve for now.

jamespetts

The trouble is that the path explorer works by periodically clearing all the data and recalculating them afresh, so the data being cleared when the path explorer runs is normal.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

ACarlotti

I believe I can reliably reproduce this bug. Savegame is https://simutrans-germany.com/files/upload/temp-load-missing-routes.sve

Steps to reproduce:
Locate Newton in the NW corner of the map, and Newton Copse Stop on the west coast of the island (amusingly, but irrelevantly, Newton has also expanded onto the nearby mainland).
Locate "(541) Humber Keel ...", which is currently passing round the NE corner of Newton heading towards Newton Dock.
Locate the shipyard near Torlock (about 30 tiles SE of Newton Dock)
1. Open the schedule for (541) Humber Keel and promote it to a line. Close the schedule.
2. Create a new Humber Keel (passengers and mail) in the dockyard, and assign it to the above line.
3. Reopen the schedule for (541) Humber Keel and remove the first two stops. Close the schedule.
4. Open the schedule for the new ship in the dockyard, and add stops at Newton dock and at Newton Fields dock (by the farm to the north). Then delete the first 5 (previously existing) stops and start the ship.
5. Shortly after starting this ship, observe that the journey information at Newton Copse Stop is lost (and perhaps everywhere on the Hackney Carriage lines in both Newton and Torlock). The journey information is missing from about 5:26 (when it was triggered) until about 0:01:00 the following month.


As a general note, I have frequently observed journey information missing from stops, always on the hackney carriage lines in Newton and Torlock, although that may just be because it's more noticeable when the lost information causes passengers to abandon a stop and a previously overcrowded stop becomes empty. This is, hoewever, the first time I've noticed it so soon after loading the game.

(I encountered this with a build and pakset from a few days/a week ago, and have retested it with the build/pakset from the 13th. I also tested it without the schedule modifications above, and the bug is not immediately triggered.)

jamespetts

I am afraid that I am not able to download the file: I get an error message when I click on the link. I think that links on that site expire after a while, and I am afraid that I was not able to get around to looking into this problem until now.

Would you be able to re-upload the file? I should be most grateful.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

ACarlotti

#15
It should be present again here, but for some reason it's set to expire after 24 hours (even though I had 60 days selected when uploading). I think maybe I'm misunderstanding the system.

https://simutrans-germany.com/files/upload/temp-load-missing-routes.sve

Edit: Reuploaded (17:45 Monday), although I still haven't worked out the site well enough to get more than 24 hours.

jamespetts

Thank you - I have downloaded this now. It might take me a while to get around to looking into this, as this is a particularly tricky sort of problem to investigate.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.