Bug 342381

Summary: no 'fsync' for 'akregatorc' or for 'feeds.opml'
Product: [Applications] akregator Reporter: Peter Grandi <pg_kde>
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED UNMAINTAINED    
Severity: major CC: rdieter
Priority: NOR    
Version: 4.13.2   
Target Milestone: ---   
Platform: Kubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Peter Grandi 2014-12-31 19:11:24 UTC
aKregator does not seem to 'fsync' very much, that is only when quitting; I think that this was verified by Red Dieter.

This means that in case of crashes for whatever reason often the files 'akregatorc' and especially 'feeds.opml' are corrupted or empty.

This seems to be a general issue with KDE, or perhaps it was a few years ago:

http://sandeen.net/wordpress/uncategorized/coming-clean-on-o_ponies/
http://lwn.net/Articles/351422/


Reproducible: Sometimes

Steps to Reproduce:
Crash or kill aKregator without quitting it.

Actual Results:  
'akregatorc' or more commonly 'feeds.opml' are empty, missing or corrupted.


Expected Results:  
Files written by aKregator get committed with 'fsync' when saved or auto-saved.

It is particulaly annoying because the 'feeds.opml~' save file is not properly syncronized either, so it is essentially useless.
Comment 1 Rex Dieter 2014-12-31 21:22:51 UTC
I can confirm the case for akregatorrc, I changed status filter option, and akregatorrc wasn't updated ondisk until I quit akregator
Comment 2 Denis Kurz 2016-09-24 19:40:59 UTC
This bug has only been reported for versions before 4.14, which have been unsupported for at least two years now. Can anyone tell if this bug still present?

If noone confirms this bug for a Framework-based version of akregator (version 5.0 or later, as part of KDE Applications 15.08 or later), it gets closed in about three months.
Comment 3 Denis Kurz 2017-01-07 22:41:40 UTC
Just as announced in my last comment, I close this bug. If you encounter it again in a recent version (at least 5.0 aka 15.08), please open a new one unless it already exists. Thank you for all your input.