[Kde-pim] Review Request: Fix broken collection comparision leading to resource hangs
Thomas McGuire
mcguire at kde.org
Tue Jun 9 02:35:31 BST 2009
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/806/
-----------------------------------------------------------
Review request for KDE PIM and Volker Krause.
Summary
-------
Comparing two new Collection objects currently says the collections are different, which triggers an interesting cascade: Equal Task objects were not detected as equal, therefore a check in the resource scheduler that should prevent that more than one change replay tasks fails. Therefore, multiple change replay tasks were in the task queue, and under some special circumstances, that can trigger a change replay when there are 0 pending notification left. In that case, since of the missing notifications, taskDone() on the change replay task was never called, leading to a resource hang.
Frankly I have no idea what the lastId stuff in the Collection constructor was, I hope it was not needed by something.
This fixes the POP3 unit test.
Diffs
-----
trunk/KDE/kdepimlibs/akonadi/changerecorder.cpp 978931
trunk/KDE/kdepimlibs/akonadi/collection.cpp 978931
trunk/KDE/kdepimlibs/akonadi/tests/CMakeLists.txt 978931
trunk/KDE/kdepimlibs/akonadi/tests/resourceschedulertest.h PRE-CREATION
trunk/KDE/kdepimlibs/akonadi/tests/resourceschedulertest.cpp PRE-CREATION
Diff: http://reviewboard.kde.org/r/806/diff
Testing
-------
Added minimal testcase for this.
The POP3 unit tests also cover this bug.
I tried to run the unit tests, but akonadi-db-testenvironmenttest hangs already, guess that has nothing to do with this patch.
Did not do application testing.
Thanks,
Thomas
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/
More information about the kde-pim
mailing list