1 |
The previous default emerge --backtrack=10 setting could lead to lots |
2 |
of wasted cpu time in cases where it will ultimately fail to find a |
3 |
valid solution anyway. Therefore, reduce the default to --backtrack=3. |
4 |
|
5 |
In order for the BacktrackingTestCase.testBacktrackNoWrongRebuilds to |
6 |
succeed, the test now needs to specify --backtrack=6. This is a rather |
7 |
obscure case though, so it does not seem worthwhile to increase the |
8 |
default because of it. |
9 |
|
10 |
X-Gentoo-Bug: 536926 |
11 |
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=536926 |
12 |
--- |
13 |
man/emerge.1 | 2 +- |
14 |
pym/_emerge/depgraph.py | 2 +- |
15 |
pym/portage/tests/resolver/test_backtracking.py | 7 ++++++- |
16 |
3 files changed, 8 insertions(+), 3 deletions(-) |
17 |
|
18 |
diff --git a/man/emerge.1 b/man/emerge.1 |
19 |
index aea7cae..fd9140f 100644 |
20 |
--- a/man/emerge.1 |
21 |
+++ b/man/emerge.1 |
22 |
@@ -384,7 +384,7 @@ precedence over existing changes. This option is automatically enabled with |
23 |
.BR \-\-backtrack=COUNT |
24 |
Specifies an integer number of times to backtrack if |
25 |
dependency calculation fails due to a conflict or an |
26 |
-unsatisfied dependency (default: \'10\'). |
27 |
+unsatisfied dependency (default: \'3\'). |
28 |
.TP |
29 |
.BR "\-\-binpkg\-changed\-deps [ y | n ]" |
30 |
Tells emerge to ignore binary packages for which the corresponding |
31 |
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py |
32 |
index 1431779..5e94a04 100644 |
33 |
--- a/pym/_emerge/depgraph.py |
34 |
+++ b/pym/_emerge/depgraph.py |
35 |
@@ -8941,7 +8941,7 @@ def _backtrack_depgraph(settings, trees, myopts, myparams, myaction, myfiles, sp |
36 |
|
37 |
debug = "--debug" in myopts |
38 |
mydepgraph = None |
39 |
- max_retries = myopts.get('--backtrack', 10) |
40 |
+ max_retries = myopts.get('--backtrack', 3) |
41 |
max_depth = max(1, (max_retries + 1) // 2) |
42 |
allow_backtracking = max_retries > 0 |
43 |
backtracker = Backtracker(max_depth) |
44 |
diff --git a/pym/portage/tests/resolver/test_backtracking.py b/pym/portage/tests/resolver/test_backtracking.py |
45 |
index 3b69eda..f3592c9 100644 |
46 |
--- a/pym/portage/tests/resolver/test_backtracking.py |
47 |
+++ b/pym/portage/tests/resolver/test_backtracking.py |
48 |
@@ -154,7 +154,12 @@ class BacktrackingTestCase(TestCase): |
49 |
|
50 |
world = ["dev-libs/B", "dev-libs/C"] |
51 |
|
52 |
- options = {'--update' : True, '--deep' : True, '--selective' : True} |
53 |
+ options = { |
54 |
+ '--backtrack': 6, |
55 |
+ '--deep' : True, |
56 |
+ '--selective' : True, |
57 |
+ '--update' : True, |
58 |
+ } |
59 |
|
60 |
test_cases = ( |
61 |
ResolverPlaygroundTestCase( |
62 |
-- |
63 |
2.0.5 |