ServerLucidBugZapping
Summary
The Anecdote
When I was a kid, we had one of these things hanging outside, an eerie blue light called a "bug zapper". Some bugs were hopelessly draw to it, would fly into the light, and be electrocuted, leaving a nasty smell of ozone behind.
I see nowadays there's a more proactive approach -- an electrically charged tennis racket, also called a "bug zapper":
For many server packages in Ubuntu, we simply wait around for bugs to be fixed. Sometimes they get fixed upstream. Sometimes someone drives by and drops off a patch. It's like waiting for the bugs to hurl themselves at the blue light.
Release Note
During Beta1 and Beta2, the Ubuntu Server Community triaged and fixed XXX bugs during a concentrated push to solidify several sets of key server packages (foo, bar, baz).
Rationale
Given Lucid's LTS status, we should take a more proactive approach to fixing Ubuntu Server bugs. We should arm a platoon of Ubuntu Server Developers and Community Members with electric rackets, and send them out on timed, coordinated missions, focusing all efforts on a particular package or group of packages for about a week at a time.
== Assumptions ==
Some care needs to be taken around freezes. Also, it would be helpful to get participation from the QA team as well as the community.
History
As an example, several members of the Server Team and Community focused on fixing Eucalyptus bugs (and only Eucalyptus bugs) for a short period. In October 2009, we uploaded the Ubuntu eucalyptus package 10 times, fixing 60 bugs.
Design/Implementation
Schedule
This snippet is lifted from the LucidReleaseSchedule, and indicates all relevant freezes.
Week |
Date (Monday) |
Uploaders |
Packages |
Status |
Notes |
18 |
March 1st |
|
|||
19 |
March 10-11 |
|
|||
20 |
March 15th |
||||
21 |
March 22nd |
UEC: eucalyptus, euca2ools |
|
||
April 2010 |
|||||
22 |
March 28th |
|
|
||
23 |
April 5th |
|
Plan
- Monday - total bug triage
- prioritize all bugs according to a defined formula for that package, generally:
Critical = data loss, corruption, or serious security problem
High = totally prevents the package from functioning, workarounds impractical
Medium = most bugs, non-ideal behavior, perhaps workarounds prevent from being 'high'
Low = other bugs, with workarounds, affecting fewer users
Wishlist = cosmetic, feature requests, nice-to-have's
- confirm/reproduce any bugs in the "new" state
- triage any bugs in the confirmed state, ie, identify the problem, test workarounds or solutions
- expire any bugs that are invalid
- fix-release any bugs that cannot be reproduced on the latest code
- assign yourself (or others) triaged bugs that they can fix
- time permitting, start working on fixes
- prioritize all bugs according to a defined formula for that package, generally:
- Tuesday
- bzr branch the latest lucid code
- work on fixes, pushing to lp:~yourname/thepackage/bugnumber
- build a package in your PPA for testing
- get some else to verify your PPA build
- uploader will roll all fixes into an upload for that day
- Wednesday
- same as Tuesday
- Thursday
- same as Tuesday, rolling toward a "final" release by the end of the day
- Friday
- Comprehensive regression testing
- Generate status report on total uploads, bugs triaged, bugs fixed, participation
- Post to ubuntu-server@ mailing list, ubuntu-server blog
Details
- Communication will take place IRC at #ubuntu-server
- Development will be done in Bazaar/Launchpad
- Builds will be published for testing in PPAs
Unresolved Issues
Discussion
ServerLucidBugZapping (last edited 2010-03-05 14:43:26 by lns-bzn-48f-81-56-218-246)