[Kmymoney-devel] [kmymoney4] [Bug 312692] Test #20: kmymoney-mymoneydatabasemgrtest FAILS FATALLY

Marko Käning mk-lists at email.de
Sat Jan 26 23:00:07 UTC 2013


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

--- Comment #9 from Marko Käning <mk-lists at email.de> ---
So, now I have information with line number, eventually.
My Xcode wouldn't want to help me with debugging in an IDE, so that I had to do
all this manually in gdb:
----
.
.
.
PASS   : MyMoneyDatabaseMgrTest::testReparentAccount()
mymoneydatabasemgrtest(55218,0x7fff7126ecc0) malloc: *** error for object
0x103155820: incorrect checksum for freed object - object was probably modified
after being freed.
*** set a breakpoint in malloc_error_break to debug

Program received signal SIGABRT, Aborted.
0x00007fff8a4720b6 in __kill ()
(gdb) where
#0  0x00007fff8a4720b6 in __kill ()
#1  0x00007fff8a5129f6 in abort ()
#2  0x00007fff8a50162d in szone_error ()
#3  0x00007fff8a42cbbe in szone_free ()
#4  0x000000010555d272 in sqlite3_free ()
#5  0x00000001055a9fd2 in sqlite3Select ()
#6  0x00000001055c9f2a in sqlite3Parser ()
#7  0x00000001055cccf7 in sqlite3RunParser ()
#8  0x00000001055cd7eb in sqlite3Prepare ()
#9  0x00000001055cd90d in sqlite3LockAndPrepare ()
#10 0x00000001055cda2d in sqlite3Prepare16 ()
#11 0x00000001037844da in QSQLiteResult::prepare ()
#12 0x00000001015f8fa3 in QSqlResult::savePrepare ()
#13 0x00000001015eac90 in QSqlQuery::prepare ()
#14 0x000000010002ffef in QFlags [inlined] () at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneystoragesql.cpp:4090
#15 0x000000010002ffef in QFlags [inlined] () at
/opt/macports-test/Library/Frameworks/QtCore.framework/Versions/4/Headers/qglobal.h:2310
#16 0x000000010002ffef in MyMoneyStorageSql::readKeyValuePairs
(this=0x10329b370, kvpType=@0x7fff5fbfcdb0, kvpIdList=@0x7fff5fbfcec0) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneystoragesql.cpp:4091
#17 0x0000000100074d73 in ~QString [inlined] () at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneystoragesql.cpp:3266
#18 ~QString [inlined] () at
/opt/macports-test/Library/Frameworks/QtCore.framework/Versions/4/Headers/qstring.h:880
#19 0x0000000100074d73 in MyMoneyStorageSql::fetchTransactions
(this=0x10329b370, tidList=@0x7fff5fbfd590, dateClause=@0x7fff5fbfd580) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneystoragesql.cpp:3266
#20 0x0000000100078f2c in ~QString [inlined] () at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneystoragesql.cpp:3467
#21 ~QString [inlined] () at
/opt/macports-test/Library/Frameworks/QtCore.framework/Versions/4/Headers/qstring.h:880
#22 0x0000000100078f2c in MyMoneyStorageSql::fetchTransactions
(this=0x10329b370, filter=@0x7fff5fbfdd50) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneystoragesql.cpp:3467
#23 0x0000000100092956 in MyMoneyDatabaseMgr::transactionList
(this=0x103152870, list=@0x7fff5fbfe090, filter=@0x7fff5fbfdd50) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneydatabasemgr.cpp:945
#24 0x000000010008a2e3 in MyMoneyDatabaseMgr::transactionList (this=<value
temporarily unavailable, due to optimizations>, filter=<value temporarily
unavailable, due to optimizations>) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneydatabasemgr.cpp:934
#25 0x0000000100021fab in QListData::begin () at
/opt/macports-test/Library/Frameworks/QtCore.framework/Versions/4/Headers/qlist.h:707
#26 0x0000000100021fab in QList<MyMoneyTransaction>::constBegin () at
/opt/macports-test/Library/Frameworks/QtCore.framework/Versions/4/Headers/qlist.h:269
#27 0x0000000100021fab in MyMoneyDatabaseMgrTest::testAddTransactions
(this=0x7fff5fbff010) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneydatabasemgrtest.cpp:708
#28 0x000000010177f32c in QMetaMethod::invoke ()
#29 0x00000001017817dc in QMetaObject::invokeMethod ()
#30 0x00000001015bb30f in QTest::qInvokeTestMethodDataEntry ()
#31 0x00000001015bc02c in QTest::qInvokeTestMethod ()
#32 0x00000001015bc7ca in QTest::qExec ()
#33 0x0000000100008c3c in main (argc=1, argv=0x7fff5fbff090) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneydatabasemgrtest.cpp:26
---

