[pacman-dev] [PATCH] Sync data after writing to the local db

Allan McRae allan at archlinux.org
Sat Oct 30 19:01:45 EDT 2010


On 30/10/10 23:40, Xavier Chantry wrote:
> On Sat, Oct 30, 2010 at 3:01 PM, Nagy Gabor<ngaba at bibl.u-szeged.hu>  wrote:
>>
>> Wouldn't this cause a notable slow-down?
>>
>
> I thought the issue was rather that the local db entries would be
> synced when the actual package files are probably not synced.
> But if we sync everything, then it's very likely to become very slow.

This is to fix issues like:
error: could not open file 
/var/lib/pacman/local/texlive-bin-2010.1-4/depends: No such file or 
directory

Missing package files can be detected using -Qk and fixed by reinstall 
so I find it reasonable to just sync the local db entries.  Also, doing 
just that should not slow down the sync operation too much.

> I seem to remember that Dan sent a fdatasync patch a while ago, I
> don't remember if it affected only the db or both db and files.
>
> Also let's not forget this :
>         Calling fsync() does not necessarily ensure that the entry in
> the directory
>         containing the file has also reached disk.  For that an
> explicit fsync() on a
>         file descriptor for the directory is also needed.
>

That would probably be better.  I only did the files because the file 
descriptor for those was handy...

Allan



More information about the pacman-dev mailing list