DescriptionFix cycle cracking once and for all.
While testing parallel_emerge, I found more cases where it would fail
to crack cycles. The issue is that parallel_emerge simply cracks the first
cycle it finds that involves an edge, rather than all cycles that involve an
edge.
Finding all cycles that involve an edge without looping forever is a rather
difficult problem, so I've updated the algorithm to simply keep searching
until it runs out of cycles. Testing this, I haven't found any cases where
the performance of the cycle cracking is a problem. I updated the algorithm
to log its performance stats so we can track this.
TEST=emerge -ep portage
BUG=none
Change-Id: I1cb95ffe9d977b9f8d38626d2d6cdbb766c14669
Patch Set 1 #Patch Set 2 : Confirm no changes #
Messages
Total messages: 1 (0 generated)
|