[pacman-dev] [PATCH] Fix for trans001.py (FS#9088)
Nagy Gabor
ngaba at bibl.u-szeged.hu
Fri Jan 2 12:23:38 EST 2009
> >From 01ba4fce1e7bf2c6058074c583e5db5147d31f02 Mon Sep 17 00:00:00
> >2001
> From: Nagy Gabor <ngaba at bibl.u-szeged.hu>
> Date: Fri, 2 Jan 2009 17:43:05 +0100
> Subject: [PATCH] Fix for trans001.py (FS#9088)
>
> >From now on _alpm_db_find_fileconflicts() works with upgrade and
> >remove
> target lists (like checkdeps), which makes it transaction independent
> (we still need a trans param because of the progressbar). This is a
> small step towards the universal transaction. So we call this
> function directly from sync.c before commiting the remove
> transaction. This is much safer, but we can get false fileconflict
> error alarms in some tricky cases ("symlinks puzzle" etc).
>
> The patch on find_fileconflict looks complex, but it is mainly an
> "indent-patch", the new code-part can be found after the
> /* check remove list ... */ comment, and I modified something around
> the "file has changed hand" case (see comment modifications in the
> code).
>
> Unfortunately sync.c became more ugly, because we have to create 2
> parallel internal transactions: to avoid duplicated work, upgrade
> transaction is used to load package data (filelists). This problem
> will disappear, when we finally get rid of internal transactions.
>
> Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>
> ---
Guys, needless to say, but this patch needs testing. No new failing
pactests, but I am not sure atm, that we have no problems with user
interface (progressbar, events), and we should test if those mentioned
"false fileconflict error alarms" are common or not. (Imho not.)
Bye
More information about the pacman-dev
mailing list