Akonadi: avoid 100% CPU on reading corrupt files.
ClosedPublic

Authored by dfaure on Dec 14 2016, 9:29 AM.

Details

Summary

I wonder if the file format changed? I ended up with entityCnt being a very large number,
although the .dat file was very small. In 4 different resources, after migrating from
Leap 42.2 to akonadi master.

Diff Detail

Repository
R165 Akonadi
Branch
master
Lint
No Linters Available
Unit
No Unit Test Coverage
dfaure updated this revision to Diff 8994.Dec 14 2016, 9:29 AM
dfaure retitled this revision from to Akonadi: avoid 100% CPU on reading corrupt files..
dfaure updated this object.
dfaure edited the test plan for this revision. (Show Details)
dfaure added a reviewer: dvratil.
Restricted Application added a project: KDE PIM. · View Herald TranscriptDec 14 2016, 9:29 AM
Restricted Application added a subscriber: kde-pim. · View Herald Transcript
mlaurent added inline comments.
src/core/changerecorder_p.cpp
165

I can't speak about code but could you use qCWarning(....) here (and replace other qWarning too) please :)
thanks

dvratil accepted this revision.Dec 14 2016, 2:08 PM
dvratil edited edge metadata.

What version of KDE PIM did you have previously (before switching to master)? Sounds like a bug in the journal migration path.

But the patch makes sense, just switch to qCWarning(AKONADICORE_LOG) please and you can commit.

This revision is now accepted and ready to land.Dec 14 2016, 2:08 PM

What version of KDE PIM did you have previously (before switching to master)? Sounds like a bug in the journal migration path.

I was using the packages from OpenSuSE Leap 42.2, which have:

  • libKF5AkonadiCore-16.08.2
  • kmail5-16.08.2

etc.

dfaure closed this revision.Dec 14 2016, 11:33 PM