[Buildbot-devel] Improper combination of changes

Nathaniel Hatley nathaniel.hatley at gmail.com
Fri Dec 28 02:01:14 UTC 2012


Good Evening,

Running BuildBot 0.8.6p1 with a Gerrit change source, I am experiencing the
following issue:

Multiple independent patches are submitted to gerrit, so the slaves begin
building each patch in series (they are treated as independent changes).
After some time, additional patches are submitted before the builds have
completed for the first set of patches.  Some of these patches are updated
versions of the originals submitted during the first batch.  If
the original patch has not yet started its build on any of the slaves, the
updated version is added such that they are no longer independent changes
and then built together as one set of changes.

This is an issue for two reasons:

I track the buildsets with a modified version of the mail status to push
updates to gerrit (available here:
https://github.com/buildbot/buildbot/pull/483).  Since the buildsets were
combined into a single build, the first buildset's information is "lost"
and replaced with duplicate information from the second buildset.  This
results in two posts to gerrit both reporting the status of the second
buildset.

I no longer know if the first patch was the reason for the build succeeding
or failing.  This second reason may possibly not apply as there is an
additional variable that I have been unable to verify if it is just a
coincidence or if it is part of what causes the issue.  The two patchsets
are identical in gerrit (except their git ids and timestamps).

I feel this issue may possibly be related to the scheduler, rather than the
change source, as the change is entered into buildbot.  The issue is the
scheduler is combining patches when it should not be.  My scheduler
configuration can be seen below:

from buildbot.schedulers.basic import AnyBranchScheduler
c['schedulers'] = []
c['schedulers'].append(AnyBranchScheduler(
                            name="basic",
                            treeStableTimer=None,
                            builderNames=Builders))

I've tried looking through the scheduler code to determine what could cause
this, but I am not yet familiar enough with Python to be of much use.

Please let me know if there is something I've overlooked, misconfigured,
etc.

Thank you,
Nathan Hatley.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://buildbot.net/pipermail/devel/attachments/20121227/6b036cba/attachment.html>


More information about the devel mailing list