Bug 266006 - Switching backends in Amarok causes crash [@ MySqlStorage::~MySqlStorage]
Summary: Switching backends in Amarok causes crash [@ MySqlStorage::~MySqlStorage]
Status: RESOLVED DUPLICATE of bug 259727
Alias: None
Product: amarok
Classification: Applications
Component: general (show other bugs)
Version: 2.3.2
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: 2.4.1
Assignee: Amarok Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-10 18:41 UTC by Steve Dowe
Modified: 2011-02-10 18:52 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Steve Dowe 2011-02-10 18:41:25 UTC
Application: amarok (2.3.2)
KDE Platform Version: 4.5.5 (KDE 4.5.5)
Qt Version: 4.7.1
Operating System: Linux 2.6.35.10-74.fc14.x86_64 x86_64
Distribution (Platform): Fedora RPMs

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

In settings, I was changing the backend from Xine to GStreamer while playing audio.  This crashed it.

The crash can be reproduced every time.

-- Backtrace:
Application: Amarok (amarok), signal: Aborted
[Current thread is 1 (Thread 0x7f2b0096f840 (LWP 8829))]

Thread 14 (Thread 0x7f2ae0dcc700 (LWP 8842)):
#0  0x000000366e60b8c4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x0000003ff8872ddb in wait (this=<value optimized out>, mutex=0x142c9c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x142c9c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x0000003cda00a0b4 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x13fe690, th=0x1432220) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x0000003cda00c743 in ThreadWeaver::WorkingHardState::applyForWork (this=0x142c970, th=0x1432220) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x0000003cda00b52f in ThreadWeaver::ThreadRunHelper::run (this=0x7f2ae0dcbd50, parent=0x13fe690, th=0x1432220) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/Thread.cpp:87
#6  0x0000003cda00b5b8 in ThreadWeaver::Thread::run (this=0x1432220) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/Thread.cpp:142
#7  0x0000003ff88726ee in QThreadPrivate::start (arg=0x1432220) at thread/qthread_unix.cpp:285
#8  0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#9  0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 13 (Thread 0x7f2ad6d73700 (LWP 8843)):
#0  0x000000366e60b8c4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x0000003a17f287f4 in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /usr/lib64/libQtWebKit.so.4
#2  0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#3  0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 12 (Thread 0x7f2ad5ad2700 (LWP 8844)):
#0  0x000000366e60b8c4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x0000003ff8872ddb in wait (this=<value optimized out>, mutex=0x142c9c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x142c9c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x0000003cda00a0b4 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x13fe690, th=0x15b45e0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x0000003cda00c743 in ThreadWeaver::WorkingHardState::applyForWork (this=0x142c970, th=0x15b45e0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x0000003cda00c75c in ThreadWeaver::WorkingHardState::applyForWork (this=0x142c970, th=0x15b45e0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x0000003cda00c75c in ThreadWeaver::WorkingHardState::applyForWork (this=0x142c970, th=0x15b45e0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WorkingHardState.cpp:74
#7  0x0000003cda00b52f in ThreadWeaver::ThreadRunHelper::run (this=0x7f2ad5ad1d50, parent=0x13fe690, th=0x15b45e0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/Thread.cpp:87
#8  0x0000003cda00b5b8 in ThreadWeaver::Thread::run (this=0x15b45e0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/Thread.cpp:142
#9  0x0000003ff88726ee in QThreadPrivate::start (arg=0x15b45e0) at thread/qthread_unix.cpp:285
#10 0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#11 0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 11 (Thread 0x7f2ad4ad0700 (LWP 8847)):
#0  0x000000366e60b8c4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x0000003ffb593d84 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x3ffb8ab4e0) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#2  0x0000003ffb593db9 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=0x3ffb8b95b4) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#3  0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#4  0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 10 (Thread 0x7f2abbfff700 (LWP 8850)):
#0  0x000000366e60acbd in pthread_mutex_unlock () from /lib64/libpthread.so.0
#1  0x0000003670241775 in g_main_context_query (context=0x24e0ba0, max_priority=<value optimized out>, timeout=0x7f2abbffece8, fds=<value optimized out>, n_fds=3) at gmain.c:2567
#2  0x000000367024227b in g_main_context_iterate (context=0x24e0ba0, block=1, dispatch=1, self=<value optimized out>) at gmain.c:2762
#3  0x0000003670242c82 in g_main_loop_run (loop=0x24e0c80) at gmain.c:2988
#4  0x00000036716a5774 in gdbus_shared_thread_func (data=<value optimized out>) at gdbusprivate.c:277
#5  0x0000003670269446 in g_thread_create_proxy (data=0x24e0ca0) at gthread.c:1897
#6  0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#7  0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 9 (Thread 0x7f2abb7fe700 (LWP 8883)):
#0  0x000000366e60b8c4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x0000003ff8872ddb in wait (this=<value optimized out>, mutex=0x142c9c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x142c9c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x0000003cda00a0b4 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x13fe690, th=0x27f0be0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x0000003cda00c743 in ThreadWeaver::WorkingHardState::applyForWork (this=0x142c970, th=0x27f0be0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x0000003cda00c75c in ThreadWeaver::WorkingHardState::applyForWork (this=0x142c970, th=0x27f0be0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x0000003cda00b52f in ThreadWeaver::ThreadRunHelper::run (this=0x7f2abb7fdd50, parent=0x13fe690, th=0x27f0be0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/Thread.cpp:87
#7  0x0000003cda00b5b8 in ThreadWeaver::Thread::run (this=0x27f0be0) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/Thread.cpp:142
#8  0x0000003ff88726ee in QThreadPrivate::start (arg=0x27f0be0) at thread/qthread_unix.cpp:285
#9  0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#10 0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 8 (Thread 0x7f2ab3fff700 (LWP 8885)):
#0  0x000000366e60b8c4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x0000003ff8872ddb in wait (this=<value optimized out>, mutex=0x142c9c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x142c9c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x0000003cda00a0b4 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x13fe690, th=0x277b140) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x0000003cda00c743 in ThreadWeaver::WorkingHardState::applyForWork (this=0x142c970, th=0x277b140) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x0000003cda00c75c in ThreadWeaver::WorkingHardState::applyForWork (this=0x142c970, th=0x277b140) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x0000003cda00c75c in ThreadWeaver::WorkingHardState::applyForWork (this=0x142c970, th=0x277b140) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/WorkingHardState.cpp:74
#7  0x0000003cda00b52f in ThreadWeaver::ThreadRunHelper::run (this=0x7f2ab3ffed50, parent=0x13fe690, th=0x277b140) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/Thread.cpp:87
#8  0x0000003cda00b5b8 in ThreadWeaver::Thread::run (this=0x277b140) at /usr/src/debug/kdelibs-4.5.5/threadweaver/Weaver/Thread.cpp:142
#9  0x0000003ff88726ee in QThreadPrivate::start (arg=0x277b140) at thread/qthread_unix.cpp:285
#10 0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#11 0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 7 (Thread 0x7f2ac1476700 (LWP 8890)):
#0  0x000000366e60b8c4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x0000003ff8872ddb in wait (this=<value optimized out>, mutex=0x1710a98, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x1710a98, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x0000003a0eea9694 in QFileInfoGatherer::run (this=0x1710a88) at dialogs/qfileinfogatherer.cpp:214
#4  0x0000003ff88726ee in QThreadPrivate::start (arg=0x1710a88) at thread/qthread_unix.cpp:285
#5  0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#6  0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 6 (Thread 0x7f2ae2012700 (LWP 8891)):
#0  0x00007fff101ff861 in clock_gettime ()
#1  0x000000366f2041bb in clock_gettime () from /lib64/librt.so.1
#2  0x0000003ff88c3cd2 in do_gettime () at tools/qelapsedtimer_unix.cpp:123
#3  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#4  0x0000003ff89872fd in QTimerInfoList::updateCurrentTime (this=0x7f2adc002910) at kernel/qeventdispatcher_unix.cpp:339
#5  0x0000003ff8987685 in QTimerInfoList::timerWait (this=0x7f2adc002910, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#6  0x0000003ff898610c in timerSourcePrepareHelper (src=<value optimized out>, timeout=0x7f2ae2011b7c) at kernel/qeventdispatcher_glib.cpp:136
#7  0x0000003ff89861b5 in timerSourcePrepare (source=<value optimized out>, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#8  0x000000367024131f in g_main_context_prepare (context=0x7f2adc0008e0, priority=0x7f2ae2011bec) at gmain.c:2469
#9  0x0000003670242209 in g_main_context_iterate (context=0x7f2adc0008e0, block=1, dispatch=1, self=<value optimized out>) at gmain.c:2760
#10 0x00000036702428ad in g_main_context_iteration (context=0x7f2adc0008e0, may_block=1) at gmain.c:2843
#11 0x0000003ff8986916 in QEventDispatcherGlib::processEvents (this=0x7f2adc0008c0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:417
#12 0x0000003ff895ab42 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#13 0x0000003ff895ad8c in QEventLoop::exec (this=0x7f2ae2011d00, flags=...) at kernel/qeventloop.cpp:201
#14 0x0000003ff886fed4 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490
#15 0x0000003ff893c5f8 in QInotifyFileSystemWatcherEngine::run (this=0x175eca0) at io/qfilesystemwatcher_inotify.cpp:248
#16 0x0000003ff88726ee in QThreadPrivate::start (arg=0x175eca0) at thread/qthread_unix.cpp:285
#17 0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#18 0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7f2af0af3700 (LWP 8895)):
#0  0x000000366e60bc2e in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f2ab95c5d21 in ?? () from /usr/lib64/libxine.so.1
#2  0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#3  0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7f2aa3ba3700 (LWP 8896)):
#0  0x00007fff101ff861 in clock_gettime ()
#1  0x000000366f2041bb in clock_gettime () from /lib64/librt.so.1
#2  0x0000003ff88c3cd2 in do_gettime () at tools/qelapsedtimer_unix.cpp:123
#3  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#4  0x0000003ff89872fd in QTimerInfoList::updateCurrentTime (this=0x7f2aec002340) at kernel/qeventdispatcher_unix.cpp:339
#5  0x0000003ff8987685 in QTimerInfoList::timerWait (this=0x7f2aec002340, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#6  0x0000003ff898610c in timerSourcePrepareHelper (src=<value optimized out>, timeout=0x7f2aa3ba2b6c) at kernel/qeventdispatcher_glib.cpp:136
#7  0x0000003ff89861b5 in timerSourcePrepare (source=<value optimized out>, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#8  0x000000367024131f in g_main_context_prepare (context=0x7f2aec002830, priority=0x7f2aa3ba2bdc) at gmain.c:2469
#9  0x0000003670242209 in g_main_context_iterate (context=0x7f2aec002830, block=1, dispatch=1, self=<value optimized out>) at gmain.c:2760
#10 0x00000036702428ad in g_main_context_iteration (context=0x7f2aec002830, may_block=1) at gmain.c:2843
#11 0x0000003ff8986916 in QEventDispatcherGlib::processEvents (this=0x7f2aec0022c0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:417
#12 0x0000003ff895ab42 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#13 0x0000003ff895ad8c in QEventLoop::exec (this=0x7f2aa3ba2cf0, flags=...) at kernel/qeventloop.cpp:201
#14 0x0000003ff886fed4 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490
#15 0x00007f2af4ac341e in Phonon::Xine::XineThread::run (this=0x124d510) at /usr/src/debug/phonon-4.4.3/xine/xinethread.cpp:143
#16 0x0000003ff88726ee in QThreadPrivate::start (arg=0x124d510) at thread/qthread_unix.cpp:285
#17 0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#18 0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f2aa2d7e700 (LWP 8897)):
#0  0x000000366e60b8c4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f2ab95d7deb in ?? () from /usr/lib64/libxine.so.1
#2  0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#3  0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f2af48ac700 (LWP 8898)):
#0  0x000000366e2dceb3 in select () from /lib64/libc.so.6
#1  0x00007f2ab95ee8a4 in xine_usec_sleep () from /usr/lib64/libxine.so.1
#2  0x00007f2ab95d3a69 in ?? () from /usr/lib64/libxine.so.1
#3  0x000000366e606d5b in start_thread () from /lib64/libpthread.so.0
#4  0x000000366e2e4a7d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f2b0096f840 (LWP 8829)):
[KCrash Handler]
#6  0x000000366e234085 in raise () from /lib64/libc.so.6
#7  0x000000366e235a36 in abort () from /lib64/libc.so.6
#8  0x000000366e27156b in __libc_message () from /lib64/libc.so.6
#9  0x000000366e278e23 in _int_free () from /lib64/libc.so.6
#10 0x00007f2ae66a8e69 in vio_delete (vio=0xd72fd0) at vio.c:238
#11 0x00007f2ae66a3c60 in end_server (mysql=0xd75180) at client.c:949
#12 0x00007f2ae66a5482 in mysql_close (mysql=0xd75180) at client.c:2769
#13 0x00007f2ae6c9fa75 in MySqlStorage::~MySqlStorage (this=0x90d560, __in_chrg=<value optimized out>) at /usr/src/debug/amarok-2.3.2/src/core-impl/collections/sqlcollection/mysql-shared/MySqlStorage.cpp:102
#14 0x00007f2ae6ca6d2a in MySqlServerStorage::~MySqlServerStorage (this=0x90d560, __in_chrg=<value optimized out>) at /usr/src/debug/amarok-2.3.2/src/core-impl/collections/sqlcollection/mysqlservercollection/MySqlServerCollection.cpp:108
#15 0x00007f2ae6ca6d59 in MySqlServerStorage::~MySqlServerStorage (this=0x90d560, __in_chrg=<value optimized out>) at /usr/src/debug/amarok-2.3.2/src/core-impl/collections/sqlcollection/mysqlservercollection/MySqlServerCollection.cpp:111
#16 0x00007f2ae6a33bc0 in Collections::SqlCollection::~SqlCollection (this=0xd499b0, __in_chrg=<value optimized out>) at /usr/src/debug/amarok-2.3.2/src/core-impl/collections/sqlcollection/SqlCollection.cpp:71
#17 0x00007f2ae6a33c49 in Collections::SqlCollection::~SqlCollection (this=0xd499b0, __in_chrg=<value optimized out>) at /usr/src/debug/amarok-2.3.2/src/core-impl/collections/sqlcollection/SqlCollection.cpp:73
#18 0x0000003a15bcec6e in qDeleteAll<QList<Collections::Collection*>::const_iterator> (this=0xd60f80, __in_chrg=<value optimized out>) at /usr/include/QtCore/qalgorithms.h:322
#19 qDeleteAll<SmartPointerList<Collections::Collection> > (this=0xd60f80, __in_chrg=<value optimized out>) at /usr/include/QtCore/qalgorithms.h:330
#20 CollectionManager::~CollectionManager (this=0xd60f80, __in_chrg=<value optimized out>) at /usr/src/debug/amarok-2.3.2/src/core-impl/collections/support/CollectionManager.cpp:130
#21 0x0000003a15bcee19 in CollectionManager::~CollectionManager (this=0xd60f80, __in_chrg=<value optimized out>) at /usr/src/debug/amarok-2.3.2/src/core-impl/collections/support/CollectionManager.cpp:135
#22 0x0000003a15bc8286 in CollectionManager::destroy () at /usr/src/debug/amarok-2.3.2/src/core-impl/collections/support/CollectionManager.cpp:100
#23 0x0000003a15dc726a in App::~App (this=0x7fff101bc3a0, __in_chrg=<value optimized out>) at /usr/src/debug/amarok-2.3.2/src/App.cpp:270
#24 0x00000000004081bb in main (argc=1, argv=0x7fff101be308) at /usr/src/debug/amarok-2.3.2/src/main.cpp:235

Possible duplicates by query: bug 261617, bug 259727, bug 253331, bug 251515.

Reported using DrKonqi
Comment 1 Myriam Schweingruber 2011-02-10 18:52:00 UTC
This is not related to switching the phonon backend at all, but to a collection problem which is already solved in Amarok 2.4, please upgrade.

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