https://bugs.kde.org/show_bug.cgi?id=408779

            Bug ID: 408779
           Summary: Baloo crashes in mdb with assertion “mdb.c:6125:
                    Assertion 'IS_LEAF(mp)' failed in mdb_cursor_set()”
           Product: frameworks-baloo
           Version: 5.59.0
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: Engine
          Assignee: baloo-bugs-n...@kde.org
          Reporter: alexander-kde@ninetailed.ninja
  Target Milestone: ---

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.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to