On Nov 12, 2007 3:35 PM, Dan McGee <dpmcgee@gmail.com> wrote:
On Nov 12, 2007 2:28 PM, Aaron Griffin <aaronmgriffin@gmail.com> wrote:
On Nov 12, 2007 2:18 PM, Travis Willard <travis@archlinux.org> wrote:
On Mon, 12 Nov 2007 14:08:07 -0600, Aaron Griffin wrote
On Nov 12, 2007 10:21 AM, Nagy Gabor <ngaba@bibl.u-szeged.hu> wrote:
So I will create a patch for killing requiredby soon. The patched pacman will be compatible with the old dbs; however, old pacmans with new dbs will fail. What do you say? Any contras? [my patch would simulate alpm_pkg_get_requiredby with compute_requiredby]
Just to make sure I understand you - you want to fully remove REQUIREDBY from the DB and compute it every time.
It will be a little slower, BUT, it will help us in a few ways:
1) we don't need REQUIREDBY all that often. It's only used in removal, and replace functionality if I understand correctly. The performance hit will not be that big in this case (removal happens far less often than addition). 2) Our package structures will shrink in size, which is always good
3) Computing requiredby every time will ensure (if the computation is done right) that requiredby will always be correct. Even after -Rd operations followed by subsequent -S operations and other crazy things. Basically, less bookkeeping to do on install/remove.
I knew I had more points in my head! This was one of them - preventing DB corruption.
4) Less disk writes, as we actually have to write, compute, and rewrite the entry, if memory serves me correctly.
+1. I think we can trade a possible slight performance loss in a few cases for all the things mentioned above. I also think it will cut out a lot of crappy code.
Throwing the project manager speak into this here- it isn't getting into 3.1. This will be a great kickoff for 3.2 major changes though.
Along with real transactions, parsing cleanup, DB backend changes, a million dollars, naked women, and copious amounts of booze, yes?