Bug 233537 - amarok crash when playing starts
Summary: amarok crash when playing starts
Status: RESOLVED DUPLICATE of bug 219241
Alias: None
Product: amarok
Classification: Applications
Component: general (show other bugs)
Version: 2.3.0
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Amarok Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-04-06 21:14 UTC by Matze
Modified: 2010-04-07 21:38 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Crashreport (17.96 KB, application/octet-stream)
2010-04-07 15:15 UTC, Matze
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Matze 2010-04-06 21:14:43 UTC
Version:           2.3.0 (using KDE 4.4.2)
OS:                Linux
Installed from:    openSUSE RPMs

I'm starting amarok
I'm clearing the playlist
I'm switching to collection browser
I take a album and drop it on the playlist
I double click on the first song
The Pop up apears but with no text - everything just normal yet - sometimes you allready can hear a bit music
Amarok crashs

And this thw hole time. SOmetimes it works but in 95% of the time it doesn't

Here the last lines of a crash report:

amarok:             BEGIN: void OSDWidget::show(const QString&, QImage) 
amarok:               BEGIN: StarManager::StarManager(QObject*) 
amarok:               END__: StarManager::StarManager(QObject*) - Took 0.024s 
amarok:             END__: void OSDWidget::show(const QString&, QImage) - Took 0.064s 
amarok:           END__: virtual void Amarok::OSD::engineNewTrackPlaying() - Took 0.066s 
amarok:           BEGIN: virtual void Context::ContextView::engineNewTrackPlaying() 
amarok:             BEGIN: virtual void CurrentEngine::message(const Context::ContextState&) 
amarok:               BEGIN: void CurrentEngine::update() 
amarok:               END__: void CurrentEngine::update() - Took 0.16s 
amarok:             END__: virtual void CurrentEngine::message(const Context::ContextState&) - Took 0.16s 
amarok:           END__: virtual void Context::ContextView::engineNewTrackPlaying() - Took 0.16s 
amarok:            returning bookmarkcurrenttrack action 
amarok:         END__: void EngineController::slotNewTrackPlaying(const Phonon::MediaSource&) - Took 0.53s 
amarok:         [EngineController] track pos after play:  0 
amarok:       END__: void EngineController::playUrl(const KUrl&, uint) - Took 0.59s 
amarok:     END__: void EngineController::play(const Meta::TrackPtr&, uint) - Took 0.61s 
amarok:   END__: void Playlist::Actions::play(quint64, bool) - Took 0.61s 
amarok: END__: void Playlist::PrettyListView::trackActivated(const QModelIndex&) - Took 0.61s 
demux: can't create new thread (Die Ressource ist zur Zeit nicht verfügbar)
abort: demux.c:454: _x_demux_start_thread: Aborting.
KCrash: Application 'amarok' crashing...
sock_file=/home/USER/.kde4/socket-linux-home/kdeinit4__0

But I there was also this one one time:

amarok:           END__: virtual void ScrobblerAdapter::engineNewTrackPlaying() - Took 0.00068s 
amarok:           BEGIN: virtual void Context::ContextView::engineNewTrackPlaying() 
amarok:             BEGIN: virtual void CurrentEngine::message(const Context::ContextState&) 
amarok:               BEGIN: void CurrentEngine::update() 
amarok:               END__: void CurrentEngine::update() - Took 0.1s 
amarok:             END__: virtual void CurrentEngine::message(const Context::ContextState&) - Took 0.1s 
amarok:           END__: virtual void Context::ContextView::engineNewTrackPlaying() - Took 0.1s 
amarok:         END__: void EngineController::slotNewTrackPlaying(const Phonon::MediaSource&) - Took 0.59s 
demux: can't create new thread (Die Ressource ist zur Zeit nicht verfügbar)
abort: demux.c:454: _x_demux_start_thread: Aborting.
KCrash: Application 'amarok' crashing...
sock_file=/home/USER/.kde4/socket-linux-home/kdeinit4__0
amarok:         [EngineController] track pos after play:  0 
amarok:       END__: void EngineController::playUrl(const KUrl&, uint) - Took 0.67s 
amarok:     END__: void EngineController::play(const Meta::TrackPtr&, uint) - Took 0.67s 
amarok:   END__: void Playlist::Actions::play(quint64, bool) - Took 0.67s 
amarok: END__: void Playlist::PrettyListView::trackActivated(const QModelIndex&) - Took 0.67s 
QSocketNotifier: Invalid socket 11 and type 'Read', disabling...
QSocketNotifier: Invalid socket 23 and type 'Read', disabling...
QSocketNotifier: Invalid socket 50 and type 'Read', disabling...
QSocketNotifier: Invalid socket 70 and type 'Read', disabling...
QSocketNotifier: Invalid socket 79 and type 'Read', disabling...
QSocketNotifier: Invalid socket 81 and type 'Read', disabling...

I'm using suse 11.2 with KDE 4.4 unstable.
Comment 1 Matze 2010-04-06 21:17:57 UTC
Sry I'm using Factory not unstable.
Comment 2 Matze 2010-04-06 21:52:21 UTC
It's also crashing if I update the database:

