×

INDI Library v2.0.6 is Released (02 Feb 2024)

Bi-monthly release with minor bug fixes and improvements

Dark Library acquisition crashes kstars

  • Posts: 985
  • Thank you received: 161
I repeated the test with the laptop and this time there were no issues at all. Will try to find out what went wrong yesterday.
2 years 9 months ago #72251

Please Log in or Create an account to join the conversation.

  • Posts: 985
  • Thank you received: 161
Today I re-visited the dark library feature and again it crashed when the first master dark was calculated. I tried a back-trace. Here's the output:

(gdb) run kstars
Starting program: /usr/bin/kstars kstars
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
QApplication::qAppName: Please instantiate the QApplication object first
[New Thread 0x7fffeefbe700 (LWP 12965)]
[New Thread 0x7fffee182700 (LWP 12966)]
Call to writableLocation without an application-based location.
[New Thread 0x7fffe68a3700 (LWP 12967)]
[New Thread 0x7fffe60a2700 (LWP 12968)]
[New Thread 0x7fffe58a1700 (LWP 12969)]
[New Thread 0x7fffe50a0700 (LWP 12970)]
[New Thread 0x7fffe489f700 (LWP 12971)]
[New Thread 0x7fffdb05b700 (LWP 12972)]
[New Thread 0x7fffda85a700 (LWP 12973)]
[New Thread 0x7fffda059700 (LWP 12974)]
[New Thread 0x7fffd9858700 (LWP 12975)]
[New Thread 0x7fffd9057700 (LWP 12976)]
[New Thread 0x7fffb3fff700 (LWP 12978)]
[New Thread 0x7fffabfff700 (LWP 12979)]
[New Thread 0x7fffa3fff700 (LWP 12980)]
[New Thread 0x7fffb1ffe700 (LWP 12981)]
[New Thread 0x7fffb1349700 (LWP 12982)]
[New Thread 0x7fffb0b48700 (LWP 12983)]
[New Thread 0x7fffa9b33700 (LWP 12988)]
[New Thread 0x7fffa9332700 (LWP 12989)]
[New Thread 0x7fffa8b31700 (LWP 12990)]
[New Thread 0x7fffa1e1f700 (LWP 12991)]
[New Thread 0x7fff7bfff700 (LWP 12992)]
[New Thread 0x7fffa1583700 (LWP 12993)]
[Thread 0x7fffa1583700 (LWP 12993) exited]
[Thread 0x7fffb1349700 (LWP 12982) exited]
[Thread 0x7fffa9332700 (LWP 12989) exited]
INDI::BaseClient::connectServer: creating new connection...
[New Thread 0x7fffa9332700 (LWP 12994)]
INDI::BaseClient::connectServer: Already connected.
INDI::BaseClient::connectServer: creating new connection...
[New Thread 0x7fffb1349700 (LWP 12995)]
INDI::BaseClient::connectServer: Already connected.
INDI::BaseClient::connectServer: creating new connection...
[New Thread 0x7fffa1583700 (LWP 12996)]
INDI::BaseClient::connectServer: Already connected.
[Detaching after fork from child process 12997]
[Detaching after fork from child process 12998]
[Thread 0x7fffb0b48700 (LWP 12983) exited]
[New Thread 0x7fffb0b48700 (LWP 12999)]
[Detaching after fork from child process 13001]
[Detaching after fork from child process 13002]
[Detaching after fork from child process 13003]
[Detaching after fork from child process 13004]
[Detaching after fork from child process 13007]

