Bug 277865

Summary: Playlist creation is "stalled"
Product: [Applications] amarok Reporter: frautukka
Component: Playlists/Automated Playlist GeneratorAssignee: Amarok Developers <amarok-bugs-dist>
Status: RESOLVED FIXED    
Severity: normal CC: anzah1, bart.cerneels, karaluh, malarkannan.p, michel.poleur, mschoepf, optiluca, paulo.miguel.dias, stharward
Priority: NOR    
Version: 2.4-GIT   
Target Milestone: 2.5   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 2.5
Sentry Crash Report:

Description frautukka 2011-07-15 21:45:31 UTC
Version:           2.4-GIT (using KDE 4.6.0) 
OS:                Linux

When trying to fill the playlist window with an APG, nothing happens. The APG symbols are greyed out and Amarok tells me that it is generating a new playlist. The constraints (all songs in between 1979 and 1990) aren't bad and have worked in previous versions.

 It doesn't help to press the cancel symbol in the progress bar. The bar just disappears, but the APG is still not accessible...

Here is the debug output:
amarok: [APG::ConstraintSolver] Constraint Solver quality factor: 0.4 
amarok: [APG::ConstraintSolver] New ConstraintSolver with serial number 1623301183 
amarok: [APG::ConstraintNode] new constraint node at 0x38a8040 with parent at 0x1f6c670 
amarok: BEGIN: ConstraintTypes::TrackSpreader::TrackSpreader(ConstraintNode*) 
amarok: END__: ConstraintTypes::TrackSpreader::TrackSpreader(ConstraintNode*) [Took: 0s] 
amarok: [APG::ConstraintSolver] Running ConstraintSolver 1623301183 
amarok: [Constraint::TrackSpreader] audit final satisfaction 1 
amarok: [Constraint::TagMatch] "Everyday Is Like Sunday" true 
amarok: [Constraint::TagMatch] "Goodbye, Horses" true 
amarok: [Constraint::TagMatch] "la bebete" true 
amarok: [Constraint::TagMatch] "Vanini vanillée" true 
amarok: [Constraint::TagMatch] "Heart" true 
amarok: [Constraint::TagMatch] "Girl You Know It's True" true 
amarok: [Constraint::TagMatch] "Headhunter" true 
amarok: [Constraint::TagMatch] "Deanna" true 
amarok: [Constraint::TagMatch] "The Mercy Seat" true 
amarok: [Constraint::TagMatch] "Paranoimia" true 
amarok: [Constraint::TagMatch] "Eye of a needle" true 
amarok: [Constraint::TagMatch] "Legs" true 
amarok: [Constraint::TagMatch] "Slip of the tongue" true 
amarok: [Constraint::TagMatch] "Backbeat" true 
amarok: [Constraint::TagMatch] "Instruments of darkness" true 
amarok: [Constraint::TagMatch] "Peter Gunn (featuring Duane Eddy)" true 
amarok: [Constraint::TagMatch] "Camilla" true 
amarok: [Constraint::TagMatch] "Chameleon's dish" true 
amarok: [Constraint::TagMatch] "Beatback" true 
amarok: [Constraint::TagMatch] "Peter Gunn (extended version)" true 
amarok: [Constraint::TagMatch] "Opus 4" true 
amarok: [Constraint::TagMatch] "Un Amor" true 
amarok: [Constraint::TagMatch] "Tu Quieres Volver" true 
amarok: [Constraint::TagMatch] "Stadt Im Niemandsland" true 
amarok: [Constraint::TagMatch] "Fortsetzung Folgt" true 
amarok: [Constraint::TagMatch] "Shanghai" true 
amarok: [Constraint::TagMatch] "Op Dä Deckel Vum Clown" true 
amarok: [Constraint::TagMatch] "Rääts Un Links Vum Bahndamm" true 
amarok: [Constraint::TagMatch] "Sandino" true 
amarok: [Constraint::TagMatch] "Dat Däät Joot" true 
amarok: [Constraint::TagMatch] "Everyday Is Like Sunday" true 
amarok: [Constraint::TagMatch] "Goodbye, Horses" true 
amarok: [Constraint::TagMatch] "la bebete" true 
amarok: [Constraint::TagMatch] "Vanini vanillée" true 
amarok: [Constraint::TagMatch] "Heart" true 
amarok: [Constraint::TagMatch] "Girl You Know It's True" true 
amarok: [Constraint::TagMatch] "Headhunter" true 
amarok: [Constraint::TagMatch] "Deanna" true 
amarok: [Constraint::TagMatch] "The Mercy Seat" true 
amarok: [Constraint::TagMatch] "Paranoimia" true 
amarok: [Constraint::TagMatch] "Eye of a needle" true 
amarok: [Constraint::TagMatch] "Legs" true 
amarok: [Constraint::TagMatch] "Slip of the tongue" true 
amarok: [Constraint::TagMatch] "Backbeat" true 
amarok: [Constraint::TagMatch] "Instruments of darkness" true 
amarok: [Constraint::TagMatch] "Peter Gunn (featuring Duane Eddy)" true 
amarok: [Constraint::TagMatch] "Camilla" true 
amarok: [Constraint::TagMatch] "Chameleon's dish" true 
amarok: [Constraint::TagMatch] "Beatback" true 
amarok: [Constraint::TagMatch] "Peter Gunn (extended version)" true 
amarok: [Constraint::TagMatch] "Opus 4" true 
amarok: [Constraint::TagMatch] "Un Amor" true 
amarok: [Constraint::TagMatch] "Tu Quieres Volver" true 
amarok: [Constraint::TagMatch] "Stadt Im Niemandsland" true 
amarok: [Constraint::TagMatch] "Fortsetzung Folgt" true 
amarok: [Constraint::TagMatch] "Shanghai" true 
amarok: [Constraint::TagMatch] "Op Dä Deckel Vum Clown" true 
amarok: [Constraint::TagMatch] "Rääts Un Links Vum Bahndamm" true 
amarok: [Constraint::TagMatch] "Sandino" true 
amarok: [Constraint::TagMatch] "Dat Däät Joot" true 
amarok: [APG::ConstraintSolver] ConstraintSolver 1623301183 finished with satisfaction 1 
Object::connect: No such signal APG::ConstraintSolver::endProgressOperation( QObject * )
Object::connect: No such signal APG::ConstraintSolver::totalSteps( int )

