Bugzilla:FAQ: Difference between revisions

→‎Do users have to have any particular type of email application?: Email is no longer necessarily plaintext. credit to Zangune on irc
(→‎For Users: Update this section to be current and remove questions that are no longer relevant)
(→‎Do users have to have any particular type of email application?: Email is no longer necessarily plaintext. credit to Zangune on irc)
 
(21 intermediate revisions by 9 users not shown)
Line 1: Line 1:
This is a list of the most-frequently-asked questions about Bugzilla.
If you edit this page, please only add questions that are '''frequently asked'''. Questions that are less-commonly-asked should just get their own Wiki page.
=General Questions=
=General Questions=


Line 29: Line 33:
We think that compared to other bug-tracking systems, 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, greater flexibility, and superior ease-of-use under long-term usage.
We think that compared to other bug-tracking systems, 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, greater flexibility, and superior ease-of-use under long-term usage.


==Which versions support MySQL, PostgreSQL and Oracle? What about Sybase/Msql/MSSQL?==
==Which versions support MySQL, PostgreSQL, Oracle and SQLite? What about Sybase/Msql/MSSQL?==


* '''MySQL''': All Bugzilla versions support MySQL.
Bugzilla 3.2 and above support MySQL, PostgreSQL and Oracle. Since Bugzilla 4.2, SQLite is also supported, but its support remains experimental. Support for MS-SQL is currently under way for a future version of Bugzilla.
* '''PostgreSQL''': Bugzilla 2.22 and above contain complete, stable support for PostgreSQL.
* '''Oracle''': Bugzilla 3.2 and above have experimental support for Oracle.
* '''MS-SQL''': MS-SQL support is currently underway for Bugzilla 3.8.


