The Bugzilla FAQ
This FAQ includes questions not covered elsewhere in the Guide.
General Questions
What license is Bugzilla distributed under?
Bugzilla is covered by the Mozilla Public License.
See details at .
How do I get commercial support for Bugzilla?
is a list of people and companies who have asked us to list them
as consultants for Bugzilla.
There are several experienced
Bugzilla hackers on the mailing list/newsgroup who are willing
to make themselves available for generous compensation.
Try sending a message to the mailing list asking for a volunteer.
What major companies or projects are currently using Bugzilla
for bug-tracking?
There are dozens of major companies with public
Bugzilla sites to track bugs in their products. We have a fairly
complete list available on our website at
. If you
have an installation of Bugzilla and would like to be added to the
list, whether it's a public install or not, simply e-mail
Gerv gerv@mozilla.org.
Who maintains Bugzilla?
A
core team,
led by Dave Miller (justdave@bugzilla.org).
How does Bugzilla stack up against other bug-tracking databases?
We can't find any head-to-head comparisons of Bugzilla against
other defect-tracking software. If you know of one, please
get in touch. However, from the author's personal
experience with other bug-trackers, Bugzilla offers
superior performance on commodity hardware, better price
(free!), more developer- friendly features (such as stored
queries, email integration, and platform independence),
improved scalability, open source code, greater
flexibility, and superior ease-of-use.
If you happen to be a commercial bug-tracker vendor, please
step forward with a list of advantages your product has over
Bugzilla. We'd be happy to include it in the "Competitors"
section.
Why doesn't Bugzilla offer this or that feature or compatibility
with this other tracking software?
It may be that the support has not been built yet, or that you
have not yet found it. Bugzilla is making tremendous strides in
usability, customizability, scalability, and user interface. It
is widely considered the most complete and popular open-source
bug-tracking software in existence.
That doesn't mean it can't use improvement!
You can help the project along by either hacking a patch yourself
that supports the functionality you require, or else submitting a
"Request for Enhancement" (RFE) using the bug submission interface
at bugzilla.mozilla.org.
Why MySQL? I'm interested in seeing Bugzilla run on
Oracle/Sybase/Msql/PostgreSQL/MSSQL.
MySQL was originally chosen because it is free, easy to install,
and was available for the hardware Netscape intended to run it on.
There is currently work in progress to make Bugzilla work on
PostgreSQL and Sybase in the default distribution. You can track
the progress of these initiatives in bug 98304
and bug 173130
respectively.
Once both of these are done, adding support for additional
database servers should be trivial.
What is /usr/bonsaitools/bin/perl?
Bugzilla used to have the path to perl on the shebang line set to
/usr/bonsaitools/bin/perl because when
Terry first started writing the code for mozilla.org he needed a
version of Perl and other tools that were completely under his
control. This location was abandoned for the 2.18 release in favor
of the more sensible /usr/bin/perl. If you
installed an older verion of Bugzilla and created the symlink we
suggested, you can remove it now (provided that you don't have
anything else, such as Bonsai, using it and you don't intend to
reinstall an older version of Bugzilla).
My perl is not located at /usr/bin/perl, is
there an easy way to change it everywhere it needs to be changed?
Yes, the following bit of perl magic will change all the shebang
lines. Be sure to change /usr/local/bin/perl
to your path to the perl binary.
perl -pi -e 's@#\!/usr/bin/perl@#\!/usr/local/bin/perl@' *cgi *pl
Is there an easy way to change the Bugzilla cookie name?
At present, no.
Does bugzilla run under mod_perl?
At present, no. This is being worked on.
Managerial Questions
Is Bugzilla web-based, or do you have to have specific software or
a specific operating system on your machine?
It is web and e-mail based.
Does Bugzilla allow us to define our own priorities and levels? Do we
have complete freedom to change the labels of fields and format of them, and
the choice of acceptable values?
Yes. However, modifying some fields, notably those related to bug
progression states, also require adjusting the program logic to
compensate for the change.
There is no GUI for adding fields to Bugzilla at this
time. You can follow development of this feature in
bug 91037
Does Bugzilla provide any reporting features, metrics, graphs, etc? You
know, the type of stuff that management likes to see. :)
Yes. Look at
for samples of what Bugzilla can do in reporting and graphing.
If you can not get the reports you want from the included reporting
scripts, it is possible to hook up a professional reporting package
such as Crystal Reports using ODBC. If you choose to do this,
beware that giving direct access to the database does contain some
security implications. Even if you give read-only access to the
bugs database it will bypass the secure bugs features of Bugzilla.
Is there email notification and if so, what do you see when you get an
email?
Email notification is user-configurable. By default, the bug id and
summary of the bug report accompany each email notification, along with
a list of the changes made.
Do users have to have any particular
type of email application?
Bugzilla email is sent in plain text, the most compatible mail format
on the planet.
If you decide to use the bugzilla_email integration features
to allow Bugzilla to record responses to mail with the associated bug,
you may need to caution your users to set their mailer to "respond
to messages in the format in which they were sent". For security reasons
Bugzilla ignores HTML tags in comments, and if a user sends HTML-based
email into Bugzilla the resulting comment looks downright awful.
Does Bugzilla allow data to be imported and exported? If I had outsiders
write up a bug report using a MS Word bug template, could that template be
imported into "matching" fields? If I wanted to take the results of a query
and export that data to MS Excel, could I do that?
Bugzilla can output buglists as HTML (the default), CSV or RDF.
The link for CSV can be found at the bottom of the buglist in HTML
format. This CSV format can easily be imported into MS Excel or
other spreadsheet applications.
To use the RDF format of the buglist it is necessary to append a
&ctype=rdf to the URL. RDF
is meant to be machine readable and thus it is assumed that the
URL would be generated programatically so there is no user visible
link to this format.
Currently the only script included with Bugzilla that can import
data is importxml.pl which is intended to be
used for importing the data generated by the XML ctype of
show_bug.cgi in association with bug moving.
Any other use is left as an exercise for the user.
There are also scripts included in the contrib/
directory for using e-mail to import information into Bugzilla,
but these scripts are not currently supported and included for
educational purposes.
Has anyone converted Bugzilla to another language to be used in other
countries? Is it localizable?
Yes. For more information including available translated templates,
see .
The admin interfaces are still not included in these translated
templates and is therefore still English only. Also, there may be
issues with the charset not being declared. See bug 126226
for more information.
Can a user create and save reports? Can they do this in Word format?
Excel format?
Yes. No. Yes (using the CSV format).
Does Bugzilla provide record locking when there is simultaneous access
to the same bug? Does the second person get a notice that the bug is in use
or how are they notified?
Bugzilla does not lock records. It provides mid-air collision detection,
and offers the offending user a choice of options to deal with the conflict.
Are there any backup features provided?
MySQL, the database back-end for Bugzilla, allows hot-backup of data.
You can find strategies for dealing with backup considerations
at .
Can users be on the system while a backup is in progress?
Yes. However, commits to the database must wait
until the tables are unlocked. Bugzilla databases are typically
very small, and backups routinely take less than a minute.
How can I update the code and the database using CVS?
Make a backup of both your Bugzilla directory and the
database. For the Bugzilla directory this is as easy as
doing cp -rp bugzilla bugzilla.bak.
For the database, there's a number of options - see the
MySQL docs and pick the one that fits you best (the easiest
is to just make a physical copy of the database on the disk,
but you have to have the database server shut down to do
that without risking dataloss).
Make the Bugzilla directory your current directory.
Use cvs -q update -AdP if you want to
update to the tip or
cvs -q update -dP -rTAGNAME
if you want a specific version (in that case you'll have to
replace TAGNAME with a CVS tag name such as BUGZILLA-2_16_5).
If you've made no local changes, this should be very clean.
If you have made local changes, then watch the cvs output
for C results. If you get any lines that start with a C
it means there were conflicts between your local changes
and what's in CVS. You'll need to fix those manually before
continuing.
After resolving any conflicts that the cvs update operation
generated, running ./checksetup.pl will
take care of updating the database for you as well as any
other changes required for the new version to operate.
Once you run checksetup.pl, the only way to go back is
to restore the database backups. You can't "downgrade"
the system cleanly under most circumstances.
What type of human resources are needed to be on staff to install and
maintain Bugzilla? Specifically, what type of skills does the person need to
have? I need to find out if we were to go with Bugzilla, what types of
individuals would we need to hire and how much would that cost vs buying an
"out-of-the-box" solution?
If Bugzilla is set up correctly from the start, continuing maintenance
needs are minimal and can be done easily using the web interface.
Commercial Bug-tracking software typically costs somewhere upwards
of $20,000 or more for 5-10 floating licenses. Bugzilla consultation
is available from skilled members of the newsgroup. Simple questions
are answered there and then.
What time frame are we looking at if we decide to hire people to install
and maintain the Bugzilla? Is this something that takes hours or weeks to
install and a couple of hours per week to maintain and customize or is this
a multi-week install process, plus a full time job for 1 person, 2 people,
etc?
It all depends on your level of commitment. Someone with much Bugzilla
experience can get you up and running in less than a day, and
your Bugzilla install can run untended for years. If your
Bugzilla strategy is critical to your business workflow, hire somebody
with reasonable UNIX or Perl skills to handle your process management and
bug-tracking maintenance & customization.
Is there any licensing fee or other fees for using Bugzilla? Any
out-of-pocket cost other than the bodies needed as identified above?
No. MySQL asks, if you find their product valuable, that you purchase
a support contract from them that suits your needs.
Bugzilla Security
How do I completely disable MySQL security if it's giving me problems
(I've followed the instructions in the installation section of this guide)?
Run MySQL like this: "mysqld --skip-grant-tables". Please remember this
makes MySQL as secure as taping a $100 to the floor of a football stadium
bathroom for safekeeping.This can't be stressed enough. Doing this is a bad idea.
Please consult of this guide and
the MySQL documentation for better solutions.
Are there any security problems with Bugzilla?
The Bugzilla code has undergone a reasonably complete security audit,
and user-facing CGIs run under Perl's taint mode. However,
it is recommended that you closely examine permissions on your Bugzilla
installation, and follow the recommended security guidelines found
in The Bugzilla Guide.
Bugzilla Email
I have a user who doesn't want to receive any more email from Bugzilla.
How do I stop it entirely for this user?
The user should be able to set
this in user email preferences (uncheck all boxes) or you can add
their email address to the data/nomail file.
I'm evaluating/testing Bugzilla, and don't want it to send email to
anyone but me. How do I do it?
Edit the "newchangedmail" Param. Replace "To:" with "X-Real-To:",
replace "Cc:" with "X-Real-CC:", and add a "To: <youremailaddress>".
I want whineatnews.pl to whine at something other than new and
reopened bugs. How do I do it?
Try Klaas Freitag's excellent patch for "whineatassigned"
functionality. You can find it in bug 6679. This
patch is against an older version of Bugzilla, so you must apply
the diffs manually.
How do I set up the email interface to submit/change bugs via email?
You can find an updated README.mailif file in the contrib/ directory
of your Bugzilla distribution that walks you through the setup.
Email takes FOREVER to reach me from Bugzilla -- it's extremely slow.
What gives?
If you are using sendmail, try enabling
in editparams.cgi.
If you are using an alternate MTA,
make sure the options given in Bugzilla/BugMail.pm
and any other place where sendmail is called from
are correct for your MTA. You should also ensure that the
param is set to on.
How come email from Bugzilla changes never reaches me?
Double-check that you have not turned off email in your user preferences.
Confirm that Bugzilla is able to send email by visiting the "Log In"
link of your Bugzilla installation and clicking the "Email me a password"
button after entering your email address.
If you never receive mail from Bugzilla, chances are you do not have
sendmail in "/usr/lib/sendmail". Ensure sendmail lives in, or is symlinked
to, "/usr/lib/sendmail".
Bugzilla Database
I've heard Bugzilla can be used with Oracle?
Red Hat's old version of Bugzilla (based on 2.8) worked on Oracle,
but it is now so old as to be obsolete, and is totally unsupported.
Red Hat's newer version (based on 2.17.1 and soon to be merged into
the main distribution) runs on PostgreSQL. At this time we know of
no recent ports of Bugzilla to Oracle; to be honest, Bugzilla
doesn't need what Oracle offers.
I think my database might be corrupted, or contain invalid entries. What
do I do?
Run the sanity check utility
(sanitycheck.cgi) from your web browser to see!
If it finishes without errors, you're
probably OK. If it doesn't come back
OK (i.e. any red letters), there are certain things
Bugzilla can recover from and certain things it can't. If
it can't auto-recover, I hope you're familiar with
mysqladmin commands or have installed another way to
manage your database. Sanity Check, although it is a good
basic check on your database integrity, by no means is a
substitute for competent database administration and
avoiding deletion of data. It is not exhaustive, and was
created to do a basic check for the most common problems
in Bugzilla databases.
I want to manually edit some entries in my database. How?
There is no facility in Bugzilla itself to do this. It's also generally
not a smart thing to do if you don't know exactly what you're doing.
However, if you understand SQL you can use the mysql
command line utility to manually insert, delete and modify table
information. There are also more intuitive GUI clients available.
Personal favorites of the Bugzilla team are phpMyAdmin and MySQL Control
Center.
I think I've set up MySQL permissions correctly, but Bugzilla still can't
connect.
Try running MySQL from its binary: "mysqld --skip-grant-tables". This
will allow you to completely rule out grant tables as the cause of your
frustration. If this Bugzilla is able to connect at this point then
you need to check that you have granted proper permission to the user
password combo defined in localconfig.
Running MySQL with this command line option is very insecure and
should only be done when not connected to the external network
as a troubleshooting step.
How do I synchronize bug information among multiple different Bugzilla
databases?
Well, you can synchronize or you can move bugs. Synchronization will
only work one way -- you can create a read-only copy of the database
at one site, and have it regularly updated at intervals from the main
database.
MySQL has some synchronization features builtin to the latest releases.
It would be great if someone looked into the possibilities there
and provided a report to the newsgroup on how to effectively
synchronize two Bugzilla installations.
If you simply need to transfer bugs from one Bugzilla to another,
checkout the "move.pl" script in the Bugzilla distribution.
Bugzilla and Win32
What is the easiest way to run Bugzilla on Win32 (Win98+/NT/2K)?
Remove Windows. Install Linux. Install Bugzilla.
The boss will never know the difference.
Is there a "Bundle::Bugzilla" equivalent for Win32?
Not currently. Bundle::Bugzilla enormously simplifies Bugzilla
installation on UNIX systems. If someone can volunteer to
create a suitable PPM bundle for Win32, it would be appreciated.
CGI's are failing with a "something.cgi is not a valid Windows NT
application" error. Why?
Depending on what Web server you are using, you will have to configure
the Web server to treat *.cgi files as CGI scripts. In IIS, you do this by
adding *.cgi to the App Mappings with the <path>\perl.exe %s %s as the
executable.
Microsoft has some advice on this matter, as well:
"Set application mappings. In the ISM, map the extension for the script
file(s) to the executable for the script interpreter. For example, you might
map the extension .py to Python.exe, the executable for the Python script
interpreter. Note For the ActiveState Perl script interpreter, the extension
.pl is associated with PerlIS.dll by default. If you want to change the
association of .pl to perl.exe, you need to change the application mapping.
In the mapping, you must add two percent (%) characters to the end of the
pathname for perl.exe, as shown in this example: c:\perl\bin\perl.exe %s %s"
I'm having trouble with the perl modules for NT not being able to talk to
to the database.
Your modules may be outdated or inaccurate. Try:
Hitting http://www.activestate.com/ActivePerl
Download ActivePerl
Go to your prompt
Type 'ppm'
PPM>install DBI DBD-mysql GD
I reckon TimeDate and Data::Dumper come with the activeperl. You can check
the ActiveState site for packages for installation through PPM.
.
Bugzilla Usage
How do I change my user name (email address) in Bugzilla?
New in 2.16 - go to the Account section of the Preferences. You will
be emailed at both addresses for confirmation.
The query page is very confusing. Isn't there a simpler way to query?
The interface was simplified by a UI designer for 2.16. Further
suggestions for improvement are welcome, but we won't sacrifice power for
simplicity.
I'm confused by the behavior of the "accept" button in the Show Bug form.
Why doesn't it assign the bug to me when I accept it?
The current behavior is acceptable to bugzilla.mozilla.org and most
users. You have your choice of patches to change this behavior, however.
Add a "and accept bug" radio button
"Accept" button automatically assigns to you
Note that these patches are somewhat dated. You will need to apply
them manually.
I can't upload anything into the database via the "Create Attachment"
link. What am I doing wrong?
The most likely cause is a very old browser or a browser that is
incompatible with file upload via POST. Download the latest Netscape,
Microsoft, or Mozilla browser to handle uploads correctly.
How do I change a keyword in Bugzilla, once some bugs are using it?
In the Bugzilla administrator UI, edit the keyword and it will let you
replace the old keyword name with a new one. This will cause a problem
with the keyword cache. Run sanitycheck.cgi to fix it.
Why can't I close bugs from the "Change Several Bugs at Once" page?
The logic flow currently used is RESOLVED, then VERIFIED, then CLOSED.
You can mass-CLOSE bugs from the change several
bugs at once page. but, every bug listed on the
page has to be in VERIFIED state before the control to do it will show
up on the form. You can also mass-VERIFY, but every bug listed has to be
RESOLVED in order for the control to show up on the form. The logic
behind this is that if you pick one of the bugs that's not VERIFIED and
try to CLOSE it, the bug change will fail miserably (thus killing any
changes in the list after it while doing the bulk change) so it doesn't
even give you the choice.
Bugzilla Hacking
What kind of style should I use for templatization?
Gerv and Myk suggest a 2-space indent, with embedded code sections on
their own line, in line with outer tags. Like this:
[% IF foo %]
[% FOREACH x = barney %]
[% x %]
[% END %]
[% END %]
]]>
Myk also recommends you turn on PRE_CHOMP in the template
initialization to prevent bloating of HTML with unnecessary whitespace.
Please note that many have differing opinions on this subject,
and the existing templates in Bugzilla espouse both this and a 4-space
style. Either is acceptable; the above is preferred.
What bugs are in Bugzilla right now?
Try
this link to view current bugs or requests for
enhancement for Bugzilla.
You can view bugs marked for &bz-nextver; release
here.
This list includes bugs for the &bz-nextver; release that have already
been fixed and checked into CVS. Please consult the
Bugzilla Project Page for details on how to
check current sources out of CVS so you can have these
bug fixes early!
How can I change the default priority to a null value? For instance, have the default
priority be "---" instead of "P2"?
This is well-documented in
bug 49862. Ultimately, it's as easy as adding the "---" priority field to your
localconfig file in the appropriate area, re-running checksetup.pl, and then changing the
default priority in your browser using "editparams.cgi".
What's the best way to submit patches? What guidelines should I follow?
Enter a bug into bugzilla.mozilla.org for the Bugzilla
product.
Upload your patch as a unified diff (having used "diff -u" against
the current sources checked out of CVS),
or new source file by clicking
"Create a new attachment" link on the bug page you've just created, and
include any descriptions of database changes you may make, into the bug
ID you submitted in step #1. Be sure and click the "Patch" checkbox
to indicate the text you are sending is a patch!
Announce your patch and the associated URL
(http://bugzilla.mozilla.org/show_bug.cgi?id=XXXXXX) for discussion in
the newsgroup (netscape.public.mozilla.webtools). You'll get a really
good, fairly immediate reaction to the implications of your patch,
which will also give us an idea how well-received the change would
be.
If it passes muster with minimal modification, the person to whom
the bug is assigned in Bugzilla is responsible for seeing the patch
is checked into CVS.
Bask in the glory of the fact that you helped write the most successful
open-source bug-tracking software on the planet :)