Raise default backtrack limit for bug 337178
authorSebastian Luther <SebastianLuther@gmx.de>
Thu, 21 Oct 2010 20:35:19 +0000 (22:35 +0200)
committerZac Medico <zmedico@gentoo.org>
Thu, 21 Oct 2010 20:44:03 +0000 (13:44 -0700)
The bug was solved in principle, but other conflicts could
lead to all tries being used up too early.
The default backtrack limit is changed from 5 to 10.
The maximal depth of the backtrack graph is now half of the
backtrack limit.

man/emerge.1
pym/_emerge/depgraph.py
pym/_emerge/help.py

index ad882b7823ac2797970ff2f72f2b51b790d69f13..21e8db21e22ae5b57421fc14513f9e1c0af130f0 100644 (file)
@@ -297,7 +297,7 @@ LICENSE masks, and package.use settings.
 .BR \-\-backtrack=COUNT
 Specifies an integer number of times to backtrack if
 dependency calculation fails due to a conflict or an
-unsatisfied dependency (default: \'5\').
+unsatisfied dependency (default: \'10\').
 .TP
 .BR "\-\-binpkg\-respect\-use < y | n >"
 Tells emerge to ignore binary packages if their use flags
index d05272f4f562d8cb5fdad6f06f9987b68509ad00..074b558692a99a8fe7c1b10b181ba68840e5bdc3 100644 (file)
@@ -5523,8 +5523,8 @@ def backtrack_depgraph(settings, trees, myopts, myparams,
 
 def _backtrack_depgraph(settings, trees, myopts, myparams, myaction, myfiles, spinner):
 
-       max_retries = myopts.get('--backtrack', 5)
-       max_depth = myopts.get('--backtrack', 5)
+       max_retries = myopts.get('--backtrack', 10)
+       max_depth = max(1, (max_retries + 1) / 2)
        allow_backtracking = max_retries > 0
        backtracker = Backtracker(max_depth)
        backtracked = 0
index 4533cfba0c7dd4bbf50b3bdf8265224df7c90444..97562ab3bc8a495d729007ffafa3d2db457c9943 100644 (file)
@@ -314,7 +314,7 @@ def help(myopts, havecolor=1):
                print("       " + green("--backtrack") + " " + turquoise("COUNT"))
                desc = "Specifies an integer number of times to backtrack if " + \
                        "dependency calculation fails due to a conflict or an " + \
-                       "unsatisfied dependency (default: '5')."
+                       "unsatisfied dependency (default: '10')."
                for line in wrap(desc, desc_width):
                        print(desc_indent + line)
                print()