Sybase support is no longer being worked on, and most likely will never happen, as Sybase lacks many features Bugzilla needs.
Sybase support is no longer being worked on, and most likely will never happen, as Sybase lacks many features Bugzilla needs.
Line 49: Line 50:
to something else:
to something else:


   perl -pi -e 's@#\!/usr/bin/perl@#\!/usr/local/bin/perl@' *cgi *pl contrib/*pl
   perl -pi -e 's@#\!/usr/bin/perl@#\!/usr/local/bin/perl@' *cgi *pl contrib/*pl extensions/*pl


If your perl path is something else again,
If your perl path is something else again,
Line 96: Line 97:
==Do users have to have any particular type of email application?==
==Do users have to have any particular type of email application?==


No. Bugzilla email is sent in plain text, the most compatible mail format on the planet.
No. Bugzilla can send email in plain text, the most compatible mail format on the planet. HTML email is available for people who want it formatted in a more readable fashion. The site admin can choose which format is default, but each user can change it from the default also.


==Does Bugzilla allow data to be imported and exported? (Say, from/to Word or Excel.) ==
==Does Bugzilla allow data to be imported and exported? (Say, from/to Word or Excel.) ==
Line 113: Line 114:
You should use the commands included with your database software to run the backups of your Bugzilla data.
You should use the commands included with your database software to run the backups of your Bugzilla data.
You can find strategies for dealing with backup considerations at
You can find strategies for dealing with backup considerations at
http://www.mysql.com/doc/B/a/Backup.html for MySQL and at
https://dev.mysql.com/doc/mysql-enterprise-backup/en/mysqlbackup.tasks.html for MySQL and at
http://www.postgresql.org/docs/8.0/static/backup.html for PostgreSQL.
http://www.postgresql.org/docs/8.0/static/backup.html for PostgreSQL.


Line 139: Line 140:


=Administrative Questions=
=Administrative Questions=
==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?==
==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.
Bugzilla does not lock records. It provides "mid-air collision" detection, which means that it warns a user when a commit is about to conflict with commits recently made by another user, and offers the second user a choice of options to deal with the conflict.
It provides mid-air collision detection --
which means that it warns a user when a commit is about to conflict
with commits recently made by another user,
and offers the second user a choice of options to deal with the conflict.


==Can users be on the system while a backup is in progress?==
==Can users be on the system while a backup is in progress?==
Yes. You should use the commands included with your database software to run the backups of your Bugzilla data. You can find strategies for dealing with backup considerations at http://www.mysql.com/doc/B/a/Backup.html for MySQL and at http://www.postgresql.org/docs/8.0/static/backup.html for PostgreSQL.
Yes. You should use the commands included with your database software to run the backups of your Bugzilla data. You can find strategies for dealing with backup considerations at http://www.mysql.com/doc/B/a/Backup.html for MySQL and at http://www.postgresql.org/docs/8.0/static/backup.html for PostgreSQL.
==Can I restrict a user's ability to edit certain bug fields?==
Users can only edit bugs if they are the Assignee, the QA Contact, or are in the '''editbugs''' group. (Certain fields can also be edited by the Reporter. Also, all users can ''always'' comment and CC themselves on bugs.) However, note that by default, '''all users are in the editbugs group'''. If you want to change this default, go to Administration -> Groups, choose "editbugs" and clear the "userregexp" field. Then you can use Administration -> Users to explicitly add back certain users into the "editbugs" group, if you want them to be able to edit every field on every bug in the system. (Also, you can use Administration -> Products -> (select product) -> Group Controls to give groups of users "editbugs" for specific products.)
If you want any finer-grained control than that, it requires code changes. You have to edit the <code>check_can_change_field</code> subroutine in the file <tt>Bugzilla/Bug.pm</tt>. The file has many comments to help guide your edits.


==How do I make it so that bugs can have an UNCONFIRMED status?==
==How do I make it so that bugs can have an UNCONFIRMED status?==
Line 161: Line 164:


See [[Bugzilla:Move Installation]].
See [[Bugzilla:Move Installation]].
== I restricted a product to be visible to more than one group, and now only users who are members of all of those groups can see it.  How do I make it visible to someone who's a member of any of those groups (but not all of them)? ==
Bugzilla treats all of the group restrictions on a product as an AND comparison.  That is, if you put group controls for more than one group on the same product, then users must be a member of ALL of those groups to be able to perform the restricted action.
If you want OR groups (a member of any of the groups can do it), all is not lost.  The way to do this is to create two different sets of groups.
The first set of groups defines groups of people.  These groups are not used for group controls on products.  In fact, you can leave the "use for bugs" setting turned off on them.  These are the groups you will make users be members of.  Groupings such as "engineering" or "QA" or "security-team" or "marketing" or similar.
The second set of groups has no users in its membership.  You use these groups to define things you want to use group restrictions on, and these will be the groups that you set up in the Group Controls in the product editor.  For example, if you have a product (or a set of 3 or 4 products) that you wish to secure to the same set of people, create a group for it.  These groups will need to have "use for bugs" checkmarked.  Then in the "Groups That Are a Member of This Group" section, add the people groups you created above that you want to be able to access things secured with this group.


=Email=
=Email=
Line 178: Line 191:
==Can Bugzilla run on Windows? How?==
==Can Bugzilla run on Windows? How?==


Yes, Bugzilla can run on Windows. See the [[Bugzilla:Win32Install]] page for information about how to install and configure Bugzilla on Windows.
Yes, Bugzilla can run on Windows. See the [[Bugzilla:Win32Install]] page for information about how to install and configure Bugzilla on 32-bit Windows. See the [[Bugzilla:WindowsServer2008Install]] page for information about how to install on configure Bugzilla on Windows Server 2008 64-bit.


=For Users=
=For Users=
Line 200: Line 213:
==How do I search for public bugs (bugs that aren't restricted to a group)?==
==How do I search for public bugs (bugs that aren't restricted to a group)?==


You can search for bugs without a group by using Boolean Charts at the bottom of the Advanced Search page: "Group" + "does not match regular expression" + "."
You can search for bugs without a group by using Boolean Charts at the bottom of the Advanced Search page: "Not (negate this whole chart)" + "Group" + "matches regular expression" + "."


=Hacking on Bugzilla=
=Troubleshooting=


==What kind of style should I use for templatization?==
==Bugzilla can't connect to the database==
Gerv and Myk suggest a 2-space indent,
with embedded code sections on their own line,
in line with outer tags. Like this:
<pre>


<fred>
Here's some things to check:
[% IF foo %]
  <bar>
  [% FOREACH x = barney %]
    <tr>
      <td>
        [% x %]
      </td>
    <tr>
  [% END %]
[% END %]
</fred>
</pre>


Myk also recommends you turn on PRE_CHOMP in the template initialization
# Make sure that the <tt>$db_user</tt> and <tt>$db_pass</tt> settings in the <tt>localconfig</tt> file are correct.
to prevent bloating of HTML with unnecessary whitespace.
# If you're using MySQL, make sure that DBD::mysql was compiled against the version of MySQL that you're using. For example, a DBD::mysql compiled against MySQL 4.0 won't work with MySQL 5.1. In versions of Bugzilla 3.2 or greater, you can re-install DBD::mysql by doing: <pre>./install-module.pl DBD::mysql</pre> in your Bugzilla directory.


Please note that many have differing opinions on this subject,
==I tried to move my Bugzilla from one machine to another, and now there's something wrong with the data.==
and the existing templates in Bugzilla espouse both this and a 4-space style.
Either is acceptable; the above is preferred.


Make sure that you followed the instructions on [[Bugzilla:Move Installation]]. In particular, when you import a database dump, your database has to be '''totally empty''', meaning that it must have no tables in it at all.


==I get the error "MySQL server has gone away"==


== How can I change the default priority to a null value? For instance, have the default priority be "---"  instead of "P2"?==
This usually means that the <tt>max_allowed_packet</tt> setting in your MySQL configuration is too small. It needs to be set larger than the largest piece of data you're trying to insert in to the database. (Usually, this means it has to be larger than your <tt>maxattachmentsize</tt> parameter.) The MySQL configuration is usually in <tt>/etc/my.cnf</tt>.
This is well-documented in
[https://bugzilla.mozilla.org/show_bug.cgi?id=49862 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?==
==I have Apache's mod_security installed, and Bugzilla is not functioning.==
#Enter a bug into bugzilla.mozilla.org for the "[https://bugzilla.mozilla.org/enter_bug.cgi?product=Bugzilla 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 (https://bugzilla.mozilla.org/show_bug.cgi?id=XXXXXX) for discussion in the newsgroup (mozilla.support.bugzilla on the news.mozilla.org news-server). 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 :)


Bugzilla is not compatible with mod_security. You will have to uninstall mod_security or disable it for Bugzilla.


=Troubleshooting=
==My parameters don't update when using editparams.cgi, what am I doing wrong?==
 
Bugzilla's parameters are stored in the <tt>data/params</tt> file.
In order to update parameters, the '''user that your web server runs Bugzilla's scripts as''' needs permission to:


==My parameters don't update when using editparams.cgi, what am I doing wrong?==
Bugzilla's parameters are being stored in the <tt>data/params</tt> file.
So in order to update parameters, the user that your web server runs Bugzilla's scripts as needs permission to
* create, alter and delete files in Bugzilla's <tt>data/</tt> directory
* create, alter and delete files in Bugzilla's <tt>data/</tt> directory
* alter and delete the <tt>params</tt> file in Bugzilla's <tt>data/</tt> directory
* alter and delete the <tt>params</tt> file in Bugzilla's <tt>data/</tt> directory


Known quirks and things to think about:
==Old Charts complain about "Unable to open the chart datafile ./data/mining/-All-"==
* On Linux, check your SELinux settings, which may override common file permission settings.
* It may be that your web server runs Bugzilla's script as a different user than you might think:
** Using Apache, it may be that you have some SuexecUserGroup setting in effect. Check Apache's documentation on mod_suexec.
** Using IIS, there appears to be some similar mechanics, too.
 
==Old charts complain with "Unable to open the chart datafile ./data/mining/-All-"==
Old charts are generated thanks to data being in data/mining/ (new charts store the data in the database directly). For both old and new charts to work, data must first be collected by the collectstats.pl script, which has to be run as root (or as the owner of data/mining/ in case you have a non-root installation). Data is only collected when collectstats.pl is run, so if you want to see stats on a daily basis, you have to run this script every day, e.g. by adding it to your cron jobs.


See http://www.bugzilla.org/docs/tip/html/extraconfig.html for details.
See http://www.bugzilla.org/docs/tip/html/extraconfig.html for information on how to set up the <tt>collectstats.pl</tt> script to enable the Old Charts and New Charts.


==My problem isn't listed here==
==My problem isn't listed here==
There are several additional common problems listed in the [http://www.bugzilla.org/docs/tip/en/html/troubleshooting.html Troubleshooting section] of the Bugzilla Guide.


If all else fails, check out places you can get [http://www.bugzilla.org/support/ support for Bugzilla].
If all else fails, check out places you can get [http://www.bugzilla.org/support/ support for Bugzilla].


[[category:Bugzilla|F]]
[[category:Bugzilla|F]]
Confirmed users, Bureaucrats and Sysops emeriti
674

edits