#37537 closed defect (invalid)
qt4-mac and qt4-mac-sqlite3-plugin create trouble
Reported by: | mkae (Marko Käning) | Owned by: | michaelld (Michael Dickens) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.1.2 |
Keywords: | Cc: | ||
Port: | qt4-mac, qt4-mac-sqlite3-plugin |
Description (last modified by mkae (Marko Käning))
There are two intertwined scenarios when I ran into trouble with qt4-mac and qt4-mac-sqlite3-plugin:
1) Developing the update of skrooge to version 1.4.0:
At first I hadn't qt4-mac-sqlite3-plugin installed during upgrading port skrooge from 1.3.3 to 1.4.0 and here is what I got when I tried to start the app:
QSqlDatabase: QSQLITE driver not loaded QSqlDatabase: available drivers: QSQLITE3 QMYSQL3 QMYSQL QSqlQuery::exec: database not open ##WARNING: PRAGMA table_info( doctransaction ); ## returns :Driver not loaded Driver not loaded
Please notice that QSQLITE3 is already listed as available driver!!! BUT, as you can see above it cannot be used. Weird, isn't it?
https://bugs.kde.org/show_bug.cgi?id=312668
This problem disappeared when I installed port qt4-mac-sqlite3-plugin - which I then added as a necessary dependency for skrooge!
Nice, but strange, since it caused my 2nd problem...
2) Running tests of kmymoney4-devel with qt4-mac-sqlite3-plugin installed
$ git clone git://anongit.kde.org/kmymoney $ $ cd kmymoney; mkdir build; cd build; cmake .. # this of course only succeeds if kmymoney-devel and all its deps are installed in MacPorts already $ $ ccmake .. # enable test by setting KDE4_BUILD_TESTS to ON $ $ make $ $ /opt/macports-test/bin/ctest --force-new-ctest-process -R databasemgrtest -V UpdateCTestConfiguration from :/Users/marko/WC/GIT/kmymoney.homeview-additional_columns/build/DartConfiguration.tcl UpdateCTestConfiguration from :/Users/marko/WC/GIT/kmymoney.homeview-additional_columns/build/DartConfiguration.tcl Test project /Users/marko/WC/GIT/kmymoney.homeview-additional_columns/build Constructing a list of tests Done constructing a list of tests Checking test dependency graph... Checking test dependency graph end test 20 Start 20: kmymoney-mymoneydatabasemgrtest 20: Test command: /Users/marko/WC/GIT/kmymoney.homeview-additional_columns/build/kmymoney/mymoney/storage/mymoneydatabasemgrtest.app/Contents/MacOS/mymoneydatabasemgrtest 20: Test timeout computed to be: 9.99988e+06 20: ********* Start testing of MyMoneyDatabaseMgrTest ********* 20: Config: Using QTest library 4.8.4, Qt 4.8.4 20: PASS : MyMoneyDatabaseMgrTest::initTestCase() . . . 20: PASS : MyMoneyDatabaseMgrTest::testReparentAccount() 20: QFATAL : MyMoneyDatabaseMgrTest::testAddTransactions() Received signal 11 20: FAIL! : MyMoneyDatabaseMgrTest::testAddTransactions() Received a fatal error. 20: Loc: [Unknown file(0)] 20: Totals: 16 passed, 1 failed, 0 skipped 20: ********* Finished testing of MyMoneyDatabaseMgrTest ********* 1/1 Test #20: kmymoney-mymoneydatabasemgrtest ...***Exception: Other 1.64 sec 0% tests passed, 1 tests failed out of 1 Total Test time (real) = 1.66 sec The following tests FAILED: 20 - kmymoney-mymoneydatabasemgrtest (OTHER_FAULT) Errors while running CTest
I haven't tried to check in detail what caused the errors in testAddTransactions() up to now...
However, if I now deactivate qt4-mac-sqlite3-plugin the test is running fine!
This is what I have installed:
$ port installed qt4-mac* The following ports are currently installed: qt4-mac @4.8.4_2+debug+quartz (active) qt4-mac-mysql5-plugin @4.8.4_0+debug (active) qt4-mac-mysql55-plugin @4.8.4_0 (active) qt4-mac-sqlite3-plugin @4.8.4_0
What am I missing?
What can be done about this seemingly complex situation?
Change History (5)
comment:1 Changed 12 years ago by mkae (Marko Käning)
Description: | modified (diff) |
---|
comment:2 Changed 12 years ago by mkae (Marko Käning)
comment:3 Changed 12 years ago by mkae (Marko Käning)
Resolution: | → invalid |
---|---|
Status: | new → closed |
Only now I saw that it looks as if the test passes successfully without the plugin installed:
$ /opt/macports-test/bin/ctest --force-new-ctest-process -R databasemgrtest Test project /Users/marko/WC/GIT/kmymoney.homeview-additional_columns/build Start 20: kmymoney-mymoneydatabasemgrtest 1/1 Test #20: kmymoney-mymoneydatabasemgrtest ... Passed 0.08 sec 100% tests passed, 0 tests failed out of 1 Total Test time (real) = 0.09 sec
but if you get the detailed view one sees that the driver cannot be loaded:
$ /opt/macports-test/bin/ctest --force-new-ctest-process -R databasemgrtest -V UpdateCTestConfiguration from :/Users/marko/WC/GIT/kmymoney.homeview-additional_columns/build/DartConfiguration.tcl UpdateCTestConfiguration from :/Users/marko/WC/GIT/kmymoney.homeview-additional_columns/build/DartConfiguration.tcl Test project /Users/marko/WC/GIT/kmymoney.homeview-additional_columns/build Constructing a list of tests Done constructing a list of tests Checking test dependency graph... Checking test dependency graph end test 20 Start 20: kmymoney-mymoneydatabasemgrtest 20: Test command: /Users/marko/WC/GIT/kmymoney.homeview-additional_columns/build/kmymoney/mymoney/storage/mymoneydatabasemgrtest.app/Contents/MacOS/mymoneydatabasemgrtest 20: Test timeout computed to be: 9.99988e+06 20: ********* Start testing of MyMoneyDatabaseMgrTest ********* 20: Config: Using QTest library 4.8.4, Qt 4.8.4 20: PASS : MyMoneyDatabaseMgrTest::initTestCase() 20: PASS : MyMoneyDatabaseMgrTest::testEmptyConstructor() 20: QWARN : MyMoneyDatabaseMgrTest::testCreateDb() QSqlDatabase: QSQLITE driver not loaded 20: QWARN : MyMoneyDatabaseMgrTest::testCreateDb() QSqlDatabase: available drivers: QMYSQL3 QMYSQL 20: QDEBUG : MyMoneyDatabaseMgrTest::testCreateDb() Error in function int MyMoneyStorageSql::open(const KUrl&, int, bool) : opening new database 20: Driver = QSQLITE, Host = , User = , Database = 20: Driver Error: Driver not loaded 20: Database Error No -1: Driver not loaded 20: Text: Driver not loaded Driver not loaded 20: Error type 1 20: Executed: 20: Query error No -1: Driver not loaded Driver not loaded 20: Error type 1 . . .
so, this is already more like what I expected.
I'll invalidate the ticket for now until I have looked more into the test details with the plugin installed.
comment:4 Changed 12 years ago by mkae (Marko Käning)
Here the crash log for the failing test in the initial post:
Process: mymoneydatabasemgrtest [23860] Path: /Users/marko/WC/GIT/kmymoney.homeview-additional_columns/build/kmymoney/mymoney/storage/mymoneydatabasemgrtest.app/Contents/MacOS/mymoneydatabasemgrtest Identifier: mymoneydatabasemgrtest Version: ??? (???) Code Type: X86-64 (Native) Parent Process: ctest [23859] Date/Time: 2013-01-05 15:55:26.140 +0100 OS Version: Mac OS X 10.6.8 (10K549) Report Version: 6 Interval Since Last Report: 1498500 sec Crashes Since Last Report: 51 Per-App Crashes Since Last Report: 33 Anonymous UUID: 4ADD88F0-37AC-4BFC-BB40-8308C8DB47A2 Exception Type: EXC_BAD_ACCESS (SIGABRT) Exception Codes: KERN_INVALID_ADDRESS at 0x00000103c9000300 Crashed Thread: 0 Dispatch queue: com.apple.main-thread Application Specific Information: abort() called Thread 0 Crashed: Dispatch queue: com.apple.main-thread 0 libSystem.B.dylib 0x00007fff8a4720b6 __kill + 10 1 libSystem.B.dylib 0x00007fff8a5129f6 abort + 83 2 QtCore 0x0000000101a60215 qt_message_output(QtMsgType, char const*) + 117 3 QtCore 0x0000000101a603f7 qt_message(QtMsgType, char const*, __va_list_tag*) + 183 4 QtCore 0x0000000101a605ba qFatal(char const*, ...) + 170 5 libSystem.B.dylib 0x00007fff8a4841ba _sigtramp + 26 6 QtCore 0x0000000101a88d20 QHashData::free_helper(void (*)(QHashData::Node*)) + 128 7 0x00000001000880dd MyMoneyDbTable::~MyMoneyDbTable() + 141 8 0x0000000100071caf MyMoneyStorageSql::readSplit(MyMoneySplit&, QSqlQuery const&) const + 2399 9 0x0000000100074753 MyMoneyStorageSql::fetchTransactions(QString const&, QString const&, bool) const + 5811 10 0x0000000100078eec MyMoneyStorageSql::fetchTransactions(MyMoneyTransactionFilter const&) const + 5772 11 0x0000000100092916 MyMoneyDatabaseMgr::transactionList(QList<MyMoneyTransaction>&, MyMoneyTransactionFilter&) const + 134 12 0x000000010008a2a3 MyMoneyDatabaseMgr::transactionList(MyMoneyTransactionFilter&) const + 51 13 0x0000000100021f6b MyMoneyDatabaseMgrTest::testAddTransactions() + 4667 (qlist.h:101) 14 QtCore 0x0000000101b8f32c QMetaMethod::invoke(QObject*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const + 1548 15 QtCore 0x0000000101b917dc QMetaObject::invokeMethod(QObject*, char const*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) + 1324 16 QtTest 0x00000001019cb30f QTest::qInvokeTestMethodDataEntry(char*) + 831 17 QtTest 0x00000001019cc02c QTest::qInvokeTestMethod(char const*, char const*) + 668 18 QtTest 0x00000001019cc7ca QTest::qExec(QObject*, int, char**) + 1546 19 0x0000000100008bfc main + 76 (mymoneydatabasemgrtest.cpp:26) 20 0x00000001000089d8 start + 52
comment:5 Changed 12 years ago by mkae (Marko Käning)
Removing the plugin and reinstalling it again did NOT solve this issue. So it's not caused by the SQlite update. :(
Does the plugin perhaps need a revbump due to r101133?