Deadlock on Kube exit
Closed, ResolvedPublic

Description

The application just got stuck on exit it seems.

(gdb) thread apply all bt

Thread 1 (Thread 0x7efbf0d4cec0 (LWP 147)):
#0  0x00007efbfe88dbe9 in syscall () from /lib64/libc.so.6
#1  0x00007efbff4989e5 in QBasicMutex::lockInternal() () from /lib64/libQt5Core.so.5
#2  0x00007efbff498a47 in QMutex::lock() () from /lib64/libQt5Core.so.5
#3  0x00007efbff487419 in qgetenv(char const*) () from /lib64/libQt5Core.so.5
#4  0x00007efbff5e6684 in QProcessPrivate::startDetached(QString const&, QStringList const&, QString const&, long long*) () from /lib64/libQt5Core.so.5
#5  0x00007efb8f076445 in Sink::ResourceAccess::Private::initializeSocket()::$_2::operator()() const::{lambda(KAsync::Error const&, QSharedPointer<QLocalSocket> const&)#1}::operator()(KAsync::Error const&, QSharedPointer<QLocalSocket> const&) const (this=0x1612fe0, error=..., s=...)
    at /work/source/Sink/common/resourceaccess.cpp:212
#6  0x00007efb8f075fe9 in std::_Function_handler<KAsync::Job<void> (KAsync::Error const&, QSharedPointer<QLocalSocket>), Sink::ResourceAccess::Private::initializeSocket()::$_2::operator()() const::{lambda(KAsync::Error const&, QSharedPointer<QLocalSocket> const&)#1}>::_M_invoke(std::_Any_data const&, KAsync::Error const&, QSharedPointer<QLocalSocket>&&) (__functor=..., __args=<unknown type in /work/install/lib64/libsink.so.0.2, CU 0x3ce334, DIE 0x4273e2>,
    __args=<unknown type in /work/install/lib64/libsink.so.0.2, CU 0x3ce334, DIE 0x4273e2>)
    at /usr/bin/../lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:1716
#7  0x00007efb8efe1a9f in std::function<KAsync::Job<void> (KAsync::Error const&, QSharedPointer<QLocalSocket>)>::operator()(KAsync::Error const&, QSharedPointer<QLocalSocket>) const (this=0x1612fe0, __args=..., __args=...) at /usr/bin/../lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:2127
#8  0x00007efb8efe14c2 in KAsync::Private::ThenExecutor<void, QSharedPointer<QLocalSocket> >::executeJobAndApply(KAsync::Error const&, QSharedPointer<QLocalSocket>, std::function<KAsync::Job<void> (KAsync::Error const&, QSharedPointer<QLocalSocket>)> const&, KAsync::Future<void>&, std::integral_constant<bool, true>)
    (this=0x1612f50, error=..., input=..., func=..., future=...) at /work/install/include/KAsync/job_impl.h:115
#9  0x00007efb8efdfe40 in KAsync::Private::ThenExecutor<void, QSharedPointer<QLocalSocket> >::run (this=0x1612f50, execution=...)
    at /work/install/include/KAsync/job_impl.h:62
#10 0x00007efb8efe02ce in KAsync::Private::Executor<QSharedPointer<QLocalSocket>, void, QSharedPointer<QLocalSocket> >::runExecution (this=0x1612f50,
    prevFuture=..., execution=...) at /work/install/include/KAsync/job_impl.h:259
#11 0x00007efb8efdf7e8 in KAsync::Private::Executor<QSharedPointer<QLocalSocket>, void, QSharedPointer<QLocalSocket> >::exec (this=0x1612f50, self=...)
    at /work/install/include/KAsync/job_impl.h:297
#12 0x00007efb8ee9ba57 in KAsync::Private::Executor<void, void>::exec (this=0x1613140, self=...) at /work/install/include/KAsync/job_impl.h:282
#13 0x00007efb8ee9f517 in KAsync::Job<void>::exec (this=0x7fffa1e4ec88) at /work/install/include/KAsync/job_impl.h:406
#14 0x00007efb8ee9f153 in KAsync::Private::ThenExecutor<void>::executeJobAndApply(std::function<KAsync::Job<void> ()> const&, KAsync::Future<void>&, std::integral_constant<bool, true>) (this=0x1611f60, func=..., future=...) at /work/install/include/KAsync/job_impl.h:86
#15 0x00007efb8ee9c15d in KAsync::Private::ThenExecutor<void>::run (this=0x1611f60, execution=...) at /work/install/include/KAsync/job_impl.h:60
#16 0x00007efb8ee9bd85 in KAsync::Private::Executor<void, void>::exec (this=0x1611f60, self=...) at /work/install/include/KAsync/job_impl.h:299
#17 0x00007efb8ee9ba57 in KAsync::Private::Executor<void, void>::exec (this=0x16120c0, self=...) at /work/install/include/KAsync/job_impl.h:282
#18 0x00007efb8ee9f517 in KAsync::Job<void>::exec (this=0x7fffa1e4f1f0) at /work/install/include/KAsync/job_impl.h:406
#19 0x00007efb8f070137 in Sink::ResourceAccess::open (this=0x1597d80) at /work/source/Sink/common/resourceaccess.cpp:402
#20 0x00007efb8f09a665 in QueryRunner<Sink::ApplicationDomain::Mail>::QueryRunner (this=0x1611b80, query=..., context=..., bufferType=..., logCtx=...)
    at /work/source/Sink/common/queryrunner.cpp:148
