Tuesday, January 26, 2010

BugZilla Interview Questions

1. What is Bugzilla?
Bugzilla is Defect Tracking Systems allow individual or groups of developers to keep track of outstanding bugs in their product effectively. Bugzilla is a open-source bug-tracking software.
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.

2. What is Bugzilla's features?
• integrated, product-based granular security schema
• inter-bug dependencies and dependency graphing
• advanced reporting capabilities •
• a robust, stable RDBMS back-end
• extensive configurability •
• a very well-understood and well-thought-out natural bug resolution protocol
• email, XML, console, and HTTP APIs •
• available integration with automated software configuration management systems, including Perforce and CVS (through the Bugzilla email interface and checkin/checkout scripts)

3. why should you use Bugzilla?
Bugzilla can dramatically increase the productivity and accountability of individual employees by providing a documented workflow and positive feedback for good performance.

4. Bugzilla Components
• Administration of a bugzilla:
(editcomponents.cgi, editgroups.cgi, editkeywords.cgi, editparams.cgi, editproducts.cgi, editusers.cgi, editversions.cgi, and sanitycheck.cgi.)
• Bugzilla-General: (Creating/Changing Bugs, Creating, changing, and viewing bugs. enter_bug.cgi, post_bug.cgi, show_bug.cgi and process_bug.cgi.)
• The bugzilla documentation
• Email, Anything to do with email sent by Bugzilla. processmail
• The installation process of Bugzilla
• Query/Buglist, Anything to do with searching for bugs and viewing the buglists. query.cgi and buglist.cgi
• Reporting/Charting, Getting reports from Bugzilla. reports.cgi and duplicates.cgi
• User Accounts, Anything about managing a user account from the user's perspective. userprefs.cgi, saved queries, creating accounts, changing passwords, logging in, etc.
• User Interface, General issues having to do with the user interface cosmetics (not functionality) including cosmetic issues, HTML templates, etc.

