[12:36] Hm, the oops linked from https://bugs.launchpad.net/launchpad/+bug/1429358 isn't making sense to me; that stuff *is* preloaded. I wonder if we're running up against the Storm cache size? [12:36] Bug #1429358: Bugs with large numbers of linked branches time out [12:57] cjwatson: That's not implausible. And even if we weren't we'd hit serious CPU time rendering all those branches. [12:58] cjwatson: btw, that's possibly a dupe of bug #724025 [12:58] Bug #724025: BugTask:+index timeout due to high cpu time rendering many bug tasks in bug 230350 [12:58] May be worth closing 724025 in favour of it. [12:59] cjwatson: I think all we can reasonably do it truncate the list of branches. [13:00] It's not as if a page that listed 700 branches would be particularly usable anyway. [13:09] is it in fact that many? [13:09] launchpad_dogfood=# select count(*) from bugbranch where bug=230350; [13:09] count [13:09] ------- [13:09] 84 [13:09] (1 row) [13:10] Oh, now that's a bit odd... [13:10] cjwatson: Can you test with a larger cache size on DF? [13:11] Ah ahhahahahujfewuifweuohjiwfeuihjo [13:11] cjwatson: It's the stacking security checker. [13:12] With the pathological stacking behaviour of branch-distro.py, which creates a chain a dozen branches long for these. [13:12] cjwatson: Feel like writing a recursive CTE? [13:18] Yeah, bumping the storm cache size to 100000 on DF doesn't appear to change the query count. [13:19] Possibly I should finish my ref scanner first :-) [13:19] The tracebacks confirm my diagnosis: [13:19] File "/srv/launchpad.net/production/launchpad-rev-17374/lib/lp/code/model/branch.py", line 1408, in visibleByUser [13:19] user, checked_branches) [13:19] File "/srv/launchpad.net/production/launchpad-rev-17374/lib/lp/code/model/branch.py", line 1408, in visibleByUser [13:19] user, checked_branches) [13:19] I've been experimenting with a rhythm of misc maintenance in the morning, git development in the afternoon [13:19] File "/srv/launchpad.net/production/launchpad-rev-17374/lib/lp/code/model/branch.py", line 1408, in visibleByUser [13:19] user, checked_branches) [13:19] etc [13:20] Oh yeah, it's your afternoon. I should probably sleep. [13:20] But don't want to get distracted by inflating morning tasks [13:20] Indeed. [13:21] See you at the meeting then. I should be on time - we had to cancel our guest-for-dinner due to Kirsten being ill [13:21] Ugh, that's unfortunate. See you then. [13:23] cjwatson: btw, https://code.launchpad.net/~wgrant/launchpad/sca-api/+merge/252420 fixes one of the OLS issues, if you could look at that today. [21:09] cjwatson: when running the tests, hosting_path appears to be an integer? [21:10] feel like I'm missing something fundamental that may require more coffee. [21:14] blr: It's a stringified integer [21:14] We'll need something more sophisticated at some point, this was a "make it work" measure, we just stringify the id to get the hosting path [21:14] def getInternalPath(self): [21:14] """See `IGitRepository`.""" [21:14] # This may need to change later to improve support for sharding. [21:14] return str(self.id) [21:14] (comment is an understatement) [21:15] wgrant: argh I missed your comment from earlier [21:15] * cjwatson looks [21:15] cjwatson: I see, thanks [21:36] wgrant: r=me, just minor things that looked a bit odd [21:47] cjwatson: Thanks.