News:

Do you need help?
Simutrans Wiki Manual can help you to play and extend Simutrans. In 9 languages.

[Bug] time_interval -> absolute_block issues in rare cases

Started by Mariculous, August 27, 2019, 10:15:35 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Mariculous

Hey there,
I had some deadlocking always happening at the same place on my map at random times.
I still don't know how to reproduce this, nor I saw this bug in action, yet I have only sen the result of it, so I did not yet file a bug report, but maybe someone already had the same problem and could help me reliably reproducing this.

For better understanding of the description, please have a look at the image.
For some reason at rare times, there will be a short local train standing in "Mainau Nordbahnhof" waiting for clearance while the longer regional train behind it, which should not be allowed to be in that block at the same time is reserving the tile just in front of the short local train.
For that reason both trains will be waiting for clearance infinitely.
What is interesting is the absolute block stop signal in front of that block is still showing CLEAR so I expect this signal to cause the problem.

In the image you can see the block reservation of the local train as a green box, the route it wants to use as a green line, the block reservation of the regional train in orange, the block reservation of yet another train in teal, place where a token block signal is placed behind that house and the CLEAR showing absolute block signal which I expect to cause this situation.


Matthew

Thank you for explaining the situation so clearly. I am not very good at signalling, but even I could understand the problem. :)

It sometimes seems to me that the game behaves as though there are signals before/after platforms even if you have not built a signal there. So my guess is that maybe the green train reserved two tiles while it was waiting and the game considered them as controlled by the platform, rather than by the teal absolute signal? Just a guess from someone who finds signalling difficult.
(Signature being tested) If you enjoy playing Simutrans, then you might also enjoy watching Japan Railway Journal
Available in English and simplified Chinese
如果您喜欢玩Simutrans的话,那么说不定就想看《日本铁路之旅》(英语也有简体中文字幕)。

Mariculous

Well after having a short look at signalling code, I did not try to understand how it works so I can't tell what exactly could be happening there, I can just tell what I see.

Jando

Perhaps you can post a saved game or at least a larger screen shot. I wonder whether all the trains you mention are actually running in absolute block, did you check? The screen shot is likely not telling the whole picture.

From that screen shot I find the visible one way signs odd, I wonder whether one of the trains entered the station via paths not intended.

Mariculous

An update on this:
Both trains are coming from the the same station, the "Westbahnhof", which is not on the image. That one still uses time_interval_signaling as their station exit signals.
The green train being blocked in the station is in drive_by_sight but this should not be a problem

Still trying to reproduce this, but it only happens every few months, so it's very unlikely to see this in action...

All I have seen yet is a train in time_intervall correctly passing the absolute block signal, when the track behind it was CLEAR, so everything is fine yet but not switching to absolute_block, instead it stayed in time_interval mode.

I will upgrade the time_interval signals to absolute block. If the problem does not appear in the next, say 2 years, we can expect this bug to be related to time_interval -> absolute_block mode switching.

Mariculous

#5
Reproduced this on a smaller, not yet minimal setup.

Stil can't tell the exact cause of the deadlock, however I guess the save will help.
An exact analysis of what happens will follow as soon as I have isolated the bug.
https://dome.xileks.de/simutrans/save/signal_bugs_v2.0.sve


I have isolated a signalling bug, but there is no mistakenly CLEAR showing absolute block signal in it but I highly expect it to be related to what had happened on my map, so I renamed this thread.

https://dome.xileks.de/simutrans/save/signal_bugs_v2.1.sve
Simply load the game and observe "land stop 4 Railway Station"
On map load situation:
A regional train, R1, is waiting a few more seconds for schedule in absolute block working method.
Behind that train there are two local trains. The first, L1, is waiting in absolute block working method at the signal, the second, L2, is waiting in drive_by_sight because these two had come to an emergency halt before.

What happens now:
1. R1 will depart correctly in absolute block method.
2. L1 will enter, come to a halt at the station and depart it correctly in absolute block method.
3. L2 will enter and come to a halt at the station in absolute block working method.
4. While L2 is loading, another regional train, R2, will move towards that station in time interval working method, not breaking down for the absolute block signal when it is at DANGER state.
5. While passing it will correcty switch to absolute block working method and reserve up to the end of the station.
6. L2 is ready to depart, so it switches to drive by sight but can't continue to the station exit signal because that tile is already reserved by R2.
Deadlock.

Jando

Quote from: Freahk on September 03, 2019, 09:49:34 AM
https://dome.xileks.de/simutrans/save/signal_bugs_v2.1.sve
Simply load the game and observe "land stop 4 Railway Station"

Apache Server at dome.xileks.de Port 443:
The requested URL /simutrans/save/signal_bugs_v2.1.sve was not found on this server.

Mariculous

Sorry about it :(
There is some maintainance going on of which I was not informed before...
I expect it to be back this afternoon.

I'll move it all to a new server. Not sure when it will be back as moving my simutrans server including saves is no the highest priority, but I expect it to be ready tomorrow.

I'll tell you when it's back.


Ranran(retired)

In Extended, a shorter convoy than the length of the stop can be stopped on the near side.
I think this is caused by the position of the convoy stopped at the station one tile before the signal.
It seems that the station signal may not work correctly in that case.

EDIT:
It seems that this is not intentionally stopped at that position according to the schedule, but has stopped in near side due to another issue.
ひめしという日本人が開発者達の助言を無視して自分好みの機能をextendedに"強引に"実装し、
コードをぐちゃぐちゃにしてメンテナンスを困難にし(とりわけ道路と建物関連)、
挙句にバグを大量に埋め込み、それを知らんぷりして放置し(隠居するなどと言って)別のところに逃げ隠れて自分のフォーク(OTRP)は開発を続けている
その事実と彼の無責任さに日本人プレイヤーは目を向けるべき。らんらんはそれでやる気をなくした(´・ω・`)
他人の振り見て我が振り直せ。ひめしのようにならないために、らんらんが生み出したバグや問題は自分で修正しなくちゃね(´・ω・`)