Thread 1 "kstars" received signal SIGSEGV, Segmentation fault.
0x00005555558f6855 in FITSData::constructHistogramInternal<unsigned short>()::{lambda()#2}::operator()() const (this=0x55555dd3d2a0) at /home/trifid/Astro/kstars/kstars/fitsviewer/fitsdata.cpp:3939
3939                                      static_cast<T>(rint((buffer - m_Statistics.min[n]) / m_HistogramBinWidth[n]))));
(gdb) bt
#0  0x00005555558f6855 in FITSData::constructHistogramInternal<unsigned short>()::{lambda()#2}::operator()() const (this=0x55555f72f290) at /home/trifid/Astro/kstars/kstars/fitsviewer/fitsdata.cpp:3939
#1  0x000055555593ea93 in QtConcurrent::StoredFunctorCall0<void, FITSData::constructHistogramInternal<unsigned short>()::{lambda()#2}>::runFunctor() (this=0x55555f72f270) at /usr/include/x86_64-linux-gnu/qt5/QtConcurrent/qtconcurrentstoredfunctioncall.h:70
#2  0x00005555558d3801 in QtConcurrent::RunFunctionTask<void>::run() (this=0x55555f72f270) at /usr/include/x86_64-linux-gnu/qt5/QtConcurrent/qtconcurrentrunbase.h:136
#3  0x00007ffff5165d62 in QThreadPoolPrivate::stealAndRunRunnable(QRunnable*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007ffff516a262 in QFutureInterfaceBase::waitForFinished() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00005555558d2ca1 in QFuture<void>::waitForFinished() (this=0x7fffffffcab0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qfuture.h:227
#6  0x00005555558f6f60 in FITSData::constructHistogramInternal<unsigned short>() (this=0x55555dd3d2a0) at /home/trifid/Astro/kstars/kstars/fitsviewer/fitsdata.cpp:3946
#7  0x00005555558e4d4f in FITSData::constructHistogram() (this=0x55555dd3d2a0) at /home/trifid/Astro/kstars/kstars/fitsviewer/fitsdata.cpp:3873
#8  0x0000555555b5d588 in Ekos::DarkLibrary::processNewImage(Ekos::SequenceJob*, QSharedPointer<FITSData> const&) (this=0x555559645610, job=0x55555f5c9aa0, data=...) at /home/trifid/Astro/kstars/kstars/ekos/auxiliary/darklibrary.cpp:753
#9  0x0000555555b7a756 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<Ekos::SequenceJob*, QSharedPointer<FITSData> const&>, void, void (Ekos::DarkLibrary::*)(Ekos::SequenceJob*, QSharedPointer<FITSData> const&)>::call(void (Ekos::DarkLibrary::*
)(Ekos::SequenceJob*, QSharedPointer<FITSData> const&), Ekos::DarkLibrary*, void**) (f=                                                                                                                                                                                       
   (void (Ekos::DarkLibrary::*)(Ekos::DarkLibrary * const, Ekos::SequenceJob *, const QSharedPointer<FITSData> &)) 0x555555b5d01e <Ekos::DarkLibrary::processNewImage(Ekos::SequenceJob*, QSharedPointer<FITSData> const&)>, o=0x555559645610, arg=0x7fffffffcf40)
   at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:152
#10 0x0000555555b78855 in QtPrivate::FunctionPointer<void (Ekos::DarkLibrary::*)(Ekos::SequenceJob*, QSharedPointer<FITSData> const&)>::call<QtPrivate::List<Ekos::SequenceJob*, QSharedPointer<FITSData> const&>, void>(void (Ekos::DarkLibrary::*)(Ekos::SequenceJob*, QSha
redPointer<FITSData> const&), Ekos::DarkLibrary*, void**) (f=                                                                                                                                                                                                                 
   (void (Ekos::DarkLibrary::*)(Ekos::DarkLibrary * const, Ekos::SequenceJob *, const QSharedPointer<FITSData> &)) 0x555555b5d01e <Ekos::DarkLibrary::processNewImage(Ekos::SequenceJob*, QSharedPointer<FITSData> const&)>, o=0x555559645610, arg=0x7fffffffcf40)
   at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:185
#11 0x0000555555b75693 in QtPrivate::QSlotObject<void (Ekos::DarkLibrary::*)(Ekos::SequenceJob*, QSharedPointer<FITSData> const&), QtPrivate::List<Ekos::SequenceJob*, QSharedPointer<FITSData> const&>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool
*) (which=1, this_=0x55555f6d3540, r=0x555559645610, a=0x7fffffffcf40, ret=0x0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:414                                                                                                                            
#12 0x00007ffff5356458 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x0000555555971908 in Ekos::Capture::newImage(Ekos::SequenceJob*, QSharedPointer<FITSData> const&) (this=0x55555dc34f70, _t1=0x55555f5c9aa0, _t2=...) at /home/trifid/Astro/kstars/build/kstars/KStarsLib_autogen/VONTORZADU/moc_capture.cpp:1248
#14 0x0000555555be3c39 in Ekos::Capture::setCaptureComplete() (this=0x55555dc34f70) at /home/trifid/Astro/kstars/kstars/ekos/capture/capture.cpp:1828
#15 0x0000555555be3441 in Ekos::Capture::processData(QSharedPointer<FITSData> const&) (this=0x55555dc34f70, data=...) at /home/trifid/Astro/kstars/kstars/ekos/capture/capture.cpp:1727
#16 0x0000555555c278de in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QSharedPointer<FITSData> const&>, void, void (Ekos::Capture::*)(QSharedPointer<FITSData> const&)>::call(void (Ekos::Capture::*)(QSharedPointer<FITSData> const&), Ekos::Capture*,
void**) (f=(void (Ekos::Capture::*)(Ekos::Capture * const, const QSharedPointer<FITSData> &)) 0x555555be27e0 <Ekos::Capture::processData(QSharedPointer<FITSData> const&)>, o=0x55555dc34f70, arg=0x7fffffffd330)                                                            
   at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:152
