Triage, noun: the process of determining the most important people or things from amongst a large number that require attention.
The aim of Bug Triage is to perfom an initial analysis of all new bugs, to determine is (a) they are a valid KV-Engine bug and (b) how important it is to fix.
After Triage a bug should either:
- Be accepted as a valid KV-Engine bug, and have a suitable Priority and position in the Backlog, or
- Be rejected as not a valid KV-Engine bug, and:
- Assigned to the appropriate other team to investigate, or
- Assigned back to the reporter (if duplicate, not-a-bug, incomplete, etc)
- Does the issue describe the problem in sufficient detail for development to investigate (How to file a Bug Report)? If not then assign back to reportor requesting the missing info.
Check:
- Affects version set
- Steps to reproduce included
- Logs (cbcollect_info) linked
- Is this a new issue? Check if the issue has already been reported in Jira. If so then resolve as Duplicate, linking the duplicated MB.
- Is this a valid, KV-Engine issue? Determine if the reported expected/actual behaviour is correct or not. If the bug does appear valid, is this a problem with KV-Engine or some other part of the system?
- Set the Priority of this issue At a high level we want to answer the question "what would happen if we didn't fix this issue today/this week/this month/ever?" See Jira Priority Levels for definition of the different Priorities.
- Set the issues' position in the backlog This should be informed by the previous step, and is a function of Priority and Urgency - if this is a Major bug in a maintenance release which is code-complete this week then it should probably be investigated asap. If this is a Major bug in a X.0 release due out in 6 months' time then it can be looked at later.
- Mark the Issue as "Triaged"
Note: Triaging a bug should be a relatively quick process - read the Jira Issue, check for existing issues in Jira, possibly download and briefly examine logs to check for evidence of a problem. Triaging a bug should take less than 30 mins. It doesn't mean figuring out the cause of a bug - that is part of the detailed investigation which happens once we this bug is the next one on the backlog.