Bug 300183 - skrooge crash on launch with SQLite 3.7.12
Summary: skrooge crash on launch with SQLite 3.7.12
Status: RESOLVED UPSTREAM
Alias: None
Product: skrooge
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Arch Linux Linux
: NOR critical
Target Milestone: ---
Assignee: Stephane MANKOWSKI
URL:
Keywords:
: 300305 300311 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-05-17 08:39 UTC by Pierre Buard
Modified: 2012-05-25 09:23 UTC (History)
9 users (show)

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


Attachments
Skrooge traces when crashing (73.75 KB, text/plain)
2012-05-17 15:43 UTC, Guillaume DE BURE
Details
backtrace with details from SQLite (9.57 KB, application/octet-stream)
2012-05-19 19:37 UTC, Guillaume DE BURE
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Pierre Buard 2012-05-17 08:39:11 UTC
After upgrading to SQLite 3.7.12, Skrooge systematically crashes on launch. Everything is back to normal when reverting to 3.7.11, with no loss of data.

Reproducible: Always

Steps to Reproduce:
1. Use SQLite 3.7.12
2. Launch Skrooge



Application: skrooge (1.3.0)
KDE Platform Version: 4.8.3 (4.8.3)
Qt Version: 4.8.1
Operating System: Linux 3.3.6-1-ARCH x86_64

-- Backtrace:
A useful backtrace could not be generated
Comment 1 Guillaume DE BURE 2012-05-17 15:43:39 UTC
Created attachment 71158 [details]
Skrooge traces when crashing
Comment 2 Guillaume DE BURE 2012-05-17 15:45:35 UTC
Confirmed here also on my archlinux install... Not sure if this needs to be resolved on skrooge side or on sqlite side.
Comment 3 Christoph Feck 2012-05-17 18:36:45 UTC
According to http://forums.gentoo.org/viewtopic-p-7039922.html also GNOME is affected, so it looks like an upstream bug.
Comment 4 Jure Repinc 2012-05-19 10:19:52 UTC
This is the backtrace I get:
Application: Skrooge (skrooge), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fa9f1aab780 (LWP 19545))]