#17 0x0000555555c24657 in QtPrivate::FunctionPointer<void (Ekos::Capture::*)(QSharedPointer<FITSData> const&)>::call<QtPrivate::List<QSharedPointer<FITSData> const&>, void>(void (Ekos::Capture::*)(QSharedPointer<FITSData> const&), Ekos::Capture*, void**) (f=
   (void (Ekos::Capture::*)(Ekos::Capture * const, const QSharedPointer<FITSData> &)) 0x555555be27e0 <Ekos::Capture::processData(QSharedPointer<FITSData> const&)>, o=0x55555dc34f70, arg=0x7fffffffd330)
   at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:185
#18 0x0000555555c1df6b in QtPrivate::QSlotObject<void (Ekos::Capture::*)(QSharedPointer<FITSData> const&), QtPrivate::List<QSharedPointer<FITSData> const&>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*)
   (which=1, this_=0x55555dcdd5e0, r=0x55555dc34f70, a=0x7fffffffd330, ret=0x0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:414
#19 0x00007ffff5356458 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#20 0x00005555559905ea in ISD::CCD::newImage(QSharedPointer<FITSData> const&) (this=0x55555ebe1a10, _t1=...) at /home/trifid/Astro/kstars/build/kstars/KStarsLib_autogen/FRI4DANIHA/moc_indiccd.cpp:412
#21 0x0000555555a45d10 in ISD::CCD::processBLOB(_IBLOB*) (this=0x55555ebe1a10, bp=0x7fff6c013880) at /home/trifid/Astro/kstars/kstars/indi/indiccd.cpp:1652
#22 0x0000555555a30757 in INDIListener::processBLOB(_IBLOB*) (this=0x555559f46820, bp=0x7fff6c013880) at /home/trifid/Astro/kstars/kstars/indi/indilistener.cpp:439
#23 0x0000555555a342af in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<_IBLOB*>, void, void (INDIListener::*)(_IBLOB*)>::call(void (INDIListener::*)(_IBLOB*), INDIListener*, void**) (f=
   (void (INDIListener::*)(INDIListener * const, _IBLOB *)) 0x555555a30672 <INDIListener::processBLOB(_IBLOB*)>, o=0x555559f46820, arg=0x7fffffffd680) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:152
#24 0x0000555555a33b3e in QtPrivate::FunctionPointer<void (INDIListener::*)(_IBLOB*)>::call<QtPrivate::List<_IBLOB*>, void>(void (INDIListener::*)(_IBLOB*), INDIListener*, void**) (f=
   (void (INDIListener::*)(INDIListener * const, _IBLOB *)) 0x555555a30672 <INDIListener::processBLOB(_IBLOB*)>, o=0x555559f46820, arg=0x7fffffffd680) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:185
#25 0x0000555555a334bb in QtPrivate::QSlotObject<void (INDIListener::*)(_IBLOB*), QtPrivate::List<_IBLOB*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x55555d10ec50, r=0x555559f46820, a=0x7fffffffd680, ret=0x0)
   at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:414
#26 0x00007ffff5356458 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#27 0x000055555598da08 in ClientManager::newINDIBLOB(_IBLOB*) (this=0x55555d109f60, _t1=0x7fff6c013880) at /home/trifid/Astro/kstars/build/kstars/KStarsLib_autogen/FRI4DANIHA/moc_clientmanager.cpp:368
#28 0x0000555555a03988 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<_IBLOB*>, void, void (ClientManager::*)(_IBLOB*)>::call(void (ClientManager::*)(_IBLOB*), ClientManager*, void**) (f=
   (void (ClientManager::*)(ClientManager * const, _IBLOB *)) 0x55555598d9ae <ClientManager::newINDIBLOB(_IBLOB*)>, o=0x55555d109f60, arg=0x7fff6c00ebe0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:152
#29 0x0000555555a035d1 in QtPrivate::FunctionPointer<void (ClientManager::*)(_IBLOB*)>::call<QtPrivate::List<_IBLOB*>, void>(void (ClientManager::*)(_IBLOB*), ClientManager*, void**) (f=
   (void (ClientManager::*)(ClientManager * const, _IBLOB *)) 0x55555598d9ae <ClientManager::newINDIBLOB(_IBLOB*)>, o=0x55555d109f60, arg=0x7fff6c00ebe0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:185