amarok:   BEGIN: void DatabaseUpdater::removeTemporaryTables() 
amarok:   END__: void DatabaseUpdater::removeTemporaryTables() - Took 0.072s 
amarok:    Sending changed signal 
amarok:   BEGIN: virtual void Dynamic::BiasedPlaylist::invalidate() 
amarok:   END__: virtual void Dynamic::BiasedPlaylist::invalidate() - Took 8.9e-05s 
amarok:   BEGIN: void SqlCollection::updateTrackUrlsUids(const ChangedTrackUrls&, const QHash<QString, QString>&) 
amarok:   END__: void SqlCollection::updateTrackUrlsUids(const ChangedTrackUrls&, const QHash<QString, QString>&) - Took 4.7e-05s 
terminate called after throwing an instance of 'St9bad_alloc'
  what():  std::bad_alloc
QSocketNotifier: Invalid socket 11 and type 'Read', disabling...
KCrash: Application 'amarok' crashing...
Error: Could not determine display.
KCrash cannot reach kdeinit, launching directly.
amarok: Fatal IO error: client killed
amarok:  [ERROR!] "GREPME MySQLe query failed! (1194) Table 'urls' is marked as crashed and should be repaired on SELECT DISTINCT artists.name, artists.id FROM  artists INNER JOIN tracks ON tracks.artist = artists.id INNER JOIN urls ON tracks.url = urls.id LEFT JOIN albums ON tracks.album = albums.id WHERE 1  AND urls.deviceid in (-1) AND albums.artist IS NOT NULL ;" 
amarok:  [ERROR!] "GREPME MySQLe query failed! (1194) Table 'albums' is marked as crashed and should be repaired on SELECT DISTINCT albums.name, albums.id, albums.artist FROM  albums INNER JOIN tracks ON tracks.album = albums.id INNER JOIN urls ON tracks.url = urls.id WHERE 1  AND urls.deviceid in (-1) AND albums.artist IS NULL ;" 
amarok:  [ERROR!] "GREPME MySQLe query failed! (1194) Table 'tracks' is marked as crashed and should be repaired on SELECT DISTINCT artists.name, artists.id FROM  artists INNER JOIN tracks ON tracks.artist = artists.id INNER JOIN urls ON tracks.url = urls.id LEFT JOIN albums ON tracks.album = albums.id WHERE 1  AND urls.deviceid in (-1) AND albums.artist IS NOT NULL ;" 
amarok: END__: virtual void XmlParseJob::run() - DELAY Took (quite long) 34s 
drkonqi(8779) SystemInformation::runLsbRelease: found lsb_release
drkonqi(8779) KCrashBackend::constructCrashedApplication: Using /proc to determine executable path
drkonqi(8779) KCrashBackend::constructCrashedApplication: Executable is: "/usr/bin/amarok"
drkonqi(8779) KCrashBackend::constructCrashedApplication: Executable exists: true
Comment 3 Dario Andres 2010-04-07 14:25:40 UTC
The first crash looks related to Phonon-Xine; 
- If you can reproduce the crash at will (or you experience this regularly), can you install the "amarok-debuginfo", "phonon-backend-xine-debuginfo" packages and post a complete backtrace here? (you can get more information at http://techbase.kde.org/User:DarioAndres/Basic_Guide_about_Crash_Reporting ) Thanks
Comment 4 Matze 2010-04-07 15:15:07 UTC
Yesterday I updated KDE und Amarok. Today I have installed "amarok-debuginfo"and "phonon-backend-xine-debuginfo".

Today it sometimes crashs if the song changes.

amarok:   BEGIN: void Playlist::Actions::requestNextTrack() 
amarok:     [Playlist::Actions] so far so good! 
amarok:     BEGIN: void Playlist::Actions::play(quint64, bool) 
amarok:       BEGIN: void EngineController::setNextTrack(Meta::TrackPtr) 
amarok:         [EngineController] locking mutex 
amarok:         [EngineController] locked! 
amarok:       END__: void EngineController::setNextTrack(Meta::TrackPtr) - Took 0.00024s 
amarok:     END__: void Playlist::Actions::play(quint64, bool) - Took 0.00044s 
amarok:   END__: void Playlist::Actions::requestNextTrack() - Took 0.0025s 
amarok: END__: void EngineController::slotAboutToFinish() - Took 0.052s 
amarok: BEGIN: void EngineController::slotNewTrackPlaying(const Phonon::MediaSource&) 
amarok:    returning bookmarkcurrenttrack action 
amarok:    returning bookmarkcurrenttrack action 
Qt has caught an exception thrown from an event handler. Throwing
exceptions from an event handler is not supported in Qt. You must
reimplement QApplication::notify() and catch all exceptions there.

terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc
KCrash: Application 'amarok' crashing...
sock_file=/home/master/.kde4/socket-linux-home/kdeinit4__0
Comment 5 Matze 2010-04-07 15:15:59 UTC
Created attachment 42572 [details]
Crashreport
Comment 6 Sven Krohlas 2010-04-07 21:02:37 UTC
The backtrace is massively lacking debug symbols, but it looks like a dupe.

*** This bug has been marked as a duplicate of bug 219241 ***
Comment 7 Matze 2010-04-07 21:24:24 UTC
But all songs are available on my disk.

If I would know what I have to install to reduce the misssing debug symbols I would install it and make a new backtrace.
Comment 8 Sven Krohlas 2010-04-07 21:38:19 UTC
That doesn't change the fact that the backtraces look very similar.

Generally you need debuginfo packages of amarok, kdelibs, qt, phonon and xine.