crashtesting: intermittent failure on tdf118824-1.odb

Desktop / LibreOffice - Caolán McNamara [redhat.com] - 18 November 2020 14:11 UTC

this thread has been in the wars before:

commit 490f83d4807a4223bae61d34913e5bd2bf952f3a Date: Fri Mar 9 09:12:54 2012 +0100

fdo#47021: the naive join attempt leads to deadlock

commit a2095b151409f0fb57aa8feaa4c6282f84040245 Date: Tue Jul 26 23:42:36 2016 +0200

comphelper,vcl: let DeInitVCL() join some AsyncEventNotifier threads

current backtrace is...

Thread 1 (Thread 0x7fb9d9af6700 (LWP 32393)): 0 0x00007fb9eff83705 in () at /lib/x86_64-linux-gnu/libstdc++.so.6 1 0x00007fb9eff8375e in () at /lib/x86_64-linux-gnu/libstdc++.so.6 2 0x00007fb9dcc308df in __gnu_debug::_Safe_iterator_base::_Safe_iterator_base(__gnu_debug::_Safe_sequence_base const*, bool) (__constant=false, __seq=, this=0x7fb9d9af4338) at /usr/include/c++/8/debug/safe_base.h:91 3 0x00007fb9dcc308df in __gnu_debug::_Safe_iterator > >, std::__debug::map, std::less, std::allocator > > > >::_Safe_iterator(std::_Rb_tree_iterator > > const&, __gnu_debug::_Safe_sequence_base const*) (__seq=, __i=..., this=0x7fb9d9af4330) at /usr/include/c++/8/debug/safe_iterator.h:130 4 0x00007fb9dcc308df in std::__debug::map, std::less, std::allocator > > >::end() (this=) at /usr/include/c++/8/debug/map.h:181 5 0x00007fb9dcc308df in dbaccess::DocumentEvents::hasByName(rtl::OUString const&) (this=0x559229945690, Name="OnLoad") at /home/buildslave/source/libo-core/dbaccess/source/core/dataaccess/documentevents.cxx:199 6 0x00007fb9dcc2a4de in dbaccess::DocumentEventExecutor::documentEventOccured(com::sun::star::document::DocumentEvent const&) (this=0x559229981050, Event=...) at /home/buildslave/source/libo-core/include/com/sun/star/uno/Reference.h:380 aScriptDescriptor = {m_pImpl = std::unique_ptr = {get() = 0x5592297d7700}} bScriptAssigned = bDispatchScriptURL = bNonEmptyScript = sEventType = "\004\000晦晦⦾喒\000\000\000\000\000䄨\xdce2ç¾¹\000°⧘喒\000èŒâ§’å–’\000°⧘喒\000\001晦晦晦䅨\xdce2ç¾¹\000ä† \xdce2ç¾¹\000ä‰ \xdce2ç¾¹\000䊨\xdce2ç¾¹\000䌀\xdce2ç¾¹\000䌸\xdce2ç¾¹\000ä¸\xdce2ç¾¹\000䎸\xdce2ç¾¹\000ä¸\xdce2ç¾¹\000ä¸\xdce2ç¾¹\000ä‘°\xdce2ç¾¹\000ä’ \xdce2ç¾¹\000䓘\xdce2ç¾¹\000䔈\xdce2ç¾¹\000ä• \xdce2ç¾¹\000ä– \xdce2ç¾¹\000ä—\xdce2ç¾¹\000䘀\xdce2ç¾¹\000䘰\xdce2ç¾¹\000䙨\xdce2ç¾¹\000䚨\xdce2ç¾¹\000ä› \xdce2ç¾¹\000䜘\xdce2ç¾¹\000ä\xdce2ç¾¹\000\000\000\000\000\000\000\000\000°⧘喒\000\000晦晦晦\000\000\000\000°⧘喒\000\000晦晦晦\000\000\000\000°⧘喒\000\000晦晦晦åšâ¦”å–’\000á⦘喒\000닰⦨喒", '\000' , "\001\000晦晦\000\000\000\000"... sScript = "\004\000晦晦⦾喒\000\000\000\000\000䄨\xdce2ç¾¹\000°⧘喒\000èŒâ§’å–’\000°⧘喒\000\001晦晦晦䅨\xdce2ç¾¹\000ä† \xdce2ç¾¹\000ä‰ \xdce2ç¾¹\000䊨\xdce2ç¾¹\000䌀\xdce2ç¾¹\000䌸\xdce2ç¾¹\000ä¸\xdce2ç¾¹\000䎸\xdce2ç¾¹\000ä¸\xdce2ç¾¹\000ä¸\xdce2ç¾¹\000ä‘°\xdce2ç¾¹\000ä’ \xdce2ç¾¹\000䓘\xdce2ç¾¹\000䔈\xdce2ç¾¹\000ä• \xdce2ç¾¹\000ä– \xdce2ç¾¹\000ä—\xdce2ç¾¹\000䘀\xdce2ç¾¹\000䘰\xdce2ç¾¹\000䙨\xdce2ç¾¹\000䚨\xdce2ç¾¹\000ä› \xdce2ç¾¹\000䜘\xdce2ç¾¹\000ä\xdce2ç¾¹\000\000\000\000\000\000\000\000\000°⧘喒\000\000晦晦晦\000\000\000\000°⧘喒\000\000晦晦晦\000\000\000\000°⧘喒\000\000晦晦晦åšâ¦”å–’\000á⦘喒\000닰⦨喒", '\000' , "\001\000晦晦\000\000\000\000"... xEventsSupplier = uno::Reference to (class dbaccess::ODatabaseDocument *) 0x559229d80188 xDocument = uno::Reference to (class dbaccess::ODatabaseDocument *) 0x559229d80108 __func__ = "documentEventOccured" 7 0x00007fb9dcc2b3cb in comphelper::OInterfaceContainerHelper2::NotifySingleListener::operator()(com::sun::star::uno::Reference const&) const (listener=#8 0x00007fb9dcc2b3cb in comphelper::OInterfaceContainerHelper2::forEach >(comphelper::OInterfaceContainerHelper2::NotifySingleListener const&) (func=..., this=0x559229a8b340) at /home/buildslave/source/libo-core/include/comphelper/interfacecontainer2.hxx:266 iter = {rCont = @0x559229a8b340, aData = {pAsVector = 0x559229b71540, pAsInterface = 0x559229b71540}, nRemain = 0, bIsList = true} __func__ = "impl_notifyEvent_nothrow" 9 0x00007fb9dcc2b3cb in comphelper::OInterfaceContainerHelper2::notifyEach(void (com::sun::star::document::XDocumentEventListener::*)(com::sun::star::document::DocumentEvent const&), com::sun::star::document::DocumentEvent const&) (Event=..., NotificationMethod=, this=0x559229a8b340) at /home/buildslave/source/libo-core/include/comphelper/interfacecontainer2.hxx:279 __func__ = "impl_notifyEvent_nothrow" 10 0x00007fb9dcc2b3cb in dbaccess::DocumentEventNotifier_Impl::impl_notifyEvent_nothrow(com::sun::star::document::DocumentEvent const&) (this=this@entry=0x559229a8b2f0, _rEvent=...) at /home/buildslave/source/libo-core/dbaccess/source/core/dataaccess/documenteventnotifier.cxx:196 __func__ = "impl_notifyEvent_nothrow" 11 0x00007fb9dcc2b638 in dbaccess::DocumentEventNotifier_Impl::processEvent(comphelper::AnyEvent const&) (this=0x559229a8b2f0, _rEvent=...) at /home/buildslave/source/libo-core/include/comphelper/asyncnotification.hxx:215 rEventHolder = 12 0x00007fb9ef271835 in comphelper::AsyncEventNotifierBase::execute() (this=0x559229a8c460) at /home/buildslave/source/libo-core/comphelper/source/misc/asyncnotification.cxx:163 aEvent = {aEvent = rtl::Reference to 0x559229872990, xProcessor = rtl::Reference to 0x559229a8b2f0} __PRETTY_FUNCTION__ = "virtual void comphelper::AsyncEventNotifierBase::execute()" 13 0x00007fb9ef26ffb9 in comphelper::AsyncEventNotifierAutoJoin::run() (this=0x559229a8c460) at /home/buildslave/source/libo-core/comphelper/source/misc/asyncnotification.cxx:268 14 0x00007fb9ef27d4ab in osl::threadFunc(void*) (param=0x559229a8c470) at /home/buildslave/source/libo-core/include/osl/thread.hxx:185 pObj = 0x559229a8c470 15 0x00007fb9f04645b6 in osl_thread_start_Impl(void*) (pData=0x559229aaa9e0) at /home/buildslave/source/libo-core/sal/osl/unx/thread.cxx:258 terminate = false pImpl = 0x559229aaa9e0 __PRETTY_FUNCTION__ = "void* osl_thread_start_Impl(void*)" 16 0x00007fb9efd12fa3 in start_thread () at /lib/x86_64-linux-gnu/libpthread.so.0 17 0x00007fb9f01574cf in clone () at /lib/x86_64-linux-gnu/libc.so.6

Change-Id: I265c6d35d5690750454920e4155d99073d9e51ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103868

20bc83ee9e63 crashtesting: intermittent failure on tdf118824-1.odb
.../core/dataaccess/documenteventnotifier.cxx | 22 +++++++++++++---------
1 file changed, 13 insertions(+), 9 deletions(-)

Upstream: cgit.freedesktop.org


  • Share