Bug 352260 - Baloo crashes when finding a new file
Summary: Baloo crashes when finding a new file
Status: RESOLVED DUPLICATE of bug 364475
Alias: None
Product: frameworks-baloo
Classification: Frameworks and Libraries
Component: Baloo File Daemon (show other bugs)
Version: 5.13.0
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Pinak Ahuja
URL:
Keywords: drkonqi
: 361183 361880 361975 362792 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-09-04 11:40 UTC by don bowman
Modified: 2016-09-11 13:29 UTC (History)
8 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Valgrind output (76.36 KB, text/plain)
2016-02-24 22:00 UTC, Matthew Dawson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description don bowman 2015-09-04 11:40:54 UTC
Application: baloo_file (5.13.0)

Qt Version: 5.4.2
Operating System: Linux 4.1.0-3-generic x86_64
Distribution: Ubuntu Wily Werewolf (development branch)

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

This happens on each login, and sometimes on creating a new file in my home dir.
I'm not sure how to find the offending file, or if its related to the specific contents.

The lsof of  it @ this time is below. None of those appear to be a new file being searched.

      Output information may be incomplete.
COMMAND    PID USER   FD   TYPE             DEVICE  SIZE/OFF     NODE NAME
baloo_fil 2070  don  cwd    DIR               8,49     12288 29622273 /home/don
baloo_fil 2070  don  rtd    DIR                8,1      4096        2 /
baloo_fil 2070  don  txt    REG                8,1    271040  1310841 /usr/bin/baloo_file
baloo_fil 2070  don  mem    REG               8,49 871219200 37224462 /home/don/.local/share/baloo/index
baloo_fil 2070  don  mem    REG                8,1     51736  1449423 /lib/x86_64-linux-gnu/libnss_files-2.21.so
baloo_fil 2070  don  mem    REG                8,1     47616  1449433 /lib/x86_64-linux-gnu/libnss_nis-2.21.so
baloo_fil 2070  don  mem    REG                8,1     97224  1449417 /lib/x86_64-linux-gnu/libnsl-2.21.so
baloo_fil 2070  don  mem    REG                8,1     35688  1449419 /lib/x86_64-linux-gnu/libnss_compat-2.21.so
baloo_fil 2070  don  mem    REG                8,1    134800  1573050 /usr/share/mime/mime.cache
baloo_fil 2070  don  mem    REG                8,1     27160  1574870 /usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/org.kde.kidletime.platforms/KF5IdleTimeXcbPlugin0.so
baloo_fil 2070  don  mem    REG                8,1     39232  1325173 /usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2
baloo_fil 2070  don  mem    REG                8,1     22744  1314459 /usr/lib/x86_64-linux-gnu/libxcb-util.so.1.0.0
baloo_fil 2070  don  mem    REG                8,1     18920  1449508 /lib/x86_64-linux-gnu/libuuid.so.1.3.0
baloo_fil 2070  don  mem    REG                8,1     39416  1325199 /usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0
baloo_fil 2070  don  mem    REG                8,1    252896  1325458 /usr/lib/x86_64-linux-gnu/libfontconfig.so.1.8.0
baloo_fil 2070  don  mem    REG                8,1    256440  1326379 /usr/lib/x86_64-linux-gnu/libxkbcommon.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1     31536  1326377 /usr/lib/x86_64-linux-gnu/libxkbcommon-x11.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1    108672  1326370 /usr/lib/x86_64-linux-gnu/libxcb-xkb.so.1.0.0
baloo_fil 2070  don  mem    REG                8,1     14416  1326360 /usr/lib/x86_64-linux-gnu/libxcb-shape.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1     55376  1326352 /usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0
baloo_fil 2070  don  mem    REG                8,1     14432  1326362 /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1     30800  1326368 /usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1     18368  1326344 /usr/lib/x86_64-linux-gnu/libxcb-icccm.so.4.0.0
baloo_fil 2070  don  mem    REG                8,1     18536  1311348 /usr/lib/x86_64-linux-gnu/libxcb-image.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1     39008  1326358 /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1     93824  1324833 /usr/lib/x86_64-linux-gnu/libICE.so.6.3.0
baloo_fil 2070  don  mem    REG                8,1     30960  1325160 /usr/lib/x86_64-linux-gnu/libSM.so.6.0.1
baloo_fil 2070  don  mem    REG                8,1     14536  1326356 /usr/lib/x86_64-linux-gnu/libxcb-render-util.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1     63912  1325187 /usr/lib/x86_64-linux-gnu/libXi.so.6.1.0
baloo_fil 2070  don  mem    REG                8,1    772528  1575008 /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqxcb.so
baloo_fil 2070  don  mem    REG                8,1   2919792  1318317 /usr/lib/locale/locale-archive
baloo_fil 2070  don  mem    REG                8,1     76328  1449373 /lib/x86_64-linux-gnu/libgpg-error.so.0.15.0
baloo_fil 2070  don  mem    REG                8,1     22592  1325177 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
baloo_fil 2070  don  mem    REG                8,1     14456  1325166 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
baloo_fil 2070  don  mem    REG                8,1    924096  1449369 /lib/x86_64-linux-gnu/libgcrypt.so.20.0.3
baloo_fil 2070  don  mem    REG                8,1    137400  1449393 /lib/x86_64-linux-gnu/liblzma.so.5.0.0
baloo_fil 2070  don  mem    REG                8,1  25913104  1325685 /usr/lib/x86_64-linux-gnu/libicudata.so.55.1
baloo_fil 2070  don  mem    REG                8,1     10232  1326348 /usr/lib/x86_64-linux-gnu/libxcb-keysyms.so.1.0.0
baloo_fil 2070  don  mem    REG                8,1     55600  1325406 /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0
baloo_fil 2070  don  mem    REG                8,1     22784  1325215 /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0
baloo_fil 2070  don  mem    REG                8,1     10264  1326385 /usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0
baloo_fil 2070  don  mem    REG                8,1     26736  1326364 /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0
baloo_fil 2070  don  mem    REG                8,1     10320  1326350 /usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1     10336  1326340 /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1     18512  1326338 /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1    100432  1326342 /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1      5992  1325162 /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1.0.0
baloo_fil 2070  don  mem    REG                8,1     22584  1325181 /usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0
baloo_fil 2070  don  mem    REG                8,1     10248  1325175 /usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0
baloo_fil 2070  don  mem    REG                8,1     73640  1325179 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
baloo_fil 2070  don  mem    REG                8,1    178440  1325530 /usr/lib/x86_64-linux-gnu/libglapi.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1    166000  1449360 /lib/x86_64-linux-gnu/libexpat.so.1.6.0
baloo_fil 2070  don  mem    REG                8,1    112968  1325566 /usr/lib/x86_64-linux-gnu/libgraphite2.so.3.0.1
baloo_fil 2070  don  mem    REG                8,1    686560  1325490 /usr/lib/x86_64-linux-gnu/libfreetype.so.6.11.1
baloo_fil 2070  don  mem    REG                8,1    133584  1326372 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
baloo_fil 2070  don  mem    REG                8,1    444344  1449453 /lib/x86_64-linux-gnu/libpcre.so.3.13.1
baloo_fil 2070  don  mem    REG                8,1     31016  1325450 /usr/lib/x86_64-linux-gnu/libffi.so.6.0.4
baloo_fil 2070  don  mem    REG                8,1     31680  1449478 /lib/x86_64-linux-gnu/librt-2.21.so
baloo_fil 2070  don  mem    REG                8,1     14592  1449353 /lib/x86_64-linux-gnu/libdl-2.21.so
baloo_fil 2070  don  mem    REG                8,1    403384  1325952 /usr/lib/x86_64-linux-gnu/libpcre16.so.3.13.1
baloo_fil 2070  don  mem    REG                8,1   1636360  1325699 /usr/lib/x86_64-linux-gnu/libicuuc.so.55.1
baloo_fil 2070  don  mem    REG                8,1   2500952  1325687 /usr/lib/x86_64-linux-gnu/libicui18n.so.55.1
baloo_fil 2070  don  mem    REG                8,1     92504  1450789 /lib/x86_64-linux-gnu/libgcc_s.so.1
baloo_fil 2070  don  mem    REG                8,1     35152  1312526 /usr/lib/libfam.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1     80440  1325813 /usr/lib/x86_64-linux-gnu/liblmdb.so.0.0.0
baloo_fil 2070  don  mem    REG                8,1    290992  1324994 /usr/lib/x86_64-linux-gnu/libKF5WindowSystem.so.5.13.0
baloo_fil 2070  don  mem    REG                8,1    619000  1589641 /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0
baloo_fil 2070  don  mem    REG                8,1    108920  1449513 /lib/x86_64-linux-gnu/libz.so.1.2.8
baloo_fil 2070  don  mem    REG                8,1    383920  1325666 /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.10000.1
baloo_fil 2070  don  mem    REG                8,1    153936  1449465 /lib/x86_64-linux-gnu/libpng12.so.0.51.0
baloo_fil 2070  don  mem    REG                8,1   1290224  1325164 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
baloo_fil 2070  don  mem    REG                8,1   1106880  1448785 /lib/x86_64-linux-gnu/libglib-2.0.so.0.4506.0
baloo_fil 2070  don  mem    REG                8,1    339064  1311086 /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.4506.0
baloo_fil 2070  don  mem    REG                8,1    309392  1442148 /lib/x86_64-linux-gnu/libdbus-1.so.3.14.3
baloo_fil 2070  don  mem    REG                8,1    142080  1449470 /lib/x86_64-linux-gnu/libpthread-2.21.so
baloo_fil 2070  don  mem    REG                8,1   1869392  1449336 /lib/x86_64-linux-gnu/libc-2.21.so
baloo_fil 2070  don  mem    REG                8,1   1084840  1449396 /lib/x86_64-linux-gnu/libm-2.21.so
baloo_fil 2070  don  mem    REG                8,1   1562472  1313202 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
baloo_fil 2070  don  mem    REG                8,1   4946424  1325029 /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.4.2
baloo_fil 2070  don  mem    REG                8,1    538480  1324875 /usr/lib/x86_64-linux-gnu/libKF5CoreAddons.so.5.13.0
baloo_fil 2070  don  mem    REG                8,1    187160  1324859 /usr/lib/x86_64-linux-gnu/libKF5BalooEngine.so.5.13.0
baloo_fil 2070  don  mem    REG                8,1    373104  1324869 /usr/lib/x86_64-linux-gnu/libKF5ConfigCore.so.5.13.0
baloo_fil 2070  don  mem    REG                8,1     27360  1324877 /usr/lib/x86_64-linux-gnu/libKF5Crash.so.5.13.0
baloo_fil 2070  don  mem    REG                8,1    204168  1324896 /usr/lib/x86_64-linux-gnu/libKF5I18n.so.5.13.0
baloo_fil 2070  don  mem    REG                8,1     84736  1324887 /usr/lib/x86_64-linux-gnu/libKF5FileMetaData.so.5.13.0
baloo_fil 2070  don  mem    REG                8,1   5472864  1325041 /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5.4.2
baloo_fil 2070  don  mem    REG                8,1   6811952  1325095 /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.4.2
baloo_fil 2070  don  mem    REG                8,1     76848  1324855 /usr/lib/x86_64-linux-gnu/libKF5Auth.so.5.13.0
baloo_fil 2070  don  mem    REG                8,1    804080  1324966 /usr/lib/x86_64-linux-gnu/libKF5Solid.so.5.13.0
baloo_fil 2070  don  mem    REG                8,1     43648  1324900 /usr/lib/x86_64-linux-gnu/libKF5IdleTime.so.5.13.0
baloo_fil 2070  don  mem    REG                8,1    154376  1449308 /lib/x86_64-linux-gnu/ld-2.21.so
baloo_fil 2070  don  mem    REG               8,49     31652 37228892 /home/don/.local/share/mime/mime.cache
baloo_fil 2070  don  mem    REG                8,1    524024  1442037 /lib/x86_64-linux-gnu/libsystemd.so.0.10.2
baloo_fil 2070  don  mem    REG                8,1     14648  1325098 /usr/lib/x86_64-linux-gnu/libQt5X11Extras.so.5.4.2
baloo_fil 2070  don  mem    REG                8,1    122624  1442424 /lib/x86_64-linux-gnu/libudev.so.1.6.4
baloo_fil 2070  don  mem    REG                8,1    240824  1325101 /usr/lib/x86_64-linux-gnu/libQt5Xml.so.5.4.2
baloo_fil 2070  don  mem    REG                8,1    521704  1325032 /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5.4.2
baloo_fil 2070  don  DEL    REG               8,49           37224642 /home/don/.local/share/baloo/index-lock
baloo_fil 2070  don  mem    REG                8,1     44088  1574998 /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libcomposeplatforminputcontextplugin.so
baloo_fil 2070  don    0r  FIFO               0,10       0t0    24517 pipe
baloo_fil 2070  don    1w   REG               8,49    233680 29622282 /home/don/.xsession-errors
baloo_fil 2070  don    2w   REG               8,49    233680 29622282 /home/don/.xsession-errors
baloo_fil 2070  don    3u  unix 0x0000000000000000       0t0    10206 socket
don@office:~$

