On Fri, 2011-02-11 at 14:20 +0200, Panu Matilainen wrote: > Closing the rpmdb which has active iterators turns the iterators > into zombies that whose locks can only be freed when the process > terminates. Rpm is being a reckless mom... > --- > yum/rpmsack.py | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/yum/rpmsack.py b/yum/rpmsack.py > index 0982a7c..24bb9ce 100644 > --- a/yum/rpmsack.py > +++ b/yum/rpmsack.py > @@ -658,6 +658,7 @@ class RPMDBPackageSack(PackageSackBase): > po._has_hdr = False > del po.hdr > self._cached_conflicts_data = result.values() > + del mi > > if self.auto_close: > self.ts.close() > @@ -1276,6 +1277,7 @@ class RPMDBPackageSack(PackageSackBase): > break > else: > ret.append(po) > + del mi > > if self.auto_close: > self.ts.close()
why do you have to specifically delete the match iterators? -sv _______________________________________________ Yum-devel mailing list Yum-devel@lists.baseurl.org http://lists.baseurl.org/mailman/listinfo/yum-devel