On 17/06/15 09:17, teo1978 wrote: >> Launchpad isn't designed for bugs to have more than 1000 duplicates. > > Well that's STUPID to begin with. For a bug to have several thousands > duplicates is normal. Also, if it is not capable of handling that, it > shouldn't allow that. If it allows it, it must handle it. Software isn't flawless, and there are anomalous edge cases for almost all software that aren't handled well. In this case, a cosmetic operation is unable to be performed on roughly 0.00005% of bug reports, and there is a workaround, so it's not a very high priority to fix directly. If we were to fix it, the fix would be to prevent marking bugs with more than 100 duplicates as a duplicate of another bug -- not a significant improvement over the "sorry, you can't do that because it was too slow" message that you get now. >> when you mark a bug with 1000 duplicates as a duplicate of another > bug, it has to also switch all 1000 duplicates over to the new master > bug. > > That's not the only case. > I have "moved" a few bugs that were dupes of A to dupes of B, because I couldn't mark A as dupe of B. Now, any attempt to mark any further bug X as dupe of B times out, even though X doesn't have any dupes . This cannot be justified by anything else than wrong designed. This should be a O(1). If it isn't, something is wrongly designed. Someone was repeatedly trying to mark A as a duplicate of B many thousands of times an hour, causing database locks to be held on A, B, and all of A's duplicates, preventing other duplicate operations from completing on those bugs. Now that they've stopped doing silly things like that (the message suggests retrying in a couple of minutes, not immediately retrying several times a second for several hours!), marking dupes of A as dupes of B instead works fine through both the web UI and the API. Once most of them have been moved across, A can be marked as a dupe of B and the workaround will be complete. If it doesn't work, say so in a pleasant manner and we can work out why it's broken again and how to fix it. >> so it does not perform well in the uniquely pathological case of bug > #1268257. > > "Uniquely pathological", Do you realise how idiotic that sounds? It's not idiotic at all. A pathological case is an unlikely set of circumstances that can cause bad behaviour, deliberate or otherwise. In this case, the largest master bug in history is being marked as a duplicate of another large master bug -- only necessary because someone filed a new bug and decided that *it* should be the new master, rather than using the existing bug, a very uncommon occurrence for an established bug with hundreds of duplicates. This particular 0.00005% of the dataset is by far the biggest piece of work that this code has ever seen, and the code does not handle it well, so it is clearly a uniquely pathological case. > That is > not something that was done on purpose for the sake of testing, that's > something that naturally happened, because people use software and > stumble into bugs, and they report them, and sometimes they are > duplicates. And sometimes bugs are huge and hit millions of people. And > with Ubuntu, that happens a lot. I run the service that provides Ubuntu's bug tracker, so I know Ubuntu's bug tracking patterns, which is how I know that the bug in question is an exceptional case. Bugs frequently have a couple of hundred duplicates, but substantially more than that is rare, and marking one of those as a duplicate of another is extremely uncommon. You're saying that a bug being bad enough to have thousands of duplicates is expected and normal, while also saying that a Launchpad bug relating to one operation on that single bug with thousands of duplicates is unacceptable. Bugs happen, in bugtrackers or in Ubuntu. Is that Ubuntu bug also unacceptable and worth unpleasant rants in bug reports? > There's nothing pathological about it, except for the magnitude of the > bug. > > But if Launchpad has not been designed to handle bugs of such huge > impact, then it's not a proper bug tracker for Ubuntu. The size is exactly what is pathological about it, yes. Ubuntu's other million bugs work fine.