Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(263)

Issue 6688037: Update Portage to sync BlockerDB at init, rather than before every package. (Closed)

Created:
9 years, 9 months ago by davidjames
Modified:
9 years, 9 months ago
Reviewers:
zmedico, zmedico, diandersAtChromium, anush
CC:
chromium-os-reviews_chromium.org
Visibility:
Public.

Description

Update Portage to sync BlockerDB at init, rather than before every package. Currently, Portage syncs the BlockerDB before every merge. This slows down merges considerably because it requires reading the entire vardb from disk. Since Portage doesn't merge conflicting packages anyway, we can optimize this by just reading the vardb at initialization and caching that. Change-Id: I6701926f022ef3aa2da10482fc8b09573ae24610 R=zmedico@chromium.org BUG=none TEST=Test merge with blockers

Patch Set 1 #

Patch Set 2 : Address comments by zmedico #

Total comments: 18

Patch Set 3 : Address review feedback. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+25 lines, -30 lines) Patch
M pym/_emerge/BlockerDB.py View 1 3 chunks +6 lines, -7 lines 0 comments Download
M pym/_emerge/FakeVartree.py View 1 2 3 chunks +12 lines, -6 lines 0 comments Download
M pym/_emerge/Scheduler.py View 1 5 chunks +7 lines, -17 lines 0 comments Download

Messages

Total messages: 5 (0 generated)
davidjames
9 years, 9 months ago (2011-03-21 19:59:32 UTC) #1
diandersAtChromium
I reviewed this from the perspective of a complete portage newbie, so mostly just dumb ...
9 years, 9 months ago (2011-03-22 02:57:59 UTC) #2
davidjames
http://codereview.chromium.org/6688037/diff/4/pym/_emerge/BlockerDB.py File pym/_emerge/BlockerDB.py (right): http://codereview.chromium.org/6688037/diff/4/pym/_emerge/BlockerDB.py#newcode33 pym/_emerge/BlockerDB.py:33: def findInstalledBlockers(self, new_pkg): On 2011/03/22 02:57:59, diandersAtChromium wrote: > ...
9 years, 9 months ago (2011-03-23 20:19:11 UTC) #3
zmedico
Thanks, I've applied this upstream: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=99ec2a8f810ae7ea2c76d928665ed1d02c2d9cc7
9 years, 9 months ago (2011-03-25 01:22:28 UTC) #4
zmedico
9 years, 9 months ago (2011-03-26 16:18:23 UTC) #5
There's a fix here to make it discard a replaced package with the same SLOT:

http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=81cd62d4...

Powered by Google App Engine
This is Rietveld 408576698