The crash can be reproduced every time.

-- Backtrace:
Application: Baloo File Indexing Daemon (baloo_file), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
__lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
[Current thread is 1 (Thread 0x7f5787278800 (LWP 2070))]

Thread 2 (Thread 0x7f5633fff700 (LWP 2160)):
[KCrash Handler]
#6  __memcpy_sse2_unaligned () at ../sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S:116
#7  0x00007f57854a92fa in memcpy (__len=738337392, __src=<optimized out>, __dest=<optimized out>) at /usr/include/x86_64-linux-gnu/bits/string3.h:53
#8  Baloo::PostingCodec::decode (this=this@entry=0x7f5633ffea6f, arr=...) at ../../../src/codecs/postingcodec.cpp:42
#9  0x00007f5785498c64 in Baloo::PostingDB::get (this=this@entry=0x7f5633ffeb90, term=...) at ../../../src/engine/postingdb.cpp:100
#10 0x00007f57854a7051 in Baloo::WriteTransaction::commit (this=<optimized out>) at ../../../src/engine/writetransaction.cpp:268
#11 0x00007f57854a1592 in Baloo::Transaction::commit (this=this@entry=0x7f5633ffec90) at ../../../src/engine/transaction.cpp:271
#12 0x000000000041a8f9 in Baloo::NewFileIndexer::run (this=0x13f9620) at ../../../src/file/newfileindexer.cpp:73
#13 0x00007f5784de0e13 in QThreadPoolThread::run (this=0x1091ea0) at thread/qthreadpool.cpp:93
#14 0x00007f5784de425e in QThreadPrivate::start (arg=0x1091ea0) at thread/qthread_unix.cpp:337
#15 0x00007f57840d86aa in start_thread (arg=0x7f5633fff700) at pthread_create.c:333
#16 0x00007f57843f5eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f5787278800 (LWP 2070)):
#0  __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
#1  0x00007f57840dacfd in __GI___pthread_mutex_lock (mutex=0x7f578740a040) at ../nptl/pthread_mutex_lock.c:80
#2  0x00007f57828589c2 in ?? () from /usr/lib/x86_64-linux-gnu/liblmdb.so.0
#3  0x00007f5782859c10 in mdb_txn_begin () from /usr/lib/x86_64-linux-gnu/liblmdb.so.0
#4  0x00007f57854a0e8b in Baloo::Transaction::Transaction (this=0x7ffd87af86a0, db=..., type=Baloo::Transaction::ReadWrite) at ../../../src/engine/transaction.cpp:54
#5  0x000000000042579f in Baloo::MetadataMover::removeFileMetadata (this=0xd8e700, file=...) at ../../../src/file/metadatamover.cpp:65
#6  0x00007f5784ff4197 in QtPrivate::QSlotObjectBase::call (a=0x7ffd87af87f0, r=0xd8e700, this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#7  QMetaObject::activate (sender=sender@entry=0xdf3cd0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7ffd87af87f0) at kernel/qobject.cpp:3702
#8  0x00007f5784ff4b07 in QMetaObject::activate (sender=sender@entry=0xdf3cd0, m=m@entry=0x640860 <Baloo::PendingFileQueue::staticMetaObject>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7ffd87af87f0) at kernel/qobject.cpp:3582
#9  0x000000000042ecd5 in Baloo::PendingFileQueue::removeFileIndex (this=this@entry=0xdf3cd0, _t1=...) at moc_pendingfilequeue.cpp:216
#10 0x00000000004239d6 in Baloo::PendingFileQueue::processCache (this=0xdf3cd0) at ../../../src/file/pendingfilequeue.cpp:89
#11 0x00007f5784ff4197 in QtPrivate::QSlotObjectBase::call (a=0x7ffd87af8970, r=0xdf3cd0, this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#12 QMetaObject::activate (sender=sender@entry=0xdf3ce8, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3702
#13 0x00007f5784ff4b07 in QMetaObject::activate (sender=sender@entry=0xdf3ce8, m=m@entry=0x7f57851f77c0 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3582
#14 0x00007f578506d690 in QTimer::timeout (this=this@entry=0xdf3ce8) at .moc/moc_qtimer.cpp:192
#15 0x00007f5785000cf8 in QTimer::timerEvent (this=0xdf3ce8, e=<optimized out>) at kernel/qtimer.cpp:247
#16 0x00007f5784ff5183 in QObject::event (this=0xdf3ce8, e=<optimized out>) at kernel/qobject.cpp:1267
#17 0x00007f57865edb8c in QApplicationPrivate::notify_helper (this=this@entry=0xcb4330, receiver=receiver@entry=0xdf3ce8, e=e@entry=0x7ffd87af8ca0) at kernel/qapplication.cpp:3720
#18 0x00007f57865f3230 in QApplication::notify (this=0x7ffd87af8f90, receiver=0xdf3ce8, e=0x7ffd87af8ca0) at kernel/qapplication.cpp:3503
#19 0x00007f5784fc3a9b in QCoreApplication::notifyInternal (this=0x7ffd87af8f90, receiver=0xdf3ce8, event=event@entry=0x7ffd87af8ca0) at kernel/qcoreapplication.cpp:935
#20 0x00007f5785019c1d in QCoreApplication::sendEvent (event=0x7ffd87af8ca0, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:228
#21 QTimerInfoList::activateTimers (this=0xcf4520) at kernel/qtimerinfo_unix.cpp:635
#22 0x00007f578501a121 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:177
#23 0x00007f578396cf87 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x00007f578396d1e0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#25 0x00007f578396d28c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#26 0x00007f578501adff in QEventDispatcherGlib::processEvents (this=0xcf4610, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#27 0x00007f5784fc12da in QEventLoop::exec (this=this@entry=0x7ffd87af8ee0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#28 0x00007f5784fc8e4c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1188
#29 0x00007f578603a09c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1510
#30 0x00007f57865ea025 in QApplication::exec () at kernel/qapplication.cpp:2956
#31 0x00000000004149a0 in main (argc=1, argv=<optimized out>) at ../../../src/file/main.cpp:96

