[Buildbot-commits] [Buildbot] #1971: Nightly timered build using incorrect change for revision
Buildbot
nobody at buildbot.net
Thu May 26 15:41:48 UTC 2011
#1971: Nightly timered build using incorrect change for revision
--------------------+-----------------------
Reporter: zacw | Owner:
Type: defect | Status: new
Priority: major | Milestone: undecided
Version: 0.8.3p1 | Keywords:
--------------------+-----------------------
== Summary ==
Given a list of changes, a nightly build performs the build using the
revision from a historical change, not the latest change in the list.
== Environment ==
* '''Buildbot''': 0.8.4-pre-639-g82d83fd
* '''Twisted''': 8.2.0
* '''Jinja''': 2.5.5
* '''Python''': 2.6.1 (!r261:67515, Jun 24 2010, 21:47:49) [GCC 4.2.1
(Apple Inc. build 5646)]
* '''Buildmaster platform''': darwin
== Steps to reproduce ==
(Ignore any obvious incongruities; copying/pasting the setup code from
more generic code.)
1. Create a nightly build with the following generic setup:
{{{
c['schedulers'].append(timed.Nightly(
name ="icephone-unstable-nightly",
branch = "branches/icephone-1.10",
builderNames = ["icephone-unstable-nightly"],
hour = 7,
minute = 0,
onlyIfChanged = True))
}}}
1. Create an SVNPoller source for the change:
{{{
c['change_source'].append(SVNPoller(
svnurl = REPOSITORY_ICEPHONE,
project = "icephone",
svnuser = SVN_USERNAME,
svnpasswd = SVN_PASSWORD,
split_file = split_file_branches,
pollInterval = POLL_INTERVAL_SEC))
}}}
1. Perform a number of commits on the branch for the nightly.
1. Observe nightly build using the incorrect revision from a given change
list.
== Expected result ==
Nightly build sorts the list of its changes, and uses the latest change to
pluck the revision for the build.
== Actual Result ==
Nightly build picks an incorrect change, which yields the incorrect
revision being built by the builder.
== Debug Logs ==
From the master, at poll time:
{{{
2011-05-25 11:50:50-0400 [-] svnPoller: _process_changes 5435 .. 5438
2011-05-25 11:50:50-0400 [-] Adding change revision 5436
2011-05-25 11:50:50-0400 [-] Adding change revision 5437
2011-05-25 11:50:50-0400 [-] Adding change revision 5438
2011-05-25 11:50:50-0400 [-] WARNING: change source is using deprecated
addChange parameter 'who'
2011-05-25 11:50:50-0400 [-] added change Change(who=u'zwest',
files=[…redacted…], comments=u'…redacted…', revision=u'5436',
when=1306338650, category=None, project=u'icephone',
repository=u'…redacted/icephone') to database
2011-05-25 11:50:50-0400 [-] WARNING: change source is using deprecated
addChange parameter 'who'
2011-05-25 11:50:50-0400 [-] added change Change(who=u'zwest',
files=[…redacted…], comments=u'…redacted…', revision=u'5437',
when=1306338650, category=None, project=u'icephone',
repository=u'…redacted/icephone') to database
2011-05-25 11:50:50-0400 [-] WARNING: change source is using deprecated
addChange parameter 'who'
2011-05-25 11:50:50-0400 [-] added change Change(who=u'zwest',
files=[…redacted…], comments=u'…redacted…', revision=u'5438',
when=1306338650, category=None, project=u'icephone',
repository=u'…redacted/icephone') to database
2011-05-25 11:50:50-0400 [-] SVNPoller finished polling None
…
2011-05-25 13:46:48-0400 [-] svnPoller: _process_changes 5438 .. 5442
2011-05-25 13:46:48-0400 [-] Adding change revision 5439
2011-05-25 13:46:48-0400 [-] Adding change revision 5440
2011-05-25 13:46:48-0400 [-] Adding change revision 5441
2011-05-25 13:46:48-0400 [-] Adding change revision 5442
2011-05-25 13:46:48-0400 [-] WARNING: change source is using deprecated
addChange parameter 'who'
2011-05-25 13:46:48-0400 [-] added change Change(who=u'zwest',
files=[…redacted…], comments=u'…redacted…', revision=u'5439',
when=1306345608, category=None, project=u'icephone',
repository=u'…redacted/icephone') to database
2011-05-25 13:46:48-0400 [-] WARNING: change source is using deprecated
addChange parameter 'who'
2011-05-25 13:46:49-0400 [-] added change Change(who=u'zwest',
files=[…redacted…], comments=u'…redacted…', revision=u'5440',
when=1306345608, category=None, project=u'icephone',
repository=u'…redacted/icephone') to database
2011-05-25 13:46:49-0400 [-] WARNING: change source is using deprecated
addChange parameter 'who'
2011-05-25 13:46:49-0400 [-] added change Change(who=u'zwest',
files=[…redacted…], comments=u'…redacted…', revision=u'5441',
when=1306345609, category=None, project=u'icephone',
repository=u'…redacted/icephone') to database
2011-05-25 13:46:49-0400 [-] WARNING: change source is using deprecated
addChange parameter 'who'
2011-05-25 13:46:49-0400 [-] added change Change(who=u'zwest',
files=[…redacted…], comments=u'…redacted…', revision=u'5442',
when=1306345609, category=None, project=u'icephone',
repository=u'…redacted/icephone') to database
2011-05-25 13:46:49-0400 [-] SVNPoller finished polling None
}}}
From the master, at build time:
{{{
2011-05-26 07:00:50-0400 [-] ShellCommand.startCommand(cmd=<RemoteCommand
'svn' at 4331438024>)
2011-05-26 07:00:50-0400 [-] cmd.args = {'username': '…redacted…',
'password': '…redacted…', 'workdir': 'build', 'patch': None, 'retry':
None, 'mode': 'update', 'timeout': 1200, 'svnurl':
u'…redacted/icephone/branches/icephone-1.10', 'always_purge': None,
'revision': u'5437'}
2011-05-26 07:00:50-0400 [-] <RemoteCommand 'svn' at 4331438024>:
RemoteCommand.run [75]
2011-05-26 07:00:50-0400 [-] LoggedRemoteCommand.start
2011-05-26 07:00:51-0400 [-] sending ping
2011-05-26 07:00:51-0400 [Broker,0,127.0.0.1] ping finished: success
2011-05-26 07:01:01-0400 [Broker,0,127.0.0.1] <RemoteCommand 'svn' at
4331438024> rc=0
2011-05-26 07:01:01-0400 [-] closing log <buildbot.status.logfile.LogFile
instance at 0x10421e950>
2011-05-26 07:01:01-0400 [-] releaseLocks(<buildbot.steps.source.SVN
instance at 0x1038a9830>): []
2011-05-26 07:01:01-0400 [-] step 'svn' complete: success
…build steps redacted…
2011-05-26 07:53:11-0400 [-] <Build icephone-stable-nightly>: build
finished
2011-05-26 07:53:11-0400 [-] setting expectations for next time
2011-05-26 07:53:11-0400 [-] new expectations: 3227.62330431 seconds
}}}
== Changes in build ==
From the !WebStatus output, these are the changes in order. The final one
(!#31) is the revision it chose to build (!r5437):
=== Change !#32 ===
{{{
Changed by zwest
Changed at Wed 25 May 2011 11:50:50
Repository …redacted/icephone
Project icephone
Branch branches/icephone-1.10
Revision 5438
Comments
…redacted…
Changed files
…redacted
}}}
=== Change !#35 ===
{{{
Changed by zwest
Changed at Wed 25 May 2011 13:46:49
Repository …redacted/icephone
Project icephone
Branch branches/icephone-1.10
Revision 5441
Comments
…redacted…
Changed files
…redacted…
}}}
=== Change !#36 ===
{{{
Changed by zwest
Changed at Wed 25 May 2011 13:46:49
Repository …redacted/icephone
Project icephone
Branch branches/icephone-1.10
Revision 5442
Comments
…redacted…
Changed files
…redacted…
}}}
=== Change !#31 ===
{{{
Changed by zwest
Changed at Wed 25 May 2011 11:50:50
Repository …redacted/icephone
Project icephone
Branch branches/icephone-1.10
Revision 5437
Comments
…redacted…
Changed files
…redacted…
}}}
== Build Data ==
||Name||Value||Source||
||branch||branches/icephone-1.10||Build||
||buildername||icephone-stable-nightly||Builder||
||buildnumber||5||Build||
||got_revision||5437||Source||
||project||icephone||Build||
||repository||…redacted/icephone||Build||
||revision||5437||Build||
||scheduler||icephone-stable-nightly||Scheduler||
||slavename||QAMacbookPro||BuildSlave||
||warnings-count||34656||WarningCountingShellCommand||
||workdir||/Users/buildbot/bb/slave/icephone-stable-nightly||slave||
(How awesome is that warning count?)
== Notes ==
I've stashed away the debug log in case you need more information. Just
want to strip away any information that needs redacting, so let me know if
you need more.
--
Ticket URL: <http://trac.buildbot.net/ticket/1971>
Buildbot <http://buildbot.net/>
Buildbot: build/test automation
More information about the Commits
mailing list