I just went File -> Reset. 2019.1.1 here on Gentoo GNU/Linux. Backtrace:
#0 x86_64_fallback_frame_state (context=0x7fccdc7f5e30, context=0x7fccdc7f5e30, fs=0x7fccdc7f5f20) at ./md-unwind-support.h:63
#1 uw_frame_state_for (context=0x7fccdc7f5e30, fs=0x7fccdc7f5f20)
at /var/tmp/portage/sys-devel/gcc-9.3.0/work/gcc-9.3.0/libgcc/unwind-dw2.c:1265
#2 0x00007fcd8d220259 in _Unwind_Backtrace (trace=0x7fcd8d15bc20 <backtrace_helper>, trace_argument=0x7fccdc7f60e0)
at /var/tmp/portage/sys-devel/gcc-9.3.0/work/gcc-9.3.0/libgcc/unwind.inc:302
#3 0x00007fcd8d15bd98 in backtrace () from /lib64/libc.so.6
#4 0x000055b633e002c4 in segfault_handler(int) ()
#5 <signal handler called>
#6 0x00000000420de292 in ?? ()
#7 0x00007fcd8f854416 in osg::Group::insertChild(unsigned int, osg::Node*) () from /usr/lib64/libosg.so.160
#8 0x00007fcd90400f6c in SGTileDetailsCallback::generateRandomTileObjects(std::vector<SGTriangleInfo, std::allocator<SGTriangleInfo> >&, SGMaterialCache const*) () from /usr/lib64/libSimGearScene.so.2019.1.1
#9 0x00007fcd90401d01 in SGTileDetailsCallback::readNode(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osgDB::Options const*) () from /usr/lib64/libSimGearScene.so.2019.1.1
#10 0x00007fcd8ff26e70 in osgDB::DatabasePager::DatabaseThread::run() () from /usr/lib64/libosgDB.so.160
#11 0x00007fcd8f69c3a5 in OpenThreads::ThreadPrivateActions::StartThread(void*) () from /usr/lib64/libOpenThreads.so.21
#12 0x00007fcd8f53904a in start_thread () from /lib64/libpthread.so.0
#13 0x00007fcd8d14ea2f in clone () from /lib64/libc.so.6
Got a different crash on another reset:
Thanks for the report, there are unfortunartely a few different issues around reset. I see two basic kinds:
Unfortunately both of these are hard to track down : at the point it screws u,p, the problem happened 'some time before' in some other code. I though I had fixed the Nasal ones a few months ago but evidently not :(
Is the scenery still loading when you attempt the simulation reset? I'm
not sure how that scenario is handled by the pageLOD system we use.
-Stuart
ONe piece of good news : the Nasal fix was not in 2019.1.1 : can you test a development build? If not, 2020.1 will be out soon which includes the Nasal fix. Of course the OSG problem likely still exists unfortunatey.
@stuartbuchanan scenery loaded is stopped during reset. We also tell osgDB to stop all its loader thread(s), and we wait for that to happen (i.e all pending ReaderWriter XYZ is done), before we continue with staritng things up again.
I've just raised a separate ticket
https://sourceforge.net/p/flightgear/codetickets/2204/, which I now realize
may be related. I'm just seeing this on the carrier though.
-Stuart
What aircraft were you running, and was it JSBSim or YASim?
GDT Hornet, YASim
Please re-test on next with commits 297e5095762be2fc0fe7995f7115e2e58edb09ae (SimGear) and 06e6883396fef04caf8e6c54d1874de2b5581644 (flightgear) - will hopefully make a difference.