Ticket #1951 (closed enhancement: fixed)

Opened 2 years ago

Last modified 15 months ago

Improve Nightly's next-build-finding algorithm

Reported by: dustin Owned by:
Priority: minor Milestone: 0.8.+
Version: 0.8.3p1 Keywords: performance, simple, sprint
Cc:

Description

Nightly currently iterates through minutes from now until two years from now looking for a matching time. This isn't very efficient! The algorithm is well-tested, so a refactor should be safe.

Change History

comment:1 Changed 18 months ago by dustin

  • Keywords performance, simple added; performance removed

This will take some thought about how best to calculate the next matching time, without long iteration. But the tests are already written, and this doesn't require much knowledge of the rest of Buildbot's internals. Thus I'm tagging it as "simple".

comment:2 Changed 16 months ago by tom.prince

  • Keywords simplem, sprint added; simple removed

comment:3 Changed 16 months ago by tom.prince

  • Keywords simple, added; simplem, removed

comment:4 Changed 15 months ago by Pam Selle

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

More efficient Nightly next build algorithm.

Fixes #1951 Added croniter under MIT license Some edge test cases are skipped

Changeset: b0716221eca3ec685a48771473d6266e0f6ed1c5

comment:5 Changed 15 months ago by Dustin J. Mitchell

Require python-dateutil==1.5, and only import it if using Nightly

Refs #1951.

Changeset: 39d6eb8bcc2d5c2c0f1ec4d3f48115c4382671ec

Note: See TracTickets for help on using tickets.