Thread 3 (Thread 0x7fa9ed90a700 (LWP 19546)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00000037095a67b4 in WTF::TCMalloc_PageHeap::scavengerThread() () from /usr/lib64/qt4/libQtWebKit.so.4
#2  0x00000037095a68e9 in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /usr/lib64/qt4/libQtWebKit.so.4
#3  0x0000003c37e09006 in start_thread (arg=0x7fa9ed90a700) at pthread_create.c:305
#4  0x0000003c372e95cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 2 (Thread 0x7fa9ed009700 (LWP 19547)):
#0  0x0000003c37e0c24a in __pthread_mutex_unlock_usercnt (mutex=0x7fa9e8000a60, decr=1) at pthread_mutex_unlock.c:37
#1  0x0000003e4fc866f1 in g_mutex_unlock (mutex=<optimized out>) at gthread-posix.c:227
#2  0x0000003e4fc4a85c in g_main_context_check (context=0x7fa9e80009a0, max_priority=2147483647, fds=<optimized out>, n_fds=<optimized out>) at gmain.c:3021
#3  0x0000003e4fc4acf6 in g_main_context_iterate (dispatch=1, block=<optimized out>, context=0x7fa9e80009a0, self=<optimized out>) at gmain.c:3143
#4  g_main_context_iterate (context=0x7fa9e80009a0, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3083
#5  0x0000003e4fc4ae6c in g_main_context_iteration (context=0x7fa9e80009a0, may_block=1) at gmain.c:3207
#6  0x0000003e501b146e in QEventDispatcherGlib::processEvents (this=0x7fa9e80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#7  0x0000003e50180fb2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#8  0x0000003e50181237 in QEventLoop::exec (this=0x7fa9ed008e00, flags=...) at kernel/qeventloop.cpp:204
#9  0x0000003e5007fa74 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#10 0x0000003e50082abb in QThreadPrivate::start (arg=0x1e99050) at thread/qthread_unix.cpp:298
#11 0x0000003c37e09006 in start_thread (arg=0x7fa9ed009700) at pthread_create.c:305
#12 0x0000003c372e95cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 1 (Thread 0x7fa9f1aab780 (LWP 19545)):
[KCrash Handler]
#6  sqlite3ExprCodeTarget (pParse=0x227d2b8, pExpr=0x1db6b68, target=75) at sqlite3.c:77533
#7  0x0000003e57c4c6bd in sqlite3ExprCodeExprList (pParse=0x227d2b8, target=75, doHardCopy=1, pList=<optimized out>) at sqlite3.c:78099
#8  0x0000003e57c0d18f in updateAccumulator (pParse=0x227d2b8, pAggInfo=0x7fff1d0b0a90) at sqlite3.c:98535
#9  0x0000003e57c4a282 in sqlite3Select (pParse=<optimized out>, p=0x1db1168, pDest=<optimized out>) at sqlite3.c:99218
#10 0x0000003e57c60548 in yy_reduce (yyruleno=112, yypParser=0x22797c8) at sqlite3.c:110607
#11 sqlite3Parser (yyp=<optimized out>, yymajor=1, yyminor=..., pParse=<optimized out>) at sqlite3.c:46063
#12 0x0000003e57c62744 in sqlite3RunParser (pParse=0x227d2b8, zSql=0x227d048 "SELECT TOTAL(f_CURRENTAMOUNT), d_DATEMONTH  from v_operation_display WHERE d_DATEMONTH IN ('2012-05', '2012-04')  group by d_DATEMONTH, t_TYPEEXPENSE", pzErrMsg=0x7fff1d0b0da0) at sqlite3.c:112436
#13 0x0000003e57c649ea in sqlite3Prepare (db=0x22ac0e8, zSql=0x227d048 "SELECT TOTAL(f_CURRENTAMOUNT), d_DATEMONTH  from v_operation_display WHERE d_DATEMONTH IN ('2012-05', '2012-04')  group by d_DATEMONTH, t_TYPEEXPENSE", nBytes=-1, saveSqlFlag=1, pReprepare=<optimized out>, ppStmt=0x20325a0, pzTail=0x7fff1d0b0e78) at sqlite3.c:94657
#14 0x0000003e57c64be5 in sqlite3LockAndPrepare (pzTail=0x7fff1d0b0e78, ppStmt=0x20325a0, pOld=0x0, saveSqlFlag=1, nBytes=-1, zSql=0x227d048 "SELECT TOTAL(f_CURRENTAMOUNT), d_DATEMONTH  from v_operation_display WHERE d_DATEMONTH IN ('2012-05', '2012-04')  group by d_DATEMONTH, t_TYPEEXPENSE", db=0x22ac0e8) at sqlite3.c:94749
#15 sqlite3LockAndPrepare (db=0x22ac0e8, zSql=0x227d048 "SELECT TOTAL(f_CURRENTAMOUNT), d_DATEMONTH  from v_operation_display WHERE d_DATEMONTH IN ('2012-05', '2012-04')  group by d_DATEMONTH, t_TYPEEXPENSE", nBytes=-1, saveSqlFlag=1, pOld=0x0, ppStmt=0x20325a0, pzTail=0x7fff1d0b0e78) at sqlite3.c:29196
#16 0x0000003e57c64ce4 in sqlite3Prepare16 (db=0x22ac0e8, zSql=0x227caba, nBytes=<optimized out>, saveSqlFlag=1, ppStmt=0x20325a0, pzTail=0x7fff1d0b0f38) at sqlite3.c:94858
#17 0x00007fa9a39be096 in QSQLiteResult::prepare (this=0x2275880, query=...) at ../../../sql/drivers/sqlite/qsql_sqlite.cpp:330
#18 0x00007fa9a39bcf2a in QSQLiteResult::reset (this=0x2275880, query=...) at ../../../sql/drivers/sqlite/qsql_sqlite.cpp:312
#19 0x0000003e55c12b2e in QSqlQuery::exec (this=0x7fff1d0b10b0, query=...) at kernel/qsqlquery.cpp:378
#20 0x0000003707245d93 in SKGServices::executeSelectSqliteOrder (iDb=0x1f2c660, iSqlOrder=..., oResult=...) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/skgbasemodeler/skgservices.cpp:948
#21 0x000000370722d245 in SKGDocument::executeSelectSqliteOrder (this=0x7fff1d0b3140, iSqlOrder=..., oResult=...) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/skgbasemodeler/skgdocument.cpp:2456
#22 0x00007fa9a6d8c0ec in SKGOperationBoardWidget::dataModified (this=0x217d430, iIdTransaction=<optimized out>, iTableName=...) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/plugins/skrooge/skrooge_operation/skgoperationboardwidget.cpp:151
#23 0x00007fa9a6d8dbd7 in SKGOperationBoardWidget::dataModified (this=0x217d430, iTableName=..., iIdTransaction=<optimized out>) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/plugins/skrooge/skrooge_operation/skgoperationboardwidget.cpp:134
#24 0x00007fa9a6d8ded9 in SKGOperationBoardWidget::setState (this=0x217d430, iState=...) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/plugins/skrooge/skrooge_operation/skgoperationboardwidget.cpp:92
#25 0x00007fa9a455dcce in SKGDashboardPluginWidget::addItem (this=0x1f18080, iDashboard=0x1f7b540, iIndex=0, iZoom=0, iState=...) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/plugins/generic/skg_dashboard/skgdashboardpluginwidget.cpp:610
#26 0x00007fa9a455e72d in SKGDashboardPluginWidget::setState (this=0x1f18080, iState=...) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/plugins/generic/skg_dashboard/skgdashboardpluginwidget.cpp:253
#27 0x0000003707656e98 in SKGMainPanel::openPage (this=0x1c9f070, plugin=0x201a0a0, index=-1, parameters=..., title=..., iID=..., iSetCurrent=true) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/skgbasegui/skgmainpanel.cpp:1393
#28 0x00007fa9a4bb781f in SKGBookmarkPluginDockWidget::openBookmark (iNode=..., iFirstInNewPage=<optimized out>, iPin=true) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/plugins/generic/skg_bookmark/skgbookmarkplugindockwidget.cpp:213
#29 0x00007fa9a4bb192a in SKGBookmarkPlugin::goHome (this=<optimized out>) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/plugins/generic/skg_bookmark/skgbookmarkplugin.cpp:248
#30 0x00007fa9a4bb35b9 in SKGBookmarkPlugin::refresh (this=0x2002900) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/plugins/generic/skg_bookmark/skgbookmarkplugin.cpp:159
#31 0x00000037076562dc in SKGMainPanel::refresh (this=0x1c9f070) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/skgbasegui/skgmainpanel.cpp:1260
#32 0x000000370766075e in qt_static_metacall (_a=0x1cef5d0, _id=<optimized out>, _o=0x1c9f070, _c=<optimized out>) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0_build/skgbasegui/skgmainpanel.moc:247
#33 SKGMainPanel::qt_static_metacall (_o=0x1c9f070, _c=<optimized out>, _id=<optimized out>, _a=0x1cef5d0) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0_build/skgbasegui/skgmainpanel.moc:178
#34 0x0000003e5019b3de in QObject::event (this=0x1c9f070, e=<optimized out>) at kernel/qobject.cpp:1195
#35 0x000000370302c2db in QWidget::event (this=0x1c9f070, event=0x23e3290) at kernel/qwidget.cpp:8821
#36 0x00000037033efe73 in QMainWindow::event (this=0x1c9f070, event=0x23e3290) at widgets/qmainwindow.cpp:1478
#37 0x0000003703f62e37 in KXmlGuiWindow::event (this=0x1c9f070, ev=0x23e3290) at /var/tmp/portage/kde-base/kdelibs-4.8.49.9999/work/kdelibs-4.8.49.9999/kdeui/xmlgui/kxmlguiwindow.cpp:126
#38 0x0000003702fdb634 in notify_helper (e=0x23e3290, receiver=0x1c9f070, this=0x1b06fc0) at kernel/qapplication.cpp:4554
#39 QApplicationPrivate::notify_helper (this=0x1b06fc0, receiver=0x1c9f070, e=0x23e3290) at kernel/qapplication.cpp:4526
#40 0x0000003702fe0433 in QApplication::notify (this=0x7fff1d0b3220, receiver=0x1c9f070, e=0x23e3290) at kernel/qapplication.cpp:4415
#41 0x0000003703e62de8 in KApplication::notify (this=0x7fff1d0b3220, receiver=0x1c9f070, event=0x23e3290) at /var/tmp/portage/kde-base/kdelibs-4.8.49.9999/work/kdelibs-4.8.49.9999/kdeui/kernel/kapplication.cpp:311
#42 0x0000003e5018226b in QCoreApplication::notifyInternal (this=0x7fff1d0b3220, receiver=0x1c9f070, event=0x23e3290) at kernel/qcoreapplication.cpp:876
#43 0x0000003e50185b69 in sendEvent (event=0x23e3290, receiver=0x1c9f070) at kernel/qcoreapplication.h:231
#44 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x1ac61f0) at kernel/qcoreapplication.cpp:1500
#45 0x0000003e501b1033 in sendPostedEvents () at kernel/qcoreapplication.h:236
#46 postEventSourceDispatch (s=0x1b00840) at kernel/qeventdispatcher_glib.cpp:279
#47 0x0000003e4fc4aa72 in g_main_dispatch (context=0x1b07840) at gmain.c:2539
#48 g_main_context_dispatch (context=0x1b07840) at gmain.c:3075
#49 0x0000003e4fc4adb5 in g_main_context_iterate (dispatch=1, block=<optimized out>, context=0x1b07840, self=<optimized out>) at gmain.c:3146
#50 g_main_context_iterate (context=0x1b07840, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3083
#51 0x0000003e4fc4ae6c in g_main_context_iteration (context=0x1b07840, may_block=1) at gmain.c:3207
#52 0x0000003e501b1416 in QEventDispatcherGlib::processEvents (this=0x1ac7ad0, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#53 0x000000370307f866 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#54 0x0000003e50180fb2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#55 0x0000003e50181237 in QEventLoop::exec (this=0x7fff1d0b30d0, flags=...) at kernel/qeventloop.cpp:204
#56 0x0000003e50185e65 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#57 0x0000000000401db5 in main (argc=2, argv=0x7fff1d0b3638) at /var/tmp/portage/app-office/skrooge-1.3.0/work/skrooge-1.3.0/skrooge/main.cpp:99
Comment 5 Guillaume DE BURE 2012-05-19 13:30:28 UTC
*** Bug 300305 has been marked as a duplicate of this bug. ***
Comment 6 Guillaume DE BURE 2012-05-19 13:33:36 UTC
*** Bug 300311 has been marked as a duplicate of this bug. ***
Comment 7 Guillaume DE BURE 2012-05-19 19:37:57 UTC
Created attachment 71227 [details]
backtrace with details from SQLite

Bactraces with self compiled SQLite, so that there is more details
Comment 8 Oleg Atamanenko 2012-05-20 08:23:11 UTC
I have the same issue on archlinux.
Comment 9 Guillaume DE BURE 2012-05-21 13:57:30 UTC
Ticket opened on SQLite side too :

http://www.sqlite.org/src/info/c2ad16f997
Comment 10 Guillaume DE BURE 2012-05-22 20:32:34 UTC
Fixed by the SQLite guys, and available in the release 3.7.12.1 :) Huge thanks to Richard (drh) for this !
Now, go bug your favorite distro so that they package it !

http://www.sqlite.org/src/tkttimeline?name=c2ad16f997
Comment 11 Pierre Buard 2012-05-25 09:23:53 UTC
Thank you for your investigations and prompt resolution.