Reported using DrKonqi
Comment 1 Vishesh Handa 2015-09-05 13:43:08 UTC
Hi.

Since this is reproducible, could you please see if it occurs when you run the `baloo_file` executable? If it does could you please run it under valgrind and paste the output?

$ valgrind baloo_file
Comment 2 Matthew Dawson 2016-02-24 21:59:14 UTC
Hi Vishesh,

I've got this happening reliably for me.  Relevant Valgrind output (too large for a comment, I'll attach the full thing):

==30783== 
==30783== Conditional jump or move depends on uninitialised value(s)
==30783==    at 0x4C2E945: _intel_fast_memcpy (vg_replace_strmem.c:929)
==30783==    by 0x5A28EF1: memcpy (string3.h:53)
==30783==    by 0x5A28EF1: Baloo::PostingCodec::decode(QByteArray const&) (postingcodec.cpp:42)
==30783==    by 0x5A0F35F: Baloo::PostingDB::get(QByteArray const&) (postingdb.cpp:100)
==30783==    by 0x5A24FC2: Baloo::WriteTransaction::commit() (writetransaction.cpp:286)
==30783==    by 0x5A1AC72: Baloo::Transaction::commit() (transaction.cpp:262)
==30783==    by 0x422869: Baloo::MetadataMover::moveFileMetadata(QString const&, QString const&) (metadatamover.cpp:58)
==30783==    by 0x619C36A: call (qobject_impl.h:124)
==30783==    by 0x619C36A: QMetaObject::activate(QObject*, int, int, void**) (qobject.cpp:3698)
==30783==    by 0x426DB5: moved (moc_kinotify.cpp:330)
==30783==    by 0x426DB5: KInotify::slotEvent(int) (kinotify.cpp:421)
==30783==    by 0x619C36A: call (qobject_impl.h:124)
==30783==    by 0x619C36A: QMetaObject::activate(QObject*, int, int, void**) (qobject.cpp:3698)
==30783==    by 0x6221A1B: QSocketNotifier::activated(int, QSocketNotifier::QPrivateSignal) (moc_qsocketnotifier.cpp:134)
==30783==    by 0x61A9192: QSocketNotifier::event(QEvent*) (qsocketnotifier.cpp:260)
==30783==    by 0x616B3DB: notify (qcoreapplication.cpp:1038)
==30783==    by 0x616B3DB: QCoreApplication::notifyInternal(QObject*, QEvent*) (qcoreapplication.cpp:965)
==30783== 
==30783== Invalid read of size 16
==30783==    at 0x4C2E900: _intel_fast_memcpy (vg_replace_strmem.c:929)
==30783==    by 0x5A28EF1: memcpy (string3.h:53)
==30783==    by 0x5A28EF1: Baloo::PostingCodec::decode(QByteArray const&) (postingcodec.cpp:42)
==30783==    by 0x5A0F35F: Baloo::PostingDB::get(QByteArray const&) (postingdb.cpp:100)
==30783==    by 0x5A24FC2: Baloo::WriteTransaction::commit() (writetransaction.cpp:286)
==30783==    by 0x5A1AC72: Baloo::Transaction::commit() (transaction.cpp:262)
==30783==    by 0x422869: Baloo::MetadataMover::moveFileMetadata(QString const&, QString const&) (metadatamover.cpp:58)
==30783==    by 0x619C36A: call (qobject_impl.h:124)
==30783==    by 0x619C36A: QMetaObject::activate(QObject*, int, int, void**) (qobject.cpp:3698)
==30783==    by 0x426DB5: moved (moc_kinotify.cpp:330)
==30783==    by 0x426DB5: KInotify::slotEvent(int) (kinotify.cpp:421)
==30783==    by 0x619C36A: call (qobject_impl.h:124)
==30783==    by 0x619C36A: QMetaObject::activate(QObject*, int, int, void**) (qobject.cpp:3698)
==30783==    by 0x6221A1B: QSocketNotifier::activated(int, QSocketNotifier::QPrivateSignal) (moc_qsocketnotifier.cpp:134)
==30783==    by 0x61A9192: QSocketNotifier::event(QEvent*) (qsocketnotifier.cpp:260)
==30783==    by 0x616B3DB: notify (qcoreapplication.cpp:1038)
==30783==    by 0x616B3DB: QCoreApplication::notifyInternal(QObject*, QEvent*) (qcoreapplication.cpp:965)
==30783==  Address 0x4065000 is not stack'd, malloc'd or (recently) free'd
==30783== 
KCrash: Attempting to start /usr/bin/baloo_file from kdeinit
sock_file=/run/user/1000/kdeinit5__0
KCrash: Application 'baloo_file' crashing...
==30783== 
==30783== HEAP SUMMARY:
==30783==     in use at exit: 145,962,439 bytes in 691,847 blocks
==30783==   total heap usage: 61,909,015 allocs, 61,217,168 frees, 12,624,450,230 bytes allocated
==30783== 
==30783== LEAK SUMMARY:
==30783==    definitely lost: 0 bytes in 0 blocks
==30783==    indirectly lost: 0 bytes in 0 blocks
==30783==      possibly lost: 3,337,148 bytes in 86 blocks
==30783==    still reachable: 142,625,291 bytes in 691,761 blocks
==30783==         suppressed: 0 bytes in 0 blocks
==30783== Rerun with --leak-check=full to see details of leaked memory
==30783== 
==30783== For counts of detected and suppressed errors, rerun with: -v
==30783== Use --track-origins=yes to see where uninitialised values come from
==30783== ERROR SUMMARY: 681434 errors from 42 contexts (suppressed: 0 from 0)
Killed

