bugs and bug tracking - Mailing list pgsql-hackers
From | Nathan Wagner |
---|---|
Subject | bugs and bug tracking |
Date | |
Msg-id | 20151006130524.GA4322@granicus.if.org Whole thread Raw |
Responses |
Re: bugs and bug tracking
Re: bugs and bug tracking Re: bugs and bug tracking Re: bugs and bug tracking Re: bugs and bug tracking |
List | pgsql-hackers |
So, in order to do some clean up and see how my pgbugs page (https://granicus.if.org/pgbugs/) might actually work I've been going through bugs and marking their status. A lot of questions arise. A lot of the reports aren't bugs at all, but requests for help. My guess is that the users either don't know where to ask or don't understand the difference between a bug and not knowing how to do what they want to do. Perhaps a more thorough explaination on the submission form would be useful. What is the difference between a bug and a feature request? Ok, I know the difference, but do we want to treat them differently. For example, see bug 9457 (https://granicus.if.org/pgbugs/9457). As Pavel Stehule noted, this isn't a *bug* per se, but what should we do with it? Close it as 'not a bug'? I don't like this because it's not really the same as the other 'not a bug's. Create another 'closed' status of 'feature request'? Except that if we decide to implement the feature, in some sense it becomes a bug until we actually implement it. Create an 'open' status of 'feature request' to mark it until it is either implemented or rejected. At least then it's tracked. This last choice is my preference. I conflate open bugs in the sense of 'not closed so we still need to do something with the bug even if it is just closing it' and open bugs in the sense of 'this seems to actually be a bug in postgres'. I'm not sure what terminology I should use. I have lots of different types of 'not a bug'. Not a bug, the use should have posted to a different list. (e.g. 13602) Not a bug, probably user error, which is similar to the above. Not a bug, but a bug in the libraries we use (e.g. openssl, 10184) Not a bug, works as intended, i.e. the user didn't make a mistake, but had an incorrect notion of what it was supposed to do. (11596) Not a bug, but the user never got a reply. That is, I decided personally that this wasn't actually a bug. (13367) And bug 1000 is not a bug, system test. Do we care about the difference between any of these? I track them differently in my update script, but they all get the same status in the db. Can a bug be 'fixed' if there's no actually identifiable commit that fixes the bug? See 13516, which Tom Lane claims was fixed in 9.1. A grep for 13516 of the git log for both master and REL9_1_STABLE don't turn up anything. I can't as yet figure out how to match up git commit messages to identify every branch in which a fix was applied. I could of course load all of the commit messages into a table and compare them that way. Should I mark as "open" (i.e. not "new) any report that has a response? More than one response? That would at least distinguish between bug reports that at least someone, in theory, has taken a look at, and those that haven't been addressed at all. I have created the following statuses: Fixed - bug is presumably fixed Unreproduceable - we can't make the system demonstrate this error Timed Out - the reporter was asked to provide more information and didn't respond for a while. I would probably suggest somewhere around a month for this. Should there be a 'waiting on feedback' to mark the 'pre timed out' phase? Stale 5281 - the bug hasn't had any activity for >2 years, so just close it. If people want to troll through these to give them a better status, that would probably be good, but there's still a thousand open bugs newer than that. Not Our Bug - looks like a bug, but it's not a bug in postgres. What exactly are our bugs? Just what you'd get out of the release tarballs or the git repo? Or is there more? Not a Bug - see above discussion Won't Fix - this is arguably a bug, but for some reason we're not going to fix it. Perhaps we intentionally violate the standard, or it's a bug against a version we don't support, or we're not going to backpatch it. Open - this seems to be a bug, or at least we're talking about it and it's not where we want to close it. Note of course that "closing" a bug just means it will show up somewhere else in my tracker, obviously it doesn't affect the mailing list at all. New - this hasn't been looked at enough for someone to change the status to something better. I don't have a "reopened" status. I'm not sure what it means, other than it used to be closed, but someone changed it back to open. I don't immediately see why we would want to distinguish between this and a regular open bug, other than perhaps as a way of conflating status with priority. It's easy to make one though if people really want it. I probably have too many statuses already. I will post later on my thoughts on how to control the system. Are people, in principle, willing to put magic incantations in their emails and commit messages? I'm not asking for a commitment to my tool here, I'm just exploring what the bounds of people's, and committer's in particular, willingness to adjust their workflow or message texts a bit to make it easier to automate bug tracking. Even if people don't want to use what I've done, the same problems arise for any system. -- nw
pgsql-hackers by date: