Bug 350370 - baloo_file crashed after directory deletion (Baloo::XapianDatabase::commit... chert_table::read)
Summary: baloo_file crashed after directory deletion (Baloo::XapianDatabase::commit......
Status: RESOLVED FIXED
Alias: None
Product: Baloo
Classification: Unmaintained
Component: Baloo File Daemon (other bugs)
Version First Reported In: 5.6.2
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Vishesh Handa
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2015-07-19 12:06 UTC by Lukáš Karas
Modified: 2015-07-28 13:12 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Lukáš Karas 2015-07-19 12:06:06 UTC
Application: baloo_file (5.6.2)

Qt Version: 5.4.1
Operating System: Linux 4.1.1 x86_64
Distribution: Ubuntu 15.04

-- Information about the crash:
- What I was doing when the application crashed:

Baloo_file indexer crashed after deletion of directory with huge amount of files.

.xsession-errors log contains:

terminate called after throwing an instance of 'std::length_error'
  what():  basic_string::assign

The crash does not seem to be reproducible.

-- Backtrace:
Application: Baloo File (baloo_file), signal: Aborted
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f9a9e963800 (LWP 2289))]

Thread 2 (Thread 0x7f9a8afce700 (LWP 2292)):
#0  0x00007f9a9b2178dd in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007f9a9a0ffb72 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f9a9a10164f in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f9a8cef2099 in QXcbEventReader::run (this=0x1a80fd0) at qxcbconnection.cpp:1105
#4  0x00007f9a9baaeb0e in QThreadPrivate::start (arg=0x1a80fd0) at thread/qthread_unix.cpp:337
#5  0x00007f9a9af056aa in start_thread (arg=0x7f9a8afce700) at pthread_create.c:333
#6  0x00007f9a9b222eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f9a9e963800 (LWP 2289)):
[KCrash Handler]
#6  0x00007f9a9b151267 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
#7  0x00007f9a9b152eca in __GI_abort () at abort.c:89
#8  0x00007f9a9b75d06d in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#9  0x00007f9a9b75aee6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#10 0x00007f9a9b75af31 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#11 0x00007f9a9b75b149 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#12 0x00007f9a9b7b4d36 in std::__throw_length_error(char const*) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#13 0x00007f9a9b7bfeed in std::string::assign(char const*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#14 0x00007f9a9d920737 in read (key=<optimized out>, this=<optimized out>) at ../backends/chert/chert_table.h:119
#15 ChertCursor::get_key (this=<optimized out>, key=<optimized out>) at ../backends/chert/chert_cursor.cc:288
#16 0x00007f9a9d9209b7 in ChertCursor::find_entry (this=0x8ff1c1e0, key="117.207.165.64\000V\263~") at ../backends/chert/chert_cursor.cc:234
#17 0x00007f9a9d93941b in ChertPostListTable::get_chunk (this=this@entry=0x22809e8, tname="117.207.165.64", did=1487742, adding=<optimized out>, from=from@entry=0x7ffc678cad30, to=to@entry=0x7ffc678cad40) at ../backends/chert/chert_postlist.cc:991
#18 0x00007f9a9d93ae0e in ChertPostListTable::merge_changes (this=this@entry=0x22809e8, mod_plists=std::map with 7838819 elements, doclens=std::map with 6 elements, freq_deltas=std::map with 7838819 elements) at ../backends/chert/chert_postlist.cc:1205
#19 0x00007f9a9d927b65 in ChertWritableDatabase::flush_postlist_changes (this=this@entry=0x22809b0) at ../backends/chert/chert_database.cc:1064
#20 0x00007f9a9d927c71 in ChertWritableDatabase::commit (this=0x22809b0) at ../backends/chert/chert_database.cc:1057
#21 0x00007f9a9dc6a609 in Baloo::XapianDatabase::commit (this=0x1ab1600) at ../../../src/xapian/xapiandatabase.cpp:147
#22 0x0000000000421109 in Baloo::CommitQueue::commit (this=0x1bfaf20) at ../../../src/file/commitqueue.cpp:91
#23 0x00007f9a9bd1d35a in call (a=0x7ffc678cb0d0, r=0x1bfaf20, this=0x1bfd3f0) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#24 QMetaObject::activate (sender=sender@entry=0x1bfaf30, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3702
#25 0x00007f9a9bd1e057 in QMetaObject::activate (sender=sender@entry=0x1bfaf30, m=m@entry=0x7f9a9bf47580 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3582
#26 0x00007f9a9bd9d610 in QTimer::timeout (this=this@entry=0x1bfaf30) at .moc/moc_qtimer.cpp:192
#27 0x00007f9a9bd2b918 in QTimer::timerEvent (this=0x1bfaf30, e=<optimized out>) at kernel/qtimer.cpp:247
#28 0x00007f9a9bd1e6f3 in QObject::event (this=0x1bfaf30, e=<optimized out>) at kernel/qobject.cpp:1267
#29 0x00007f9a9c5f6b2c in QApplicationPrivate::notify_helper (this=0x1a6c110, receiver=0x1bfaf30, e=0x7ffc678cb440) at kernel/qapplication.cpp:3720
#30 0x00007f9a9c5fc000 in QApplication::notify (this=0x7ffc678cb820, receiver=0x1bfaf30, e=0x7ffc678cb440) at kernel/qapplication.cpp:3503
#31 0x00007f9a9bcecc2b in QCoreApplication::notifyInternal (this=0x7ffc678cb820, receiver=0x1bfaf30, event=event@entry=0x7ffc678cb440) at kernel/qcoreapplication.cpp:935
#32 0x00007f9a9bd44ae5 in sendEvent (event=0x7ffc678cb440, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:228
#33 QTimerInfoList::activateTimers (this=0x1a9a9f0) at kernel/qtimerinfo_unix.cpp:635
#34 0x00007f9a9bd44f99 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:177
#35 idleTimerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:224
#36 0x00007f9a95bf1c3d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#37 0x00007f9a95bf1f20 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007f9a95bf1fcc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007f9a9bd45c57 in QEventDispatcherGlib::processEvents (this=0x1a97170, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#40 0x00007f9a9bcea3e2 in QEventLoop::exec (this=this@entry=0x7ffc678cb690, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#41 0x00007f9a9bcf202c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1188
#42 0x00007f9a9c03131c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1510
#43 0x00007f9a9c5f27a5 in QApplication::exec () at kernel/qapplication.cpp:2956
#44 0x0000000000417477 in main (argc=1, argv=<optimized out>) at ../../../src/file/main.cpp:101

Reported using DrKonqi
Comment 1 Vishesh Handa 2015-07-28 13:12:31 UTC
Fixed with Plasma 5.4