The above probably corresponds to comment #1.

After the previous gdb run failed like this I simply reran it and here's what I
got then:
---
.
.
.
PASS   : MyMoneyDatabaseMgrTest::testReparentAccount()

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x0000000003000000
0x0000000101678d20 in QHashData::free_helper ()
(gdb) where
#0  0x0000000101678d20 in QHashData::free_helper ()
#1  0x000000010008811d in MyMoneyDbTable::~MyMoneyDbTable (this=0x100111780) at
qhash.h:283
#2  0x0000000100071cef in MyMoneyStorageSql::readSplit (this=0x10321cbd0,
s=@0x7fff5fbfc9f0, q=@0x7fff5fbfcf50) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneystoragesql.cpp:3549
#3  0x0000000100074793 in MyMoneyStorageSql::fetchTransactions
(this=0x10321cbd0, tidList=@0x7fff5fbfd590, dateClause=@0x7fff5fbfd580) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneystoragesql.cpp:3251
#4  0x0000000100078f2c in ~QString [inlined] () at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneystoragesql.cpp:3467
#5  ~QString [inlined] () at
/opt/macports-test/Library/Frameworks/QtCore.framework/Versions/4/Headers/qstring.h:880
#6  0x0000000100078f2c in MyMoneyStorageSql::fetchTransactions
(this=0x10321cbd0, filter=@0x7fff5fbfdd50) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneystoragesql.cpp:3467
#7  0x0000000100092956 in MyMoneyDatabaseMgr::transactionList
(this=0x103198ce0, list=@0x7fff5fbfe090, filter=@0x7fff5fbfdd50) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneydatabasemgr.cpp:945
#8  0x000000010008a2e3 in MyMoneyDatabaseMgr::transactionList (this=<value
temporarily unavailable, due to optimizations>, filter=<value temporarily
unavailable, due to optimizations>) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneydatabasemgr.cpp:934
#9  0x0000000100021fab in QListData::begin () at
/opt/macports-test/Library/Frameworks/QtCore.framework/Versions/4/Headers/qlist.h:707
#10 0x0000000100021fab in QList<MyMoneyTransaction>::constBegin () at
/opt/macports-test/Library/Frameworks/QtCore.framework/Versions/4/Headers/qlist.h:269
#11 0x0000000100021fab in MyMoneyDatabaseMgrTest::testAddTransactions
(this=0x7fff5fbff010) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneydatabasemgrtest.cpp:708
#12 0x000000010177f32c in QMetaMethod::invoke ()
#13 0x00000001017817dc in QMetaObject::invokeMethod ()
#14 0x00000001015bb30f in QTest::qInvokeTestMethodDataEntry ()
#15 0x00000001015bc02c in QTest::qInvokeTestMethod ()
#16 0x00000001015bc7ca in QTest::qExec ()
#17 0x0000000100008c3c in main (argc=1, argv=0x7fff5fbff090) at
/Users/marko/WC/GIT/kmymoney.mymoneydatabasemgrtest/kmymoney/mymoney/storage/mymoneydatabasemgrtest.cpp:26
---

It looks like this whole error is caused by my somehow messed up Qt4
configuration with regard to SQLITE!

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the KMyMoney-devel mailing list