Assert in duchain during PHP Unit-Test

Milian Wolff mail at milianw.de
Mon May 11 16:29:19 UTC 2009


I get the following assert during some PHP Unit-Tests, zwabel can you 
help out?

Is it something we have to adapt our duchain releaser to? Or is this a 
bug in PHP somewhere?

$ debug duchaintest testLargeNumberOfDeclarations 

GNU gdb 6.8-debian 
 

Copyright (C) 2008 Free Software Foundation, Inc. 
 

License GPLv3+: GNU GPL version 3 or later 
<http://gnu.org/licenses/gpl.html> 

This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
Starting program: 
/home/mwolff/projects/.build/kde4/php/duchain/tests/duchaintest 
testLargeNumberOfDeclarations
[Thread debugging using libthread_db enabled]
[New Thread 0xb5553710 (LWP 5092)]
WARNING: deleting stale lockfile /home/mwolff/.kdevduchain/1/lock
<unknown program name>(5092)/ KDevelop::allocateRepository: picked 
duchain directory "/home/mwolff/.kdevduchain/1"
<unknown program name>(5092)/ KDevelop::ItemRepositoryRegistry::open: 
version-hint not found, seems to be an old version
<unknown program name>(5092)/ KDevelop::ItemRepositoryRegistry::open: 
"The data-repository at /home/mwolff/.kdevduchain/1 has to be cleared."
<unknown program name>(5092)/ KDevelop::allocateRepository: picked 
duchain directory "/home/mwolff/.kdevduchain/1"
********* Start testing of Php::TestDUChain *********
Config: Using QTest library 4.5.1, Qt 4.5.1
[New Thread 0xb343fb90 (LWP 5096)]
QDEBUG : Php::TestDUChain::initTestCase() kdevphpsupport(5092)/kdevelop 
(php support)?[0;34m Php::ParseSession::parse?[0m: Successfully parsed
QDEBUG : Php::TestDUChain::initTestCase() kdevphpsupport(5092)/kdevelop 
(php support)?[0;34m Php::ContextBuilder::build?[0m: compiling 
"PHPInternalFunctions"
PASS   : Php::TestDUChain::initTestCase()
QDEBUG : Php::TestDUChain::testLargeNumberOfDeclarations() 
kdevphpsupport(5092)/kdevplatform (language)?[0;34m 
KDevelop::DUChainPrivate::loadChain?[0m: loading top-context 2
QFATAL : Php::TestDUChain::testLargeNumberOfDeclarations() ASSERT: 
"indexed.data() == context" in file 
/home/mwolff/projects/kde4/kdevplatform/language/duchain/duchain.cpp, 
line 1045
FAIL!  : Php::TestDUChain::testLargeNumberOfDeclarations() Received a 
fatal error.
    Loc: [Unknown file(0)]
Totals: 1 passed, 1 failed, 0 skipped
********* Finished testing of Php::TestDUChain *********

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb5553710 (LWP 5092)]
0xffffe424 in __kernel_vsyscall ()
(gdb) thread apply all bt

Thread 2 (Thread 0xb343fb90 (LWP 5096)):
#0  0xffffe424 in __kernel_vsyscall ()
#1  0xb5efa2e2 in pthread_cond_timedwait@@GLIBC_2.3.2 () from 
/lib/i686/cmov/libpthread.so.0
#2  0xb7e78104 in pthread_cond_timedwait () from /lib/i686/cmov/libc.so.6
#3  0xb77567fc in QWaitCondition::wait () from /usr/lib/libQtCore.so.4
#4  0xb79f45bf in KDevelop::DUChainPrivate::CleanupThread::run 
(this=0x9155ce8) at 
/home/mwolff/projects/kde4/kdevplatform/language/duchain/duchain.cpp:280
#5  0xb775580e in ?? () from /usr/lib/libQtCore.so.4
#6  0xb5ef64e5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#7  0xb7e6925e in clone () from /lib/i686/cmov/libc.so.6

Thread 1 (Thread 0xb5553710 (LWP 5092)):
#0  0xffffe424 in __kernel_vsyscall ()
#1  0xb7db1670 in raise () from /lib/i686/cmov/libc.so.6
#2  0xb7db3038 in abort () from /lib/i686/cmov/libc.so.6
#3  0xb774d4cd in qt_message_output () from /usr/lib/libQtCore.so.4
#4  0xb774d5b1 in qFatal () from /usr/lib/libQtCore.so.4
#5  0xb774d6a5 in qt_assert () from /usr/lib/libQtCore.so.4
#6  0xb79d5cac in KDevelop::DUChain::removeDocumentChain 
(this=0x9124360, context=0x9175070) at 
/home/mwolff/projects/kde4/kdevplatform/language/duchain/duchain.cpp:1045
#7  0x080663eb in ~DUChainReleaser (this=0xbfae0e30) at 
/home/mwolff/projects/kde4/php/duchain/tests/duchaintestbase.h:84
#8  0x08058410 in Php::TestDUChain::testLargeNumberOfDeclarations 
(this=0xbfae1a10) at 
/home/mwolff/projects/kde4/php/duchain/tests/test_duchain.cpp:1213
#9  0x08064d81 in Php::TestDUChain::qt_metacall (this=0xbfae1a10, 
_c=QMetaObject::InvokeMetaMethod, _id=48, _a=0xbfae0f68)
     at 
/home/mwolff/projects/.build/kde4/php/duchain/tests/test_duchain.moc:232
#10 0xb78517e9 in QMetaMethod::invoke () from /usr/lib/libQtCore.so.4
#11 0xb7851f10 in QMetaObject::invokeMethod () from /usr/lib/libQtCore.so.4
#12 0xb8031358 in ?? () from /usr/lib/libQtTest.so.4
#13 0xb8031f90 in ?? () from /usr/lib/libQtTest.so.4
#14 0xb803246c in QTest::qExec () from /usr/lib/libQtTest.so.4
#15 0x08064f3b in main (argc=2, argv=0xbfae1ad4) at 
/home/mwolff/projects/kde4/php/duchain/tests/test_duchain.cpp:48
(gdb)



-- 
Milian Wolff
http://milianw.de




More information about the KDevelop-devel mailing list