[...]
amarok: BEGIN: void ProgressBar::cancel() 
amarok:   cancelling operation:  "Eine neue Wiedergabeliste wird erstellt" 
amarok: END__: void ProgressBar::cancel() [Took: 0.019s] 



Reproducible: Always

Steps to Reproduce:
Select any APG and click on apply.

Actual Results:  
playlist generation freezes, although the rest of the program keep working (also interactively).

Expected Results:  
the playlist should be generated and the playlist should be filled. and than the AGP should be accessible again.

OS: Linux (x86_64) release 2.6.37.6-0.5-desktop
Compiler: gcc
Comment 1 Martux 2011-08-02 11:03:54 UTC
I am having this exact issue with Amarok-2.4.3 only. Previous working APG just stalls forever.
Newly created doesn't work either.
OS: Gentoo
X86_64
Kernel: Gentoo-sources-3.0
Comment 2 Myriam Schweingruber 2011-08-02 12:09:00 UTC
Confirmed by duplicate.
Comment 3 Paulo Dias 2011-08-03 13:09:19 UTC
I can confirm this too, 2.4.3 and git master. same output when generating APG playlists:


amarok: [APG::ConstraintSolver] ConstraintSolver 1721736092 finished with satisfaction 1 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Rock"" delete delta failed 34 93 
amarok: [APG::ConstraintTester]         satisfaction expected: 0.430108 true: 0.365591 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Rock"" insert delta failed "Sunlight Shining Through Cloud" 69 94 
amarok: [APG::ConstraintTester]         satisfaction expected: 0.361702 true: 0.425532 
Object::connect: No such signal APG::ConstraintSolver::endProgressOperation( QObject * )
Object::connect: No such signal APG::ConstraintSolver::totalSteps( int )
amarok: [APG::ConstraintTester] "Match tag: genre contains "Rock"" test cycle 6 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Rock"" test cycle 7 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Rock"" test cycle 8 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Rock"" test cycle 9 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Rock"" test cycle 10 of 10 
amarok: [APG::ConstraintTester] 2 errors encountered in "Match tag: genre contains "Rock"" 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Pop"" test cycle 1 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Pop"" test cycle 2 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Pop"" test cycle 3 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Pop"" test cycle 4 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Pop"" test cycle 5 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Pop"" test cycle 6 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Pop"" test cycle 7 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Pop"" test cycle 8 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Pop"" test cycle 9 of 10 
amarok: [APG::ConstraintTester] "Match tag: genre contains "Pop"" test cycle 10 of 10 
amarok: [APG::ConstraintTester] 0 errors encountered in "Match tag: genre contains "Pop"" 
amarok: [APG::ConstraintTester] ConstraintTester with serial number 2092230116 has finished and is being deleted
Comment 4 Soren Harward 2011-08-03 13:50:08 UTC
The StatusBar was removed a couple weeks ago, and evidently the only regression testing that was done with the APG was checking that it compiles, not that it actually works.