#30 0x0000555555a030ed in QtPrivate::QSlotObject<void (ClientManager::*)(_IBLOB*), QtPrivate::List<_IBLOB*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x7fff88024150, r=0x55555d109f60, a=0x7fff6c00ebe0, ret=0x0)
   at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:414
#31 0x00007ffff5356d5a in QObject::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#32 0x00007ffff5d44a66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#33 0x00007ffff5d4e0f0 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#34 0x00007ffff532a93a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
--Type <RET> for more, q to quit, c to continue without paging--c
#35 0x00007ffff532d5b8 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#36 0x00007ffff5382f67 in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#37 0x00007ffff407b17d in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007ffff407b400 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007ffff407b4a3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#40 0x00007ffff5382565 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#41 0x00007ffff53294db in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#42 0x00007ffff5331246 in QCoreApplication::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#43 0x000055555564a8ed in main(int, char**) (argc=2, argv=0x7fffffffe0a8) at /home/trifid/Astro/kstars/kstars/main.cpp:393
(gdb)

The logfile is attached. Is there anything else I should try?
CS!
2 years 8 months ago #73577
Attachments:

Please Log in or Create an account to join the conversation.

Please post a link to the FITS file so I can re-create the crash.
2 years 8 months ago #73582

Please Log in or Create an account to join the conversation.

  • Posts: 985
  • Thank you received: 161
Where can I find these frames? All I can see are some master darks in ~/.local/share/kstars/darks
It appears the process does not crash 100% of the time.

 
2 years 8 months ago #73594

Please Log in or Create an account to join the conversation.

You can do a regular capture. I think this is a division by zero error.
2 years 8 months ago #73595

Please Log in or Create an account to join the conversation.

Ok I submitted a possible fix (if division by zero pans out), can you git pull and try again?
2 years 8 months ago #73597

Please Log in or Create an account to join the conversation.

  • Posts: 985
  • Thank you received: 161
I git-pulled and compiled but it crashed again. I created 5 .fits files with the same camera. Be aware the process does not fail 100% of the time so I *hope* these frames reproduce the issue. Otherwise... any chance to save the frames that actually triggered the error? Where are they saved (temporarily)?

www.file-upload.net/download-14638381/Dark.tar.gz.html
2 years 8 months ago #73600

Please Log in or Create an account to join the conversation.

  • Posts: 985
  • Thank you received: 161
I re-visited the issue, tried to take a dark library and found Ekos still crashes when calculating the very first master dark.
2 years 5 months ago #76135

Please Log in or Create an account to join the conversation.

Please upload some where else I tried like 3 times to download from there and it fails.
2 years 5 months ago #76208

Please Log in or Create an account to join the conversation.

  • Posts: 5
  • Thank you received: 1
I have the same problem.

Camera is a qhy2pro. It does not actually report a valid temperature in the fits file though, it just says 1e6. The camera doesn't have its own temperature sensor as thermoelectric cooler control is by an external box which doesn't talk to the camera.

Would be nice to see this feature working.
2 years 5 months ago #76605

Please Log in or Create an account to join the conversation.

  • Posts: 985
  • Thank you received: 161
Today I tested again. I git-pulled and compiled Indi and KStars for both server and client. I then started a dark library acquisition. 10 darks each for 1s -5s exposures in 0.5s increments, both 1x1 and 2x2bin modes. It took 9 minutes to acquire 180 images and compute the master darks. It finished without a problem. Immediately thereafter I connected a different client to the same server that was still running the same equipment. I started the exact same dark library acquisition job and It crashed at computation of the very first master dark. I restarted KStars, had another try with 5 darks each and it crashed again.

Both clients had git-pulled and compiled the same version of KStars, both are running Kubuntu 20.04. The only difference I can think of is one has an Intel i7 CPU, the other (failing) one an AMD Ryzen.

I recovered the 5 darks (the ones that caused the crash) from a /tmp directory and stored them here: www.sendspace.com/file/eec8el
 
2 years 5 months ago #77026

Please Log in or Create an account to join the conversation.

Thanks, I tried to create master darks a couple of times with the data you shared and couldn't reproduce the crash. Can you submit the backtrace for the last crash you got?
2 years 4 months ago #77041

Please Log in or Create an account to join the conversation.

Time to create page: 0.274 seconds