5. How to create a Bugzilla Account?
1. Enter your "E-mail address" and "Real Name" (or whatever name you want to call yourself) in the spaces provided, then select the "Create Account" button.
2. Within moments, you should receive an email to the address you provided above, which contains your login name (generally the same as the email address), and a password you can use to access your account. This password is randomly generated, and should be changed at your nearest opportunity (we'll go into how to do it later).
3. Click the "Log In" link in the yellow area at the bottom of the page in your browser, then enter your "E-mail address" and "Password" you just received into the spaces provided, and select "Login".

6. How do I change my user name in Bugzilla??
You can't. However, the administrative account can, by simply opening your user account in editusers.cgi and changing the login name.

7. What is The Bugzilla Query Page?
The Bugzilla Query Page is the heart and soul of the Bugzilla user experience. It is the master interface where you can find any bug report, comment, or patch currently in the Bugzilla system.

The first thing you need to notice about the Bugzilla Query Page is that nearly every box you see on your screen has a hyperlink nearby, explaining what it is or what it does. Near the upper-left-hand corner of your browser window you should see the word "Status" underlined. Select it.

Here is a example that how to make a few successful queries to find out what there are in the Bugzilla bug-tracking system itself.
1. Ensure you are back on the "Bugzilla Query Page". Do nothing in the boxes marked "Status", "Resolution", "Platform", "OpSys", "Priority", or "Severity". The default query for "Status" is to find all bugs that are NEW, ASSIGNED, or REOPENED, which is what we want. If you don't select anything in the other 5 scrollboxes there, then you are saying that "any of these are OK"; we're not locking ourselves into only finding bugs on the "DEC" Platform, or "Windows 95" OpSys (Operating System).
2. Basically, selecting anything on the query page narrows your search down. Leaving stuff unselected, or text boxes unfilled, broadens your search.
You see the box immediately below the top six boxes that contains an "Email" text box, with the words "matching as", a drop-down selection box, then some checkboxes with "Assigned To" checked by default? This allows you to filter your search down based upon email address. Let's put my email address in there, and see what happens.
Type "yourname@gmail.com" in the top Email text box.
3. Let's narrow the search some more. Scroll down until you find the box with the word "Program" over the top of it. This is where we can narrow our search down to only specific products (software programs or product lines) in our Bugzilla database. Please notice the box is a scrollbox. Using the down arrow on the scrollbox, scroll down until you can see an entry called "Bugzilla". Select this entry.
4. Did you notice that some of the boxes to the right changed when you selected "Bugzilla"? Every Program (or Product) has different Versions, Components, and Target Milestones associated with it. A "Version" is the number of a software program.
5. OK, now let's select the "Bugzilla" component from its scrollbox. 6. Skip down the page a bit -- do you see the "submit query" button? Select it, and let's run this query!
7. Congratulations! You've completed your first Query.

8. What is about the Bug List page?
Change Columns: by selecting this link, you can show all kinds of information in the Bug List
Change several bugs at once: If you have sufficient rights to change all the bugs shown in the Bug List, you can mass-modify them. This is a big time-saver.
Send mail to bug owners: If you have many related bugs, you can request an update from every person who owns the bugs in the Bug List asking them the status.
Edit this query: If you didn't get exactly the results you were looking for, you can return to the Query page through this link and make small revisions to the query you just made so you get more accurate results.

9. How to Write a Useful Bug Report with Bugzilla
Useful bug reports are ones that get bugs fixed. A useful bug report normally has two qualities:
Reproducible. If an engineer can't see it or conclusively prove that it exists, the engineer will probably stamp it WORKSFORME or INVALID, and move on to the next bug. Every relevant detail you can provide helps.
Specific. The quicker the engineer can isolate the issue to a specific problem, the more likely it'll be expediently fixed. If you're crashing on a site, please take the time to isolate what on the page is triggering the crash, and include it as an HTML snippet in the bug report if possible. (Specific bugs have the added bonus of remaining relevant when an engineer actually gets to them; in a rapidly changing web, a bug report of "foo.com crashes my browser" becomes meaningless after the site experiences a half-dozen redesigns and hundreds of content changes.)

1. Go back to http://landfill.tequilarista.org/bugzilla-tip/ in your browser.
2. Select the Enter a new bug report link.
3. Select a product.
4. Now you should be at the "Enter Bug" form. The "reporter" should have been automatically filled out for you (or else Bugzilla prompted you to Log In again -- you did keep the email with your username and password, didn't you?).
5. Select a Component in the scrollbox.
6. Bugzilla should have made reasonable guesses, based upon your browser, for the "Platform" and "OS" drop-down boxes. If those are wrong, change them -- if you're on an SGI box running IRIX, we want to know!
7. Fill in the "Assigned To" box with the email address you provided earlier. This way you don't end up sending copies of your bug to lots of other people, since it's just a test bug.
8. Leave the "CC" text box blank. Fill in the "URL" box with "http://www.mozilla.org".
9. Enter "The Bugzilla Guide" in the Summary text box, and place any comments you have on this tutorial, or the Guide in general, into the Description box.

Voila! Select "Commit" and send in your bug report! Next we'll look at resolving bugs.

10. How to Enter your Useful Bug Report into Bugzilla
From the Bugzilla main page (http://bugzilla.mozilla.org), choose "Enter a new bug".
Select the product that you've found a bug in.
Now, fill out the form. Here's what it all means:
Where did you find the bug? --- which product,which product version,which component, which hardware platform ,which Operating System

How important is the bug? -- Severity

Who will be following up on the bug? -- Which engineer should be responsible for fixing this bug? Who else should receive e-mail updates on changes to this bug?

What else can you tell the engineer about the bug? -- On what URL did you discover this bug? How would you describe the bug, in approximately 60 or fewer characters?

11. How to manage a Bug Reports with Bugzilla
You should have a link to the bug you just created near the top of your page. It should say "Bug XXXX posted", with a link to the right saying "Back to BUG# XXXX". Select this link.
1.Scroll down a bit on the subsequent page, until you see the "Resolve bug, changing resolution to (dropdown box). Normally, you would "Accept bug (change status to ASSIGNED)", fix it, and then resolve. But in this case, we're going to short-circuit the process because this wasn't a real bug. Change the dropdown next to "Resolve Bug" to "INVALID", make sure the radio button is marked next to "Resolve Bug", then click "Commit".
2. Hey! It said it couldn't take the change in a big red box! That's right, you must specify a Comment in order to make this change. Select the "Back" button in your browser, add a Comment, then try Resolving the bug with INVALID status again. This time it should work.

12. Where can I find my user preferences?
Customized User Preferences offer tremendous versatility to your individual Bugzilla experience. Let's plunge into what you can do! The first step is to click the "Edit prefs" link at the footer of each page once you have logged in to Landfill.

13. What about Account Settings page?
On this page, you can change your basic Account Settings, including your password and full name. For security reasons,

14. What about Email Settings page?
Here you can reduce or increase the amount of email sent you from Bugzilla.

15. What about "Watching" Users functionality?
By entering user email names into the "Users to watch" text entry box, delineated by commas, you can watch bugs of other users. This powerful functionality enables seamless transitions as developers change projects, managers wish to get in touch with the issues faced by their direct reports, or users go on vacation.

16. What about Page Footer ?
By default, this page is quite barren. However, go explore the Query Page some more; you will find that you can store numerous queries on the server, so if you regularly run a particular query it is just a drop-down menu away. On this page of Preferences, if you have many stored queries you can elect to have them always one-click away!

17. How does Bugzilla stack up against other bug-tracking databases?
Still can't find any head-to-head comparisons of Bugzilla against other defect-tracking software.

18. Is Bugzilla web-based or do you have to have specific software or specific operating system on your machine?
It is web and e-mail based. You can edit bugs by sending specially formatted email to a properly configured Bugzilla, or control via the web.

19. Does Bugzilla allow the user to track multiple projects?
Absolutely! You can track up to a "soft-limit" of around 64 individual "Products", that can each be composed of as many "Components" as you want. Check the Administration section of the Bugzilla Guide for more information regarding setting up Products and Components.

20. If I am on many projects, and search for all bugs assigned to me, will Bugzilla list them for me and allow me to sort by project, severity etc?
Yes.

21. Does Bugzilla allow attachments (text, screenshots, urls etc)? If yes, are there any that are NOT allowed?
Yes. There are many specific MIME-types that are pre-defined by Bugzilla, but you may specify any arbitrary MIME-type you need when you upload the file. Since all attachments are stored in the database, however, I recommend storing large binary attachments elsewhere in the web server's file system and providing a hyperlink as a comment, or in the provided "URL" field in the bug report.

22. 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.

23. Does Bugzilla provide any reporting features, metrics, graphs, etc?
Yes. Look at http://link.fyicenter.com/view.php?ID=919 for basic reporting facilities.
For more advanced reporting, I recommend hooking up a professional reporting package, such as Crystal Reports, and use ODBC to access the MySQL database. You can do a lot through the Query page of Bugzilla as well, but right now Advanced Reporting is much better accomplished through third-party utilities that can interface with the database directly.
Advanced Reporting is a Bugzilla 3.X proposed feature.

24. The index.html page doesn't show the footer. It's really annoying to have to go to the querypage just to check my "my bugs" link. How do I get a footer on static HTML pages?
It's possible to get the footer on the static index page using Server Side Includes (SSI). The trick to doing this is making sure that your web server is set up to allow SSI and specifically, the #exec directive. You should also rename index.html to index.shtml.
After you've done all that, you can add the following line to index.shtml:
< !--#exec cmd="/usr/bin/perl -e "require 'CGI.pl'; PutFooter();"" -->
This line will be replaced with the actual HTML for the footer when the page is requested, so you should put this line where you want the footer to appear.
Because this method depends on being able to use a #exec directive, and most ISP's will not allow that, there is an alternative method. You could have a small script (such as api.cgi) that basically looks like:
#!/usr/bonsaitools/bin/perl -w
require 'globals.pl';
if ($::FORM{sub} eq 'PutFooter') {
PutFooter();
} else {
die 'api.cgi was incorrectly called';
}
and then put this line in index.shtml.


25. Is there email notification and if so, what do you see when you get an email? Do you see bug number and title or is it only the number?
Email notification is user-configurable. The bug id and Topic of the bug report accompany each email notification, along with a list of the changes made.

26. Can email notification be set up to send to multiple people, some on the To List, CC List, BCC List etc?
Yes.

27. Can email notification be set up to send to multiple people, some on the To List, CC List, BCC List etc?
Yes.

28. If there is email notification, 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.

29. If I just wanted to track certain bugs, as they go through life, can I set it up to alert me via email whenever that bug changes, whether it be owner, status or description etc.?
Yes. Place yourself in the "cc" field of the bug you wish to monitor. Then change your "Notify me of changes to" field in the Email Settings tab of the User Preferences screen in Bugzilla to the "Only those bugs which I am listed on the CC line" option.

30. 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?
Mozilla allows data export through a custom DTD in XML format. It does not, however, export to specific formats other than the XML Mozilla DTD. Importing the data into Excel or any other application is left as an exercise for the reader.
If you create import filters to other applications from Mozilla's XML, please submit your modifications for inclusion in future Bugzilla distributions.
As for data import, any application can send data to Bugzilla through the HTTP protocol, or through Mozilla's XML API. However, it seems kind of silly to put another front-end in front of Bugzilla; it makes more sense to create a simplified bug submission form in HTML.

31. Has anyone converted Bugzilla to another language to be used in other countries? Is it localizable?
Currently, no.

32. Can a user create and save reports? Can they do this in Word format? Excel format?
Can a user create and save reports? Yes. Can they do this in Word format? No. Excel format? No.

33. Can a user re-run a report with a new project, same query?
Yes.

34. Can a user modify an existing report and then save it into another name?
You can save an unlimited number of queries in Bugzilla. You are free to modify them and rename them to your heart's desire.

35. Does Bugzilla have the ability to search by word, phrase, compound search?
You have no idea. Bugzilla's query interface, particularly with the advanced Boolean operators, is incredibly versatile.

36. Can the admin person establish separate group and individual user privileges?
Yes.

37. 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.

38. Are there any backup features provided?
MySQL, the database back-end for Bugzilla, allows hot-backup of data.

39. 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.

40. Are there any security problems with Bugzilla?
The Bugzilla code has not undergone a complete security audit. It is recommended that you closely examine permissions on your Bugzilla installation, and follow the recommended security guidelines.

41. I don't like/want to use Procmail to hand mail off to bug_email.pl. What alternatives do I have?
You can call bug_email.pl directly from your aliases file, with an entry like this: bugzilla-daemon: "|/usr/local/bin/bugzilla/contrib/bug_email.pl"

42. 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.

43. Bugzilla can be used with Oracle?
The current version does not have this capability.

44. Bugs are missing from queries, but exist in the database (and I can pull them up by specifying the bug ID). What's wrong?
You've almost certainly enabled the "shadow database", but for some reason it hasn't been updated for all your bugs. This is the database against which queries are run, so that really complex or slow queries won't lock up portions of the database for other users. You can turn off the shadow database in editparams.cgi. If you wish to continue using the shadow database, then as your "bugs" user run "./syncshadowdb -syncall" from the command line in the bugzilla installation directory to recreate your shadow database. After it finishes, be sure to check the params and make sure that "queryagainstshadowdb" is still turned on. The syncshadowdb program turns it off if it was on, and is supposed to turn it back on when completed; that way, if it crashes in the middle of recreating the database, it will stay off forever until someone turns it back on by hand. Apparently, it doesn't always do that yet.

45. I think my database might be corrupted, or contain invalid entries. What do I do?
Run the "sanity check" utility (./sanitycheck.cgi in the Bugzilla_home directory) 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.

46. 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 mysqladmin utility to manually insert, delete, and modify table information. Personally, I use "phpMyAdmin". You have to compile a PHP module with MySQL support to make it work, but it's very clean and easy to use.

47. I try to add myself as a user, but Bugzilla always tells me my password is wrong.
Certain version of MySQL (notably, 3.23.29 and 3.23.30) accidentally disabled the "crypt()" function. This prevented MySQL from storing encrypted passwords. Upgrade to the "3.23 stable" version of MySQL and you should be good to go.

48. 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. However, I do not recommend you run it this way on a regular basis, unless you really want your web site defaced and your machine cracked.

49. 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.

50. Why do I get bizarre errors when trying to submit data, particularly problems with "groupset"?
If you're sure your MySQL parameters are correct, you might want turn "strictvaluechecks" OFF in editparams.cgi. If you have "usebugsentry" set "On", you also cannot submit a bug as readable by more than one group with "strictvaluechecks" ON.

51. How come even after I delete bugs, the long descriptions show up?
This should only happen with Bugzilla 2.14 if you are using the "shadow database" feature, and your shadow database is out of sync. Try running syncshadowdb -syncall to make sure your shadow database is in synch with your primary database.

52. 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.

53. 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.

54. Bugzilla Database Basics
1. To connect to your database: bash#mysql-u root
2. To see all the "spreadsheets" (tables): mysql>show tables from bugs;
3. To see columns from table: mysql> show columns from table;
4. To see all the data in a table: mysql> select * from table;
5. others:
mysqlgt; select * from table where (column = "some info");
mysqlgt; select * from table where (column != "some info");
mysqlgt; show columns from bugs
(exceedingly long output truncated here)
| bug_status| enum('UNCONFIRMED','NEW','ASSIGNED','REOPENED','RESOLVED','VERIFIED'
mysqlgt; ALTER table bugs CHANGE bug_status bug_status

55. Step-by-step Install Bugzilla
Installation of bugzilla is pretty straightforward, particularly if your machine already has MySQL and the MySQL-related perl packages installed.

The software packages necessary for the proper running of bugzilla are:
1. MySQL database server and the mysql client (3.22.5 or greater)
2. Perl (5.004 or greater, 5.6.1 is recommended if you wish to use Bundle::Bugzilla)
3. DBI Perl module
4. Data::Dumper Perl module
5. Bundle::Mysql Perl module collection
6. TimeDate Perl module collection
7. GD perl module (1.8.3) (optional, for bug charting)
8. Chart::Base Perl module (0.99c) (optional, for bug charting)
9. DB_File Perl module (optional, for bug charting) 9. 10.The web server of your choice. Apache is recommended.
11.MIME::Parser Perl module (optional, for contrib/bug_email.pl interface)

You should untar the Bugzilla files into a directory that you're willing to make writable by the default web server user (probably "nobody"). You may decide to put the files off of the main web space for your web server or perhaps off of /usr/local with a symbolic link in the web space that points to the Bugzilla directory. At any rate, just dump all the files in the same place, and make sure you can access the files in that directory through your web server.

Once all the files are in a web accessible directory, make that directory writable by your webserver's user. This is a temporary step until you run the post-install checksetup.pl script, which locks down your installation.
Lastly, you'll need to set up a symbolic link to /usr/bonsaitools/bin/perl for the correct location of your perl executable (probably /usr/bin/perl). Otherwise you must hack all the .cgi files to change where they look for perl, or use The setperl.csh Utility, found in Useful Patches and Utilities for Bugzilla. I suggest using the symlink approach for future release compatability.
After you've gotten all the software installed and working you're ready to start preparing the database for its life as a the back end to a high quality bug tracker.
First, you'll want to fix MySQL permissions to allow access from Bugzilla. For the purpose of this Installation section, the Bugzilla username will be "bugs", and will have minimal permissions.
Next, we create the "bugs" user, and grant sufficient permissions for checksetup.pl, which we'll use later, to work its magic. This also restricts the "bugs" user to operations within a database called "bugs", and only allows the account to connect from "localhost". Modify it to reflect your setup if you will be connecting from another machine or as a different user.
Remember to set bugs_password to some unique password.

mysql > GRANT SELECT,INSERT,UPDATE,DELETE,INDEX,
ALTER,CREATE,DROP,REFERENCES ON bugs.* TO bugs@localhost IDENTIFIED BY
'bugs_password';
mysql> FLUSH PRIVILEGES;

Next, run the magic checksetup.pl script.
It will make sure Bugzilla files and directories have reasonable permissions, set up the data directory, and create all the MySQL tables.
bash# ./checksetup.pl
The first time you run it, it will create a file called localconfig.

What's localconfig for ?
This file contains a variety of settings you may need to tweak including how Bugzilla should connect to the MySQL database.

The connection settings include:
1. server's host: just use "localhost" if the MySQL server is local
2. database name: "bugs" if you're following these directions
3. MySQL username: "bugs" if you're following these directions
4. Password for the "bugs" MySQL account above

You should also install .htaccess files that the Apache webserver will use to restrict access to Bugzilla data files. Once you are happy with the settings, re-run checksetup.pl. On this second run, it will create the database and an administrator account for which you will be prompted to provide information. When logged into an administrator account once Bugzilla is running, if you go to the query page (off of the Bugzilla main menu), you'll find an "edit parameters" option that is filled with editable treats. Should everything work, you will have a nearly empty Bugzilla database and a newly-created localconfig file in your Bugzilla root directory.

The second time you run checksetup.pl, you should become the user your web server runs as, and that you ensure that you set the "webservergroup" parameter in localconfig to match the web server's group name, if any. I believe, for the next release of Bugzilla, this will be fixed so that Bugzilla supports a "webserveruser" parameter in localconfig as well.
Red Hat Bugzilla FAQ

1. What is it?
Bugzilla is a bug tracking system developed at mozilla.org. It was originally used to track the bugs in the Mozilla web browser. Red Hat has customized it to track bugs in our Linux products.

2. How do I enter a bug?
To enter a bug, select Enter a new bug from the main bugzilla page. This will take you to a product selection screen.
From this screen you select the product that you wish to enter a bug for, by selecting the hightlighted product name. This will take you to a bug entry screen.
Example: Red Hat Linux
From the bug entry screen, you need to select the version of the product that you are entering a bug on, along with which component of the product that is having a problem. Components are based on the source rpm that the offending binary rpm is derived from. To find the proper component do you can use one of two common methods:
$ rpm -qip 'binary rpm name'
This should work fine if you already know which rpm the failing binary belongs to.
$ rpm -qif /failing/binary
This will tell you which rpm the binary belongs to and also the source rpm.
After using one of the above methods look for a line that says Source RPM: This is the name of the component you should choose from the list of components in Bugzilla. If still unsure of which component to choose or you are filing a bug to request a new component be added to Bugzilla itself, then choose distribution.
Example: 5.2 and acm
Next, select the Severity of your bug.
Example: Normal.
Then you will select which Architecture your bug occurs on.
Example: If you are using an Intel x86 platform, you will choose i386.
The Cc: field can be used to add someone to the carbon-copy list for all email related to this bug. As the reporter of the bug, you will automatically be copied on any mail, so you do not need to add yourself to this.
Enter a one line description of the bug into the Summary field, and the full description of the bug into the Description field.

3. What happens once I enter a bug?
After you enter a bug, mail is sent both to you and the QA department of Red Hat. A member of the QA department will verify that they can reproduce your bug, and may contact you to get additional information.
After the bug has been verified, it will be assigned to a developer to look into a resolution for the bug.
Once a resolution has been found, the bug will be marked CLOSED with a resolution status.
At each step of the process, you will get an email message that will tell you what has been updated on your bug report.

4. How do I search for a bug?
To search for a bug, select Go to the query page from the main bugzilla page.
The bugzilla search uses an "OR" within each field, with an "AND" between fields. So, if you were to select NEW and VERIFIED from the Status field and normal from the Priority field, you would be asking for all normal priority bugs that are new or verified.

5. How do I submit a patch?
The new Bugzilla system supports the attachment of patches, test cases, and various other forms of file types directly from the bug report screen. Just click on "Create an attachment". You will then be asked for the file name, a one line description, and the file type. After that it will be uploaded to server so that it can be displayed later from the same bug report.

6. Are cookies required?
Yes. If you do not have cookies enabled or are using a browser that does not support cookies, you will be prompted to re-login for each screen. It also allows for special features like stored queries and keeping track of your last query result list.

Bugzilla FAQ - Camino Project <1>

Q. What to do with a bug or feature request?
If you want your bug or feature request to be considered, it’s important to follow the right process. Doing so ensures that it will be seen and considered by the Camino developers.

Q. I found a bug. What should I do?
A. Bugs for Camino are managed through a system called Bugzilla. To report a bug, just go to the bug reporting helper and follow the instructions. Be sure to take the time to search for duplicates in step 1, since repeated reports of the same issue waste both your and developers’ time.
If you’ve never used the system before, you’ll need to create an account first. Creating an account is extremely quick and easy.

Q. Camino crashed! What do I do now?
A. If you can reproduce the crash, file a bug. When reporting a crashing bug, be sure to set the severity to “critical”, add “crash” in the keyword field, and have the following things handy: the URL on which the crash occurred (if the crash was browsing-related), detailed steps to reproduce the crash (if some action was required), and a crash log.
Mac OS X ships with a very helpful tool called Crash Reporter. When Camino crashes and you see a dialog stating “The application Camino has unexpectedly quit”, click the “Submit Report…” button. Copy the entire contents of the “Crash Report:” text field into a new plain-text document (in TextEdit, create a new document and choose Make Plain Text from the Format menu). Once you have saved the text file, you can dismiss the Crash Report dialog. Note: The wording of the dialogs varies slightly between major Mac OS X versions.
If the “The application Camino has unexpectedly quit” dialog fails to appear, you have most likely disabled Crash Reporter and you will have to extract the crash log from the system’s crash logs manually.
After you have filed your initial bug report, attach the file containing the crash log to the bug using the “Create a New Attachment” link. Please do not paste crash reports into the “Comments” field of the bug report.
In addition to taking these steps to obtain the crash report, you should let the Talkback application run and file a report with mozilla.org; this report is used to aggregate crash data and often helps identify causes of crashes that are otherwise not reproducible.

Q. Camino keeps displaying the “spinning beachball” and does not respond.
A. Camino has entered a “hung” state; the only way to end this state is to “force quit” Camino. If you can reproduce the situation, file a bug. Be sure to set the severity to “critical”, add “hang” in the keyword field, and have the following things handy: the URL on which the hang occurred (if the hang was browsing-related), detailed steps to reproduce the hang (if some action was required), and a sample of Camino while it is in the hung state.
Before you force quit Camino, open the Activity Monitor application located in the Utilities subfolder of the Applications folder. On launch, the application should display a window listing various “processes” that are running on your Mac. Select Camino from the list and then click the “Inspect” button. In the window that opens, click the “Sample” button; this will generate a log that will help the developers determine why Camino entered the hung state. When the sample is complete, save the file; you may now close the sample window and force quit Camino.
After you have filed your initial bug report, attach the sample file to the bug using the “Create a New Attachment” link. Please do not paste samples into the “Comments” field of the bug report.

Bugzilla FAQ - Camino Project <2>

Q. There’s a problem with a page that requires a login.
A. In most cases the Camino developers and bug triage team members won’t have access to the site in question. However, there are still ways to generate a bug report that will allow the Camino team to assess the problem and hopefully fix it. When you are on the problematic page, take a screenshot (be sure to obscure any personal or confidential information before attaching the screenshot to your bug); a screenshot is most useful for situations where the page does not display properly.
After taking a screenshot, choose Save As… from the File menu and then select HTML Complete from the Format: drop-down menu at the bottom of the Save dialog. This will save a copy of the page and a folder containing all of the files referenced by that page (if the page is saved as my_page.html, the folder will be called my_page Files). If the page displayed any personal or confidential information (like a password or an account number), drag the saved .html file onto TextEdit and replace that information with a string of X or other characters. Be careful not to edit any of the HTML. It’s probably a good idea to check all of the associated files in the folder to make sure none of them contain personal information, either.
When you’re sure there’s no personal information remaining, select both the folder and the .html file in the Finder, ctrl-click, and choose Create Archive of 2 items from the Finder’s context menu. After you file your bug report, attach this archive and the screenshot (if needed) to the bug using the “Create a New Attachment” link. Make sure to include the URL to the page (again, removing any personal information that might be contained in the URL) in your bug report for reference.

Q. I want a new feature. What should I do?
A. Follow the instructions above for reporting a bug, but pick “Enhancement” as the severity at the last step.

Q. Can’t I just post a message about the bug/feature in the forum instead?
A. You could, but it’s extremely unlikely to be fixed if you don’t file a bug. Developers use Bugzilla to track everything that needs to be done, and anything that isn’t in that system can easily be forgotten. There’s no guarantee a forum post will even be seen by a developer.

Q. Why hasn’t my bug been fixed yet?
A. Camino is developed entirely by a small group of volunteers, working in their free time. Limited developer time means that some bugs and feature requests can wait for months, or even years, until someone has time to address them. The order bugs are fixed in depends on overall project priorities, as well as the difficulty of bugs and the skills and interests of individual developers. Do not complain in a bug or ask why it hasn’t been fixed yet—see the Bugzilla etiquette. The only way to get bugs fixed faster is to contribute in some way (such as fixing them yourself, helping to recruit new developers, or helping out in some other way that frees up developers to spend more time on coding).
Demanding that a bug be fixed, whining, threatening to switch browsers, etc., is always counter-productive. Fixing bugs is simply a question of manpower and complaining in a bug wastes the time of everyone reading bug reports or following the progress of a bug via email.

Q. Why was my bug marked WONTFIX?
A. Camino’s goal is to be lightweight and easy to use. That means that it can’t include every feature that is ever requested. Invariably, some people will be unhappy with the decisions that are made regarding which features aren’t included, but strong leadership is necessary to keep Camino true to its vision. WONTFIX decisions are made by the Camino lead, are made for good reason (even if not explained in the bug), and as such are final. Do not complain or argue in a bug that has been marked WONTFIX. Unless you have new, compelling information to add, do not comment in the bug. Please remember that “x people I talked to said this is really important” is not compelling information. Unless you have have done a statistically valid sample of Camino’s entire target user base (and neither Bugzilla nor online forums are representative samples), you aren’t going to convince anyone.

Q. If only some people want a feature, couldn’t it just be a preference?
A. In general, no. First, every piece of code needs to be written and maintained, both of which take developer time away from bugs and other features. Second, each added preference makes all other preferences slightly less accessible. Camino’s goal is to be lightweight, which means keeping the number of preferences down as well.

1 comment: