I haven't flown the MiG-15 update I'm working on for a while, and now -next crashes with it:
https://gitlab.com/mdanil/MiG-15/-/tree/feature/instrumentation
#0 0x0000555555c26c38 in FGReplay::update(double) ()
#1 0x00005555565768ba in SGSubsystemGroup::Member::update(double) ()
#2 0x000055555657b76e in SGSubsystemGroup::update(double) ()
#3 0x0000555556572383 in SGSubsystemMgr::update(double) ()
#4 0x000055555630dd4b in fgMainLoop() ()
#5 0x0000555556276d69 in fgOSMainLoop() ()
#6 0x0000555556313a7d in fgMainInit(int, char**) ()
#7 0x0000555555b7e15b in main ()
Replay settings in .fgfsrc:
--prop:/sim/replay/buffer/high-res-time=60.0
--prop:/sim/replay/buffer/medium-res-time=600.0
--prop:/sim/replay/buffer/medium-res-sample-dt=0.1
--prop:/sim/replay/buffer/low-res-time=605.0
--prop:/sim/replay/buffer/low-res-sample-dt=5.0
Full GDB output: https://pastebin.com/raw/h6u5w6xS
Most likely caused by commit
d4b1e42b8 2020-03-25 Fix playback duration during replay [Lars Toenning]I think there is a mismatch between what is declared first (
/sim/replay/duration-act) and what is used inupdate()(/sim/replay/duration), but I am not sure which is right.Please close this one: reverting the commit does not help, and the crash seems to spontaneously disappear and reappear; somehow it has only happened in multiplayer. Something else must be corrupting replay system just by chance.
Sorry, I forgot I had my revert commit still on. So indeed that commit I mentioned before does cause this crash.
(Deleted. Sorry, this one was false info again because I'm not only blind but also stupid asf.)
Last edit: Anonymous 2020-05-10
Tried to reproduce this just now, but I don't see it: do I need to use those arguments, or fly for a longer period of time before activating replay?
Strangely, neither can I now -- I'd been sitting for several hours last weekend waiting for it to happen. But it happened a few times in a row back when I found it the weekend before that.
I will try to wait some more, maybe it's ok to re-close it if it never happens again.
No activating the replay: the few times the crash happened was when taxiing / shortly after take-off in MiG-15, on MP with an ATC and some other planes in the area. That's what makes it especially confusing.
Just to make sure: you did not open the reply window, or activate it, at all, in the times where the crash occurred? That is very strange.
Yes, not at all. There's a chance something in the MiG-15's Nasal-spaghetti, that I've only began sorting out and replacing, is abusing replay system -- I will look for it.
Checked, the only thing MiG-15's Nasals do is a few getprop() and one setlistener() on "sim/replay/replay-state", that must not be the reason either.
Closing this one for now, because I haven't ever had it again all this time. Possibly caused by GDB stopping on normally non-fatal signals, like one of the other bugs I had filed at the time.
Diff:
It turns out the crash is legit but very very rare, and the misconfig of GDB was just a red herring.
Recently I had 2020.3 crash when loading a replay tape (with a different aircraft), with the same backtrace (see attachment). It is not possible to check 2020.4 because it seems that the tape format has changed.
It seems to be as old as 2016: https://bugzilla.redhat.com/show_bug.cgi?id=1305676
Last edit: Anonymous 2021-08-29
The intention was for 2020.4 to be able to load old tapes; could you make the tape file available?
Thanks,
Sorry I somehow did not see the message, I will get back to this on the weekend.