[Yum-devel] [PATCH][RFC] Skip-broken support again
Tim Lauridsen
tim.lauridsen at googlemail.com
Tue Dec 11 11:56:53 UTC 2007
Florian Festi wrote:
> Tim Lauridsen wrote:
>> Florian Festi wrote:
>>> Shouldn't
>>>
>>> depTree = self._buildDepTree()
>>>
>>> be done in the while loop as the tsInfo changes with each loop?
>>>
>>
>> No need to build the depTree again, it is just used to find the relation
>> between packages original in the transaction and which packages they
>> drag in as dependcies.
>> So if foo is needed to be skipped then foobar & foogui dragged in as
>> deps to foo is skipped too.
>> If we recalc the deptree in each loop, then we lose some relations,
>> because some packages is removed, and we can get looping in special
>> cases.
>
> What about the deps of the packages we draw in in the while loop. An
> alternative also satisfying a requirement - if this can happen. I've
> been sent the following Traceback (devel update):
>
> --> Finished Dependency Resolution
> Traceback (most recent call last):
> File "./yummain.py", line 204, in <module>
> main(sys.argv[1:])
> File "./yummain.py", line 146, in main
> (result, resultmsgs) = base.buildTransaction()
> File "/.../yum/yum/__init__.py", line 588, in buildTransaction
> rescode, restring = self._skipPackagesWithProblems(rescode, restring)
> File "/.../yum/yum/__init__.py", line 604, in _skipPackagesWithProblems
> toRemove = self._getPackagesToRemove(wpo, depTree, toRemove)
> File "/.../yum/yum/__init__.py", line 636, in _getPackagesToRemove
> for child in deptree[po]:
> KeyError: <yum.sqlitesack.YumAvailablePackageSqlite object at 0x10aca410>
>
> Tghis can obviosly only happen in the second run of the while loop. So I
> guess the deptree needs to be updated somehow.
>
> Florian
> _______________________________________________
> Yum-devel mailing list
> Yum-devel at linux.duke.edu
> https://lists.dulug.duke.edu/mailman/listinfo/yum-devel
I don't see how other deps can be dragged in a second depsolve run, not
in the inital transaction result. after we have removed some packages
from the transaction.
How do you get this Traceback, do you have a testcase.
Are you using current yum master.
Tim
More information about the Yum-devel
mailing list