Automatic recovery from Multiple Merge Candidates error

Authored by dvratil on May 31 2019, 11:20 AM.

Description

Automatic recovery from Multiple Merge Candidates error

Summary:
Introduce a recovery codepath when Multiple Merge Candidates error
occurs during Item merging. Since clients generally do not use
merging, this really only happens during ItemSync. In such case we
quitely delete all the conflicting items from the database and reschedule
the collection sync. The next sync should then succeed and bring the
collection into a consistent state.

Note that this does not fix the Multiple Merge Candidates bug - it can
still happen (and we still don't know how), but Akonadi should now be
able to recover from it automatically without user intervention, thus
making this issue less of a PITA.

CCBUG: 338658

Test Plan: Successfuly auto-recovered a broken collection on my setup.

Reviewers: KDE PIM, dfaure

Reviewed By: dfaure

Subscribers: vkrause, dfaure, ngraham, asturmlechner, kde-pim

Tags: KDE PIM

Differential Revision: https://phabricator.kde.org/D21455

(cherry picked from commit 8f230d7d7f8a4e2b97273585374a68902b5ef6cf)

Details

Committed
knaussAug 30 2019, 8:48 AM
Reviewer
dfaure
Differential Revision
D21455: Automatic recovery from Multiple Merge Candidates error
Parents
R165:0220e5052237: Fix unhandled exception from DataStream::operator<<
Branches
Unknown
Tags
Unknown