Opened 8 years ago

Last modified 6 years ago

#994 new enhancement

reconfig by graceful failover

Reported by: dustin Owned by:
Priority: major Milestone: 1.0.+
Version: 0.8.1 Keywords: database reconfig
Cc:

Description

A few alternatives to reconfiguration came up in IRC.

One particularly attractive model is to treat a reconfig as a time to spin up a new member of the master pool, then gracefully disconnect each slave on the "retiring" master when it finishes a build.

This obviously has a lot of prerequisites, but it would be a great model:

  • fully db-based
  • fully-baked master failover support
  • abstracted status so you're not looking at two web statuses during the changeover

Change History (2)

comment:1 Changed 6 years ago by dustin

  • Milestone changed from 0.8.+ to 1.0.+

The new config interface actually does a bit better job with reconfigs, but there are still problems:

  • reloading/pre-initializing Python from the config file (ugh, and we have some fixes)
  • performance / memory consumption -- Buildbot can end up using a lot of memory (and whether this is Buildbot or custom modules is unclear - see the performance tag), and restarting the process is a great way to flush that.

So this is still necessary, but less soon.

comment:2 Changed 6 years ago by dustin

see also #1880

Note: See TracTickets for help on using tickets.