Bug 408779 - Baloo crashes in mdb with assertion “mdb.c:6125: Assertion 'IS_LEAF(mp)' failed in mdb_cursor_set()”
Summary: Baloo crashes in mdb with assertion “mdb.c:6125: Assertion 'IS_LEAF(mp)' fail...
Status: RESOLVED DUPLICATE of bug 393472
Alias: None
Product: frameworks-baloo
Classification: Frameworks and Libraries
Component: Engine (show other bugs)
Version: 5.59.0
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: baloo-bugs-null
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-06-16 13:10 UTC by Erin Yuki Schlarb
Modified: 2019-06-16 22:43 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Erin Yuki Schlarb 2019-06-16 13:10:44 UTC
STEPS TO REPRODUCE
This crash happens most times when I use KRunner and also everytime I do `baloosearch <something>` from Konsole.


OBSERVED RESULT
Baloo crashes with the error message:

    mdb.c:6125: Assertion 'IS_LEAF(mp)' failed in mdb_cursor_set()

and the following backtrace:

Thread 1 (Thread 0x7f5b59d83800 (LWP 7745)):
[KCrash Handler]
#6  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#7  0x00007f5b5a770535 in __GI_abort () at abort.c:79
#8  0x00007f5b56c963b2 in mdb_assert_fail (env=0x563f0075b270, expr_txt=expr_txt@entry=0x7f5b56c980c3 "IS_LEAF(mp)", func=func@entry=0x7f5b56c988b0 <__func__.7843> "mdb_cursor_set", line=line@entry=6125, file=0x7f5b56c98010 "mdb.c") at mdb.c:1542
#9  0x00007f5b56c8da61 in mdb_cursor_set (mc=mc@entry=0x563f0075a720, key=key@entry=0x7ffd20283730, data=data@entry=0x7ffd20283740, op=op@entry=MDB_SET_RANGE, exactp=exactp@entry=0x0) at mdb.c:6125
#10 0x00007f5b56c8bd05 in mdb_cursor_get (mc=0x563f0075a720, key=key@entry=0x7ffd20283730, data=data@entry=0x7ffd20283740, op=op@entry=MDB_SET_RANGE) at mdb.c:6341
#11 0x00007f5b59da8b58 in Baloo::PostingDB::iter<Baloo::PostingDB::prefixIter(const QByteArray&)::<lambda(const QByteArray&)> > (this=0x7ffd20283740, this=0x7ffd20283740, prefix=..., validate=...) at ./src/engine/postingdb.cpp:221
#12 Baloo::PostingDB::prefixIter (this=this@entry=0x7ffd20283800, prefix=...) at ./src/engine/postingdb.cpp:250
#13 0x00007f5b59daf888 in Baloo::Transaction::postingIterator (this=this@entry=0x7ffd20283ba0, query=...) at ./src/engine/transaction.cpp:340
#14 0x00007f5b5ca72749 in Baloo::SearchStore::constructQuery (this=this@entry=0x7ffd20283c60, tr=tr@entry=0x7ffd20283ba0, term=...) at ./src/lib/searchstore.cpp:283
#15 0x00007f5b5ca719cd in Baloo::SearchStore::constructQuery (this=this@entry=0x7ffd20283c60, tr=tr@entry=0x7ffd20283ba0, term=...) at ./src/lib/searchstore.cpp:169
#16 0x00007f5b5ca72980 in Baloo::SearchStore::exec (this=this@entry=0x7ffd20283c60, term=..., offset=0, limit=10, sortResults=<optimized out>) at ./src/lib/searchstore.cpp:77
#17 0x00007f5b5ca5f33c in Baloo::Query::exec (this=0x7ffd20283d20) at ./src/lib/query.cpp:218
#18 0x0000563efea5a483 in ?? ()
#19 0x0000563efea5c317 in ?? ()
#20 0x00007f5b5ad4e98f in QtPrivate::QSlotObjectBase::call (a=0x7ffd20283fb0, r=0x7ffd20284600, this=0x563f007b0090) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#21 QMetaObject::activate (sender=sender@entry=0x563f007b0730, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd20283fb0) at kernel/qobject.cpp:3776
#22 0x00007f5b5ad4ef47 in QMetaObject::activate (sender=sender@entry=0x563f007b0730, m=m@entry=0x7f5b5b1cbda0 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd20283fb0) at kernel/qobject.cpp:3648
#23 0x00007f5b5ad5b757 in QTimer::timeout (this=this@entry=0x563f007b0730, _t1=...) at .moc/moc_qtimer.cpp:204
#24 0x00007f5b5ad5bab8 in QTimer::timerEvent (this=0x563f007b0730, e=<optimized out>) at kernel/qtimer.cpp:255
#25 0x00007f5b5ad4f39b in QObject::event (this=0x563f007b0730, e=<optimized out>) at kernel/qobject.cpp:1282
#26 0x00007f5b5bd7265c in QApplicationPrivate::notify_helper (this=this@entry=0x563f0075af10, receiver=receiver@entry=0x563f007b0730, e=e@entry=0x7ffd20284320) at kernel/qapplication.cpp:3736
#27 0x00007f5b5bd79b90 in QApplication::notify (this=0x7ffd202845f0, receiver=0x563f007b0730, e=0x7ffd20284320) at kernel/qapplication.cpp:3483
#28 0x00007f5b5ad1ed18 in QCoreApplication::notifyInternal2 (receiver=0x563f007b0730, event=0x7ffd20284320) at kernel/qcoreapplication.cpp:1060
#29 0x00007f5b5ad7b219 in QTimerInfoList::activateTimers (this=0x563f007b0ac0) at kernel/qtimerinfo_unix.cpp:643
#30 0x00007f5b5ad7b9e1 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:182
#31 0x00007f5b5704bf2e in g_main_dispatch (context=0x7f5b48004ff0) at ../../../glib/gmain.c:3182
#32 g_main_context_dispatch (context=context@entry=0x7f5b48004ff0) at ../../../glib/gmain.c:3847
#33 0x00007f5b5704c1c8 in g_main_context_iterate (context=context@entry=0x7f5b48004ff0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:3920
#34 0x00007f5b5704c25c in g_main_context_iteration (context=0x7f5b48004ff0, may_block=may_block@entry=1) at ../../../glib/gmain.c:3981
#35 0x00007f5b5ad7bdaf in QEventDispatcherGlib::processEvents (this=0x563f007bfa30, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#36 0x00007f5b5ad1d03a in QEventLoop::exec (this=this@entry=0x7ffd20284570, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#37 0x00007f5b5ad26170 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1363
#38 0x0000563efea5868f in ?? ()
#39 0x00007f5b5a77209b in __libc_start_main (main=0x563efea58620, argc=1, argv=0x7ffd20284748, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffd20284738) at ../csu/libc-start.c:308
#40 0x0000563efea5870a in _start ()


EXPECTED RESULT
Guess it should crash, ney? ;-)


SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Debian unstable with KDE Neon User packages
KDE Plasma Version: 4:5.16.0-0xneon+18.04+bionic+build36
KDE Frameworks Version: 5.59.0-0xneon+18.04+bionic+build27
LMDB Version: 0.9.22-1
Qt Version: 5.12.3+dfsg-1+18.04+bionic+build58


ADDITIONAL INFORMATION
By the looks of it, this is probably database corruption. If it is helpful to you, I could send you a copy of this database file (if you tell me where to find it) through private channels.
Comment 1 Nate Graham 2019-06-16 22:43:54 UTC

*** This bug has been marked as a duplicate of bug 393472 ***