#21 0x00007efb8f045797 in Sink::GenericFacade<Sink::ApplicationDomain::Mail>::load (this=0x1611b10, query=..., ctx=...)
    at /work/source/Sink/common/facade.cpp:108
#22 0x00007efb8ef3613b in Sink::queryResource<Sink::ApplicationDomain::Mail> (resourceType=..., resourceInstanceIdentifier=..., query=...,
    aggregatingEmitter=..., ctx_=...) at /work/source/Sink/common/store.cpp:65
#23 0x00007efb8ef3b32d in QPair<Sink::AggregatingResultEmitter<Sink::ApplicationDomain::Mail::Ptr>::Ptr, QSharedPointer<Sink::ResultEmitter<QSharedPointer<Sink---Type <return> to continue, or q <return> to quit---
::ApplicationDomain::SinkResource> > > > Sink::getEmitter<Sink::ApplicationDomain::Mail>(Sink::Query, Sink::Log::Context const&)::{lambda(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&)#1}::operator()(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&) const (this=0x1610a60, resource=...)
    at /work/source/Sink/common/store.cpp:113
#24 0x00007efb8ef3aec2 in std::_Function_handler<void (QSharedPointer<Sink::ApplicationDomain::SinkResource> const&), QPair<Sink::AggregatingResultEmitter<Sink::ApplicationDomain::Mail::Ptr>::Ptr, QSharedPointer<Sink::ResultEmitter<QSharedPointer<Sink::ApplicationDomain::SinkResource> > > > Sink::getEmitter<Sink::ApplicationDomain::Mail>(Sink::Query, Sink::Log::Context const&)::{lambda(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&)#1}>::_M_invoke(std::_Any_data const&, QSharedPointer<Sink::ApplicationDomain::SinkResource> const&) (__functor=..., __args=...)
    at /usr/bin/../lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:1731
#25 0x00007efb8ef75818 in std::function<void (QSharedPointer<Sink::ApplicationDomain::SinkResource> const&)>::operator()(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&) const (this=0x1610968, __args=...) at /usr/bin/../lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:2127
#26 0x00007efb8ef7728e in Sink::ResultEmitter<QSharedPointer<Sink::ApplicationDomain::SinkResource> >::add (this=0x1610960, value=...)
    at /work/source/Sink/common/resultprovider.h:249
#27 0x00007efb8f0ab264 in Sink::ResultProvider<QSharedPointer<Sink::ApplicationDomain::SinkResource> >::add (this=0x16103c0, value=...)
    at /work/source/Sink/common/resultprovider.h:87
#28 0x00007efb8f10c3b5 in LocalStorageQueryRunner<Sink::ApplicationDomain::SinkResource>::LocalStorageQueryRunner(Sink::Query const&, QByteArray const&, QByteArray const&, ConfigNotifier&, Sink::Log::Context const&)::{lambda(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&)#1}::operator()(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&) const (this=0x1610580) at /work/source/Sink/common/resourcefacade.cpp:114
#29 0x00007efb8f10ba02 in std::_Function_handler<void (QSharedPointer<Sink::ApplicationDomain::SinkResource> const&), LocalStorageQueryRunner<Sink::ApplicationDomain::SinkResource>::LocalStorageQueryRunner(Sink::Query const&, QByteArray const&, QByteArray const&, ConfigNotifier&, Sink::Log::Context const&)::{lambda(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&)#1}>::_M_invoke(std::_Any_data const&, QSharedPointer<Sink::ApplicationDomain::SinkResource> const&) (__functor=..., __args=...) at /usr/bin/../lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:1731
#30 0x00007efb8ef75818 in std::function<void (QSharedPointer<Sink::ApplicationDomain::SinkResource> const&)>::operator()(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&) const (this=0x1610400, __args=...) at /usr/bin/../lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:2127
#31 0x00007efb8f0d5530 in Sink::ResultProvider<QSharedPointer<Sink::ApplicationDomain::SinkResource> >::emitter()::{lambda(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&)#1}::operator()(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&) const (this=0x1610a28, parent=...)
    at /work/source/Sink/common/resultprovider.h:139
#32 0x00007efb8f0d53a2 in std::_Function_handler<void (QSharedPointer<Sink::ApplicationDomain::SinkResource> const&), Sink::ResultProvider<QSharedPointer<Sink::ApplicationDomain::SinkResource> >::emitter()::{lambda(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&)#1}>::_M_invoke(std::_Any_data const&, QSharedPointer<Sink::ApplicationDomain::SinkResource> const&) (__functor=..., __args=...)
    at /usr/bin/../lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:1731
#33 0x00007efb8ef75818 in std::function<void (QSharedPointer<Sink::ApplicationDomain::SinkResource> const&)>::operator()(QSharedPointer<Sink::ApplicationDomain::SinkResource> const&) const (this=0x1610a28, __args=...) at /usr/bin/../lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:2127
#34 0x00007efb8ef757ba in Sink::ResultEmitter<QSharedPointer<Sink::ApplicationDomain::SinkResource> >::fetch (this=0x1610960, parent=...)
    at /work/source/Sink/common/resultprovider.h:302
#35 0x00007efb8ee859dc in Sink::Store::loadModel<Sink::ApplicationDomain::Mail> (query=...) at /work/source/Sink/common/store.cpp:156
#36 0x00007efb8dd62936 in OutboxModel::runQuery (this=0x160e930, query=...) at /work/source/Kube/framework/domain/outboxmodel.cpp:95
#37 0x00007efb8dd62777 in OutboxModel::OutboxModel (this=0x160e930, parent=0x0) at /work/source/Kube/framework/domain/outboxmodel.cpp:42
#38 0x00007efb8dd0aa93 in QQmlPrivate::QQmlElement<OutboxModel>::QQmlElement (this=0x160e930) at /usr/include/qt5/QtQml/qqmlprivate.h:99
#39 0x00007efb8dd0a695 in QQmlPrivate::createInto<OutboxModel> (memory=0x160e930) at /usr/include/qt5/QtQml/qqmlprivate.h:108
#40 0x00007efbffdbe4b9 in QQmlType::create() const () from /lib64/libQt5Qml.so.5
#41 0x00007efbffe2062c in QQmlObjectCreator::createInstance(int, QObject*, bool) () from /lib64/libQt5Qml.so.5
#42 0x00007efbffe22b4f in QQmlObjectCreator::setPropertyBinding(QQmlPropertyData const*, QV4::CompiledData::Binding const*) () from /lib64/libQt5Qml.so.5
---Type <return> to continue, or q <return> to quit---
#43 0x00007efbffe22db8 in QQmlObjectCreator::setupBindings(QBitArray const&) () from /lib64/libQt5Qml.so.5
#44 0x00007efbffe1fd46 in QQmlObjectCreator::populateInstance(int, QObject*, QObject*, QQmlPropertyData const*, QBitArray const&) ()
   from /lib64/libQt5Qml.so.5
#45 0x00007efbffe20927 in QQmlObjectCreator::createInstance(int, QObject*, bool) () from /lib64/libQt5Qml.so.5
#46 0x00007efbffe22b4f in QQmlObjectCreator::setPropertyBinding(QQmlPropertyData const*, QV4::CompiledData::Binding const*) () from /lib64/libQt5Qml.so.5
#47 0x00007efbffe22db8 in QQmlObjectCreator::setupBindings(QBitArray const&) () from /lib64/libQt5Qml.so.5
#48 0x00007efbffe1fd46 in QQmlObjectCreator::populateInstance(int, QObject*, QObject*, QQmlPropertyData const*, QBitArray const&) ()
   from /lib64/libQt5Qml.so.5
#49 0x00007efbffe20927 in QQmlObjectCreator::createInstance(int, QObject*, bool) () from /lib64/libQt5Qml.so.5
#50 0x00007efbffe22b4f in QQmlObjectCreator::setPropertyBinding(QQmlPropertyData const*, QV4::CompiledData::Binding const*) () from /lib64/libQt5Qml.so.5
#51 0x00007efbffe22db8 in QQmlObjectCreator::setupBindings(QBitArray const&) () from /lib64/libQt5Qml.so.5
#52 0x00007efbffe1fd46 in QQmlObjectCreator::populateInstance(int, QObject*, QObject*, QQmlPropertyData const*, QBitArray const&) ()
   from /lib64/libQt5Qml.so.5
#53 0x00007efbffe20927 in QQmlObjectCreator::createInstance(int, QObject*, bool) () from /lib64/libQt5Qml.so.5
#54 0x00007efbffe22b4f in QQmlObjectCreator::setPropertyBinding(QQmlPropertyData const*, QV4::CompiledData::Binding const*) () from /lib64/libQt5Qml.so.5
#55 0x00007efbffe22db8 in QQmlObjectCreator::setupBindings(QBitArray const&) () from /lib64/libQt5Qml.so.5
#56 0x00007efbffe1fd46 in QQmlObjectCreator::populateInstance(int, QObject*, QObject*, QQmlPropertyData const*, QBitArray const&) ()
   from /lib64/libQt5Qml.so.5
#57 0x00007efbffe20927 in QQmlObjectCreator::createInstance(int, QObject*, bool) () from /lib64/libQt5Qml.so.5
#58 0x00007efbffe21146 in QQmlObjectCreator::create(int, QObject*, QQmlInstantiationInterrupt*) () from /lib64/libQt5Qml.so.5
#59 0x00007efbffe20c36 in QQmlObjectCreator::createInstance(int, QObject*, bool) () from /lib64/libQt5Qml.so.5
#60 0x00007efbffe22b4f in QQmlObjectCreator::setPropertyBinding(QQmlPropertyData const*, QV4::CompiledData::Binding const*) () from /lib64/libQt5Qml.so.5
#61 0x00007efbffe22db8 in QQmlObjectCreator::setupBindings(QBitArray const&) () from /lib64/libQt5Qml.so.5
#62 0x00007efbffe1fd46 in QQmlObjectCreator::populateInstance(int, QObject*, QObject*, QQmlPropertyData const*, QBitArray const&) ()
   from /lib64/libQt5Qml.so.5
#63 0x00007efbffe20927 in QQmlObjectCreator::createInstance(int, QObject*, bool) () from /lib64/libQt5Qml.so.5
#64 0x00007efbffe22b4f in QQmlObjectCreator::setPropertyBinding(QQmlPropertyData const*, QV4::CompiledData::Binding const*) () from /lib64/libQt5Qml.so.5
#65 0x00007efbffe22db8 in QQmlObjectCreator::setupBindings(QBitArray const&) () from /lib64/libQt5Qml.so.5
#66 0x00007efbffe1fd46 in QQmlObjectCreator::populateInstance(int, QObject*, QObject*, QQmlPropertyData const*, QBitArray const&) ()
   from /lib64/libQt5Qml.so.5
#67 0x00007efbffe20927 in QQmlObjectCreator::createInstance(int, QObject*, bool) () from /lib64/libQt5Qml.so.5
#68 0x00007efbffe22b4f in QQmlObjectCreator::setPropertyBinding(QQmlPropertyData const*, QV4::CompiledData::Binding const*) () from /lib64/libQt5Qml.so.5
#69 0x00007efbffe22db8 in QQmlObjectCreator::setupBindings(QBitArray const&) () from /lib64/libQt5Qml.so.5
#70 0x00007efbffe1fd46 in QQmlObjectCreator::populateInstance(int, QObject*, QObject*, QQmlPropertyData const*, QBitArray const&) ()
   from /lib64/libQt5Qml.so.5
#71 0x00007efbffe20927 in QQmlObjectCreator::createInstance(int, QObject*, bool) () from /lib64/libQt5Qml.so.5
#72 0x00007efbffe21146 in QQmlObjectCreator::create(int, QObject*, QQmlInstantiationInterrupt*) () from /lib64/libQt5Qml.so.5
#73 0x00007efbffe20c36 in QQmlObjectCreator::createInstance(int, QObject*, bool) () from /lib64/libQt5Qml.so.5
#74 0x00007efbffe21146 in QQmlObjectCreator::create(int, QObject*, QQmlInstantiationInterrupt*) () from /lib64/libQt5Qml.so.5
#75 0x00007efbffda9fd0 in QQmlComponentPrivate::beginCreate(QQmlContextData*) () from /lib64/libQt5Qml.so.5
#76 0x00007efbffda774f in QQmlComponent::create(QQmlContext*) () from /lib64/libQt5Qml.so.5
#77 0x00007efbffe1555a in QQmlApplicationEnginePrivate::_q_finishLoad(QObject*) () from /lib64/libQt5Qml.so.5
---Type <return> to continue, or q <return> to quit---
#78 0x00007efbffe157e2 in QQmlApplicationEnginePrivate::startLoad(QUrl const&, QByteArray const&, bool) () from /lib64/libQt5Qml.so.5
#79 0x00007efbffe1581d in QQmlApplicationEngine::load(QUrl const&) () from /lib64/libQt5Qml.so.5
#80 0x000000000040276e in main (argc=1, argv=0x7fffa1e530d8) at /work/source/Kube/applications/mail/main.cpp:67
(gdb)
(gdb)
cmollekopf added a project: Sink.

Not sure about the above backtrace, but webengine requestinterceptor is the current cause for kube to not shut down as it should.

cmollekopf moved this task from Backlog to 0.4 on the Kube board.Aug 23 2017, 2:23 AM
cmollekopf edited projects, added Kube (0.4); removed Kube.
cmollekopf moved this task from Backlog to Done on the Kube (0.4) board.Aug 23 2017, 2:25 AM