Ticket #643 (closed defect: fixed)

Opened 3 years ago

Last modified 3 years ago

Problems with /grid and /tgrid

Reported by: knielsen Owned by: knielsen
Priority: major Milestone: 0.7.12
Version: 0.7.11 Keywords: grid
Cc:

Description

I have problems with /grid and /tgrid in latest Buildbot git.

The problem is that there are lots of rows for each revision (where there should be only one), and most of the cells are empty.

The problem appears to be with the comparison between SourceStamp? objects for the different builds. The grid/tgrid pages in the same row those builds which have identical SourceStamp?. But one component of SourceStamp? is changes.changes.Change, and this class seems to be a new instance for each build. Since class Change use the default equality based on reference, this makes most builds appear in different rows, even if the actual content of the underlying Change objects are the same.

Not sure if all sources show this behaviour. I see this using Bzr, specifically BzrLaunchpadEmailMaildirSource?.

I plan to fix by adding a ComparableMixin? into changes.changes.Change.

Change History

comment:1 Changed 3 years ago by knielsen

  • Status changed from new to accepted

comment:3 Changed 3 years ago by dustin

looks good

comment:4 Changed 3 years ago by knielsen

Actually, the proposed patch does not work well. It takes too much information into account when comparing source stamps, causing builds to appear in different rows when they should be the same. Eg. two different builders both building the same revision on the same branch, but the build properties are slightly different, maybe one is started due to a commit/push to a tree and the other was triggered from another build.

This patch works better:  http://github.com/knielsen/buildbot/commit/ac56eeb480c3c76f6d8f6497e392f2852f4f0825

comment:5 Changed 3 years ago by dustin

Even better :)

comment:6 Changed 3 years ago by knielsen

  • Status changed from accepted to closed
  • Resolution set to fixed

Pushed to git trunk. Should be in 0.7.12 release.

Note: See TracTickets for help on using tickets.