[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#673063: marked as done (britney: doop_source possibly broken)



Your message dated Wed, 20 May 2015 18:40:14 +0200
with message-id <555CB8EE.4080604@thykier.net>
and subject line Re: britney: doop_source possibly broken
has caused the Debian Bug report #673063,
regarding britney: doop_source possibly broken
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
673063: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=673063
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: britney


In doop_source britney has the following if-statement (indentation reduced):

"""
    # if the binary already exists (built from another source)
    if binary in binaries[parch][0]:
        [...]
    else:
        # if the binary was previously built by a different
        # source package in testing, all of the reverse
        # dependencies of the old binary are affected.
        # reverse dependencies built from this source can be
        # ignored as their reverse trees are already handled
        # by this function
        # XXX: and the reverse conflict tree?
        [...]
"""

The comments are slightly confusing on which branch is the "built from
other source"-case, but most likely it is the "else" branch.  From this
I would expect that the majority of the "runs" will pass through the other
branch... but it is actually not the case.

An unconditional "AssertionError"[1] will (eventually) be triggered
during a live run, but it is rather far into the process.  At that
point it has considered quite a few packages already packages.

With a trivial condition to rule out "common source migrations"[2], I
can complete the "live-2011-12-13" run in the test suite without
triggering the assertion.


Reviewing the surrounding code, I suspect the culprit to be this code
snippet appearing a bit above the aforementioned "if"-statement (NB:
indentation reduced):

"""

   # remove all the binaries which aren't being smooth updated
   for p in [ bin for bin in bins if bin not in smoothbins ]:
       binary, parch = p.split("/")
       [...]

       # finally, remove the binary package
       del binaries[parch][0][binary]
       self.systems[parch].remove_binary(binary)
"""


~Niels


[1]
"""
    # if the binary already exists (built from another source)
    if binary in binaries[parch][0]:
        raise AssertError()
"""

[2]
"""
    # if the binary already exists (built from another source)
    if binary in binaries[parch][0]:
        if item.architecture == 'source' and \
                binaries[parch][0][binary][SOURCE] == item.package:
            raise AssertionError()        
"""



--- End Message ---
--- Begin Message ---
On Tue, 15 May 2012 21:56:11 +0200 Niels Thykier <niels@thykier.net> wrote:
> Package: release.debian.org
> Severity: normal
> User: release.debian.org@packages.debian.org
> Usertags: britney
> 
> 
> In doop_source britney has the following if-statement (indentation reduced):
> 
> [...]
> 
> 
> ~Niels
> 

I believe we have already clarified this and we eventually changed it
into an "if-elif", which makes sense to me.  Accordingly, lets close
this bug.

Thanks,
~Niels

--- End Message ---

Reply to: