Self-Introduction: Fergus Sullivan
Fergus Sullivan
fergus at yahoo-inc.com
Wed Aug 29 18:31:33 UTC 2007
== Full name ==
Fergus Sullivan
== Your IRC nick on irc.mozilla.org ==
ferg2k
== City, Country ==
Sunnyvale, California, United States.
== Profession or Student status ==
Engineering Manager
== Company, School, or other affiliation ==
Yahoo
== What do you want to help out with? ==
Scaling for enterprise level use.
UI overhaul
== Historical qualifications ==
Master's degree in medieval archaeology. Although I suspect that's
not what the question is alluding to. That said, it does help when
digging through layers of modifications and additions.
I've been managing our Bugzilla instance for the last 4 years, and
spent much of the last year coding, albeit mostly UI. Other members
of my team are the hard-core sql guys, and ttk jocks.
== Anything else you'd like to say ==
Yahoo has been happily using Bugzilla for the last six years. We now
have a mandate from our top-level management to contribute to the
open source effort.
We are currently using a customized version of 2.22. We serve
Bugzilla on FreeBSD 6, mysql 4.1, perl 5.6. We use a mixture of
MyISAM and InnoDB. We have a dual-master database (we have our own
proxy that can switch as needed) and a VIP handling 3 front-end and
servers and search slaves. We have a second colo for BCP with an
equivalent architecture. We have additional machines as reporting
slaves.
Our database currently stands at about 1.5 million bugs and grows at
about 50k per month. We have 20,000 named accounts (one per
employee, plus many internal mailing lists), of whom about 8,300 are
active in any one month. In terms of active users and new bugs
opened, our load has increased 50% in the last year. We have 2,400
separate products in our DB.
Nobody outside of Yahoo has access to our database. All our
customers are internal.
We test against IE 6, IE 7, Firefox 2, Safari 2 and 3. We currently
also support Opera. We support Mac 10.4, Windows 2000, XP, and
Vista, FreeBSD 4 and 6, RHEL 4 and 5.
In addition to myself, we have two developers and one QA assigned
full time on Bugzilla. We have another two guys working full time on
it at the moment, although they may move to other tasks in a few
months time.
I have an open req for a visual designer to polish up the UI in
Bugzilla, and then in our other internal tools.
The core functionality has mostly met our needs, but we have had to
customize in the following areas.
Speed
- The core SQL within Bugzilla did not scale to meet our needs. We
reached a tipping point at around 800,000 bugs. The main cause was
lock contention within the DB. The causes and solutions would fill
an academic paper. We rewrote search.pm and greatly increased
performance. Some of the changes were trivial. A two line change
improved our "search for bugs where person X is cced" from 45 seconds
to 0.4 seconds. Other changes were vast. The overall effect was
search times have dropped from up to 45 seconds in typical usage to
about six seconds.
Product Management
- With 2,400 different products, the vanilla product chooser does
not scale for us. We have built an entirely different version.
UI
- We have made many minor and a few major changes to the UI. One
interesting one is the use of a JavaScript datatable for client-side
sorting of buglist results. This greatly reduces server load.
- We have unified comments and the bug activity table. Both appear
inline in the show bug page.
- We are making increasing use of the YUI library. These allow our
fancier functions to work on all platforms.
Company-integration
- We have many contact points with other developer tools within
Yahoo. Our Bugzilla interfaces with our CVS repository, with
Perforce and with Subversion.
- We integrate with our employee directory to show pictures of
employees in bugs, and to provide other information.
- We integrate with our build and release system, and with our
change management process.
As you can tell, we take Bugzilla seriously here. I'm looking
forward to contributing to the bugzilla.org effort!
/ferg
--
fergus sullivan | developer tools team | fergus at yahoo-inc.com | o.
408.349.6807 | m. 408.203.FERG
More information about the developers
mailing list