But I think the root cause is something around LMDB.  I got it to happen in gdb and poked around some.  The address given back by mdb_get is invalid to start with.  I tried to get GDB to break if rc != 0 (my desktop has Qt compiled without debugging, so the asserts disappear), but it didn't before it crashed again.  Could mdb be returning invalid pointers?  The pointers aren't anywhere close to an mmaped file.  The size looks really large too (35768630 and 42781780).

I'll see about getting the rc value out on crash.  Is there anything else that can help?  Also, I see what appears to be similar bugs about this popping up.  If you'd like, I'll mark them as duplicates of this bug.
Comment 3 Matthew Dawson 2016-02-24 22:00:40 UTC
Created attachment 97549 [details]
Valgrind output
Comment 4 Matthew Dawson 2016-03-06 01:09:20 UTC
So, LMDB is failing with error MDB_BAD_TXN, with a message of "Transaction must abort, has a child, or is invalid".  Having got an debug version of Baloo installed, it turns out this gets printed earlier:

ASSERT failure in PositionDB::put: "MDB_MAP_FULL: Environment mapsize limit reached", file /var/tmp/portage/kde-frameworks/baloo-5.19.0/work/baloo-5.19.0/src/engine/positiondb.cpp, line 80                                                                                   
KCrash: Attempting to start /usr/bin/baloo_file from kdeinit
sock_file=/run/user/1000/kdeinit5__0
KCrash: Application 'baloo_file' crashing...
Aborted

For me, I have 6.5T worth of data in over 2 million files, so I'm not surprised I broke a limit.  Would a system to recover from this error and resize the database be ok?
Comment 5 Christoph Feck 2016-05-11 00:46:49 UTC
*** Bug 361183 has been marked as a duplicate of this bug. ***
Comment 6 Christoph Feck 2016-05-11 00:47:33 UTC
*** Bug 361880 has been marked as a duplicate of this bug. ***
Comment 7 Christoph Feck 2016-05-11 00:48:07 UTC
*** Bug 361975 has been marked as a duplicate of this bug. ***
Comment 8 Christoph Feck 2016-05-11 00:48:36 UTC
*** Bug 362792 has been marked as a duplicate of this bug. ***
Comment 9 Christoph Cullmann 2016-09-11 13:29:47 UTC
Here we run into the db too large issue :/
Bug 364475
https://git.reviewboard.kde.org/r/128885/

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