- The Basics
- Examples of Simple Queries
- Fields You Can Search On
- Advanced Features
- Advanced Shortcuts
- Examples of Complex Queries
- If you just put a word or series of words in the search box, Bugzilla will search the Product, Component, Keywords, Alias, Summary, and Comment fields for your word or words.
- Typing just a number in the search box will take you directly to the bug with that ID. Also, just typing the alias of a bug will take you to that bug.
- Adding more terms narrows down the search, it does not expand it. (In other words, Bugzilla searches for bugs that match all your criteria, not bugs that match any of your criteria.)
- Searching is case-insensitive. So table, Table, and TABLE are all the same.
- Bugzilla does not just search for the exact word you put in, but also for any word that contains that word. So, for example, searching for "cat" would also find bugs that contain it as part of other words—for example, a bug mentioning "catch" or "certificate". It will not find partial words in the Comment or Keywords fields, though—only full words are matched, there.
- By default, only open bugs are searched. If you want to know how to also search closed bugs, see the Advanced Shortcuts section.
- If you want to search specific fields, you do it like field:value, where field is one of the field names lower down in this document and value is the value you want to search for in that field. If you put commas in the value, then it is interpreted as a list of values, and bugs that match any of those values will be searched for.
Examples of Simple Queries
Here are some examples of how to write some simple queries. Examples for more complex queries can be found lower in this page.
- All open bugs where userA@company.com is in the CC list
(no need to mention open bugs, this is the default):
- All unconfirmed bugs in product productA (putting the
bug status at the first position make it being automagically
considered as a bug status):
- All open and closed bugs reported by userB@company.com
(we must specify ALL as the first word, else only open bugs
are taken into account):
- All open bugs with severity blocker or critical with the
target milestone set to 2.5:
- All open bugs in the component Research & Development
with priority P1 or P2 (we must use quotes for the component as its name
component:"Research & Development" priority:P1,P2
Fields You Can Search On
You can specify any of these fields like field:value in the search box, to search on them. You can also abbreviate the field name, as long as your abbreviation matches only one field name. So, for example, searching on stat:VERIFIED will find all bugs in the VERIFIED status. Some fields have multiple names, and you can use any of those names to search for them.
For custom fields, they can be used and abbreviated based on the part of their name after the cf_ if you'd like, in addition to their standard name starting with cf_. So for example, cf_kernel_version can be referred to as kernel_version, also. However, if this causes a conflict between the standard Bugzilla field names and the custom field names, the standard field names always take precedence.
|Field||Field Name(s) For Search|
|Assignee||assigned_to, assignee, owner|
|Assignee Real Name||assigned_to_realname|
|Attachment data||attachmentdata, attachdata|
|Attachment description||attachmentdesc, attachment, attachdesc|
|Attachment mime type||attachmentmimetype, attachmimetype|
|Comment||description, longdesc, comment|
|Days since bug changed||days_elapsed|
|QA Contact Real Name||qa_contact_realname|
|Reporter Real Name||reporter_realname|
|Target Milestone||target_milestone, milestone|
|Time Since Assignee Touched||owner_idle_time|
- If you want to search for a phrase or something that contains spaces, commas, colons or quotes, you must put it in quotes, like: "yes, this is a phrase". You must also use quotes to search for characters that would otherwise be interpreted specially by quicksearch. For example, "this|that" would search for the literal string this|that and would not be parsed as "this OR that". Also, "-field:value" would search for the literal phrase -field:value and would not be parsed as "NOT field:value".
- You can use AND, NOT,
and OR in searches.
You can also use - to mean "NOT", and | to mean "OR".
There is no special character for "AND", because by default any search
terms that are separated by a space are joined by an "AND".
Use -summary:foo to exclude bugs with foo in the summary.
NOT summary:foo would have the same effect.
foo bar searches for bugs that contains both foo and bar.
foo AND bar would have the same effect.
foo|bar would search for bugs that contain foo OR bar.
foo OR bar would have the same effect.
You cannot use | nor OR to enumerate possible values for a given field. You must use commas instead. So field:value1,value2 does what you expect, but field:value1|value2 would be treated as field:value1 OR value2, which means value2 is not bound to the given field.
OR has higher precedence than AND; AND is the top level operation. For example:
Searching for url|location bar|field -focus means (url OR location) AND (bar OR field) AND (NOT focus)
The default operator, colon (:), performs a substring
match of the value. The following operators are supported:
summary:foo will search for bugs where the summary contains foo.
summary=foo will search for bugs where the summary is exactly foo.
summary!=foo will search for bugs where the summary is not foo.
creation_ts>-2w will search for bugs where that were created between two weeks ago and now, excluding bugs exactly two weeks old.
creation_ts>=-2w will search for bugs where that were created between two weeks ago and now, including bugs exactly two weeks old.
creation_ts<-2w will search for bugs where that were created more than two weeks ago, excluding bugs exactly two weeks old.
creation_ts<=-2w will search for bugs where that were created more than two weeks ago, including bugs exactly two weeks old.
- : (substring):
In addition to using field names to search specific fields, there are certain characters or words that you can use as a "shortcut" for searching certain fields:
|Status||Make the first word of your search the name of any status, or even an abbreviation of any status, and bugs in that status will be searched. ALL is a special shortcut that means "all statuses". OPEN is a special shortcut that means "all open statuses".|
|Resolution||Make the first word of your search the name of any resolution, or even an abbreviation of any resolution, and bugs with that resolution will be searched. For example, making FIX the first word of your search will find all bugs with a resolution of FIXED .|
|Priority||"P1" (as a word anywhere in
the search) means "find bugs with the highest priority.
"P2" means the second-highest priority, and so on.
Searching for "P1-3" will find bugs in any of the three highest priorities, and so on.
|Product or Component||:value|
|Comment or Summary||#value|
Examples of Complex Queries
It is pretty easy to write rather complex queries without too much effort. For very complex queries, you have to use the Advanced Search form.
- All bugs reported by userA@company.com or assigned to them
(the initial @ is a shortcut for the assignee, see the
Advanced Shortcuts section above):
ALL @userA@company.com OR reporter:userA@company.com
- All open bugs in product productA with either severity
blocker, critical or major, or with priority P1, or with the blocker+
flag set, and which are neither assigned to userB@company.com nor to
userC@company.com (we make the assumption that there are only two users
matching userB and userC, else we would write the whole login name):
:productA sev:blocker,critical,major OR pri:P1 OR flag:blocker+ -assign:userB,userC
- All FIXED bugs with the blocker+ flag set, but without
the approval+ nor approval? flags set:
FIXED flag:blocker+ -flag:approval+ -flag:approval?
- Bugs with That's a "unusual" issue in the
bug summary (double quotes are escaped using \"):
summary:"That's a \"unusual\" issue"