Ticket #939 (closed defect: fixed)

Opened 19 months ago

Last modified 18 months ago

scheduler_changes accumulates data for Nightly schedulers when onlyIfChanged is False

Reported by: catlee Owned by: catlee
Priority: minor Milestone: 0.8.2
Version: 0.8.1 Keywords:
Cc:

Description

Changes are inserted into the scheduler_changes table for processing via classify_changes, but are only retired if onlyIfChanged is True.

If onlyIfChanged is False, the rows will stay around forever. We've got 3.4 million rows in this table after running for a few months.

Fix should be simple, have the Nightly scheduler (and other timed schedulers?) avoid calling classify_changes if onlyIfChanged is False, or have it clear out any accumulated changes when it starts a build.

Change History

comment:1 Changed 19 months ago by dustin

Do the calls to classify_changes and retire_changes need to be balanced?

comment:2 Changed 19 months ago by catlee

In that for every classify_changes call you need exactly one retire_changes call? No, I don't think so.

Having slept on this, I don't think the Nightly scheduler should be calling classify_changes unless it knows it needs them. It should still retire any changes associated with it when it runs a build.

comment:3 Changed 18 months ago by catlee

  • Owner set to catlee
  • Status changed from new to assigned

comment:4 Changed 18 months ago by catlee

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

Fixed by  http://github.com/buildbot/buildbot/commit/91c884e5faee567e2dd66b65c40736e69b5c8657

Nightly no longer creates entries in scheduler_changes if onlyIfChanged is False.

It will also retire any existing entries when it runs.

Note: See TracTickets for help on using tickets.