This shouldn't be too hard to fix; it just looks like some signals are misconnected.  I may have time to get to it before the next release, but if someone who's more familiar with the Logger API wants to fix it, I'd appreciate it.
Comment 5 Soren Harward 2011-08-13 12:13:15 UTC
*** Bug 279894 has been marked as a duplicate of this bug. ***
Comment 6 Myriam Schweingruber 2011-08-20 15:43:55 UTC
*** Bug 280458 has been marked as a duplicate of this bug. ***
Comment 7 Myriam Schweingruber 2011-08-31 22:06:00 UTC
*** Bug 280999 has been marked as a duplicate of this bug. ***
Comment 8 Eric Mesa 2011-09-22 13:47:13 UTC
Just want to add this is also happening on Fedora 15 with the latest Amarok packages.
Comment 9 optiluca@gmail.com 2011-09-26 13:25:58 UTC
Just noticed the target has been moved to 2.5?  Surely this is a pretty fundamental bug to ship in 2.4.4?  I mean, playlists don't work...
Comment 10 Myriam Schweingruber 2011-09-26 14:40:31 UTC
There will be no 2.4.4, the next release will be 2.5
Comment 11 Soren Harward 2011-09-30 13:33:52 UTC
Git commit 57271f77d46791d4f456af45ab79c0c7bcc76349 by Soren Harward.
Committed on 30/09/2011 at 15:29.
Pushed by stharward into branch 'master'.

Fix frozen APG

APG now returns control after the solver finishes.

BUG: 277865

M  +4    -0    src/playlistgenerator/ConstraintSolver.cpp
M  +2    -0    src/playlistgenerator/ConstraintSolver.h
M  +2    -8    src/playlistgenerator/Preset.cpp
M  +0    -1    src/playlistgenerator/Preset.h

http://commits.kde.org/amarok/57271f77d46791d4f456af45ab79c0c7bcc76349
Comment 12 Martux 2011-11-30 10:13:03 UTC
When will the next release be? This crap is ongoing since July. Please... 
I would really wish more releases of Amarok with smaller changes, instead of having to wait half a year for things to be fixed. That's not too user friendly...
Comment 13 Malar Kannan 2011-11-30 15:22:17 UTC
I agree with martux.

On Wed, Nov 30, 2011 at 3:43 PM, Martux <mschoepf@gmx.de> wrote:

> https://bugs.kde.org/show_bug.cgi?id=277865
>
>
>
>
>
> --- Comment #12 from Martux <mschoepf gmx de>  2011-11-30 10:13:03 ---
> When will the next release be? This crap is ongoing since July. Please...
> I would really wish more releases of Amarok with smaller changes, instead
> of
> having to wait half a year for things to be fixed. That's not too user
> friendly...
>
> --
> Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You are on the CC list for the bug.
>
Comment 14 Myriam Schweingruber 2011-11-30 20:48:09 UTC
You can already test with Amarok 2.5 beta 1 aka 2.4.90 (http://amarok.kde.org/en/releases/2.5/beta/1), 2.5 final is targeted for release on December 5th.
Comment 15 Martux 2011-11-30 21:40:43 UTC
Thanks for the hint,  Myriam. I am downloading it right now.
As I am under Gentoo here and would have to add an overlay, this is may work now but not all the time. Why is Amarok not shipped with the monthly KDE update? Isn't it *the* default player?
Ohh, I hope this will work, the AGPs are a really heavy used feature here... :)