/srv/irclogs.ubuntu.com/2010/10/13/#launchpad-dev.txt

jelmerwgrant: yes, we should celebrate this joyous occasion.00:01
wgrantAlthough the branch is a bit of a read :/;00:02
wgrantLOSA ping: Can someone please run http://paste.ubuntu.com/511984/ on prod? We seem to have corrupt more builds like the ones we found when trying to open Natty.00:10
spmwooo00:10
wgrantWe had to fix those quickly, so the evidence was destroyed.00:10
wgrantSo it is probably... good... that there is more breakage.00:11
StevenKFSVO 'good'00:11
spmwgrant: (4510 rows) but they're all looking like " 4789 |      |         |"00:11
wgrant(missing BuildQueues in both cases)00:11
wgrantEr.00:11
wgrantDid I miss a join somewhere...00:11
wgrantWhoops. Left out the WHERE clause in that version of the query.00:12
wgrant WHERE sourcepackagerecipebuild.id IN (4256, 4257);00:12
wgrant*Two* rows.00:12
spmha00:13
spm  id  |  id  |   id    | id00:14
spm------+------+---------+----00:14
spm 4256 | 4255 | 6311021 |00:14
spm 4257 | 4256 | 6311022 |00:14
spmwgrant: ^^00:14
wgrantPrecisely as I suspected.00:14
wgrantThanks.00:14
wgrantNow to work out why we have various builds without BuildQueues.00:14
wgrantHow I hate this model.00:20
lifelessthumper: https://devpad.canonical.com/~stub/ppr/lpnet/latest-daily-pageids.html00:22
wgrantHow far do buildd-manager logs go back?00:24
StevenKA long while00:29
* StevenK goes for breakfast before his stomach breaks out on its own00:29
lifelessrooooar00:34
lifelessholy cow00:34
lifelesshwsubmission ||  525012.40 tuples/sec00:34
lifeless'release time anyone' ?00:35
lifelessexcept, its not writes. hmmm00:35
wgrantYeah, that can't really be writes, as it would go through the last released count of Ubuntu users in 24 seconds.00:36
elmowgrant: s/count/estimate/00:36
elmo:-P00:36
wgrantelmo: True that.00:37
lifelessthumper: -> https://bugs.edge.launchpad.net/bzr/+bug/93609 <- poolie:00:52
_mup_Bug #93609: Better error messages for bzr lp:// <launchpad> <lpurl> <Bazaar:Confirmed> <Launchpad Bazaar Integration:New> <https://launchpad.net/bugs/93609>00:52
StevenKwgrant: Do you need logs?00:53
wgrantStevenK: I'd like to see what the logs have to say about BinaryPackageBuilds 1968526, 1968544, 1969032, and SourcePackageRecipeBuilds 4256, 4257.00:55
wgrantBecause they somehow ended up NEEDSBUILD without a BuildQueue.00:55
StevenKwgrant: How far back are we talking?00:55
wgrantStevenK: The BPBs are a little over three weeks ago. The SPRBs 11 days ago.00:55
wgrantIn two months I will be able to stop pestering people for logs, yay.00:57
spmwgrant: in that losas aren't people? or???01:09
wgrantHeh.01:09
lifelesslosa ping01:36
lifelessI need someone to delete "hard_timeoutpageid:BugTask:+index15000" from https://staging.launchpad.net/+feature-rules01:37
spmlifeless: you have been unfeatured01:39
lifelessthank you01:41
lifelessI *so* want to not get mail for invalid bug tasks.02:08
wgrantThere are two types, though.02:09
wgrantOf Invalid task.02:09
wallyworldlifeless: do i also need to ask for a separate review in #launchpad-reviews for that menu branch? or is your stamp of approval enough?02:10
lifelesswallyworld: IIRC userdict provides better hook points than dict, though its not really relevant here02:12
lifelesswgrant: bad and worse?02:12
lifelesswgrant: I've clickly clicked for you02:12
lifelessbah02:12
lifelesswallyworld:02:12
wallyworldlifeless: yo02:12
lifeless^ 3 lines02:13
wallyworldack. so i'll leave the code as is...02:13
wgrantlifeless: "This isn't a valid bug", and "This isn't a valid bug here"02:13
lifelessuhm02:13
lifelessI think you're conflating task and bug02:14
lifelesssomething like : a bug is invalid if all tasks are invalid02:14
wgrantIt is necessary to conflate them.02:14
lifeless02:15
wgrantWe have only per-task statuses.02:15
wgrantBut, as you say, a bug could be considered invalid if all its tasks are.02:15
wgrantThe interactions with notifications may depend on both.02:15
lifelesswell, for my needs, if I'm structurally notified via an invalid task, i don't want to be.02:16
wgrantBut what if the user is arguing that the bug is valid?02:16
wgrantYou do want to be notified.02:16
pooliehi lifeless02:16
poolie5-digit bug hey02:16
pooliei agree that looking at the cases is good02:16
lifelesswgrant: can't they toggle it to new?02:16
wgrantlifeless: That's impolite.02:17
lifelesspoolie: hey, so, thumper and I were talking.02:17
lifelesspoolie: I promised to file a bug describing a design to get better messages out with hopefully backwards compat02:17
lifelesspoolie: and suggested that spiv would be a great person to look at the detail.02:17
lifelesspoolie: when I wwent to file it I found such a closely aimed bug that I reused it.02:17
lifelesswow02:18
lifeless1026 /  119  Distribution:+ppas02:18
lifeless^- unhappy pages R us.02:18
wgrantYeah, known 8.4 regression.02:18
wgrantNot sure of the details.02:18
lifelessyeah02:18
wgrantBut there are a few bugs on it.02:18
lifelesscount(*)02:18
lifelesswe've dupped them all I think02:18
lifelessbad query is listed in the remaining active02:19
poolieyep, i thought a bug would be good too02:19
poolieand that's it02:19
wgrantI don't see the bug.02:20
* wgrant searches other projects.02:20
lifelesshttps://bugs.edge.launchpad.net/launchpad-project/+bugs?field.tag=timeout02:20
lifelesswgrant: ^02:20
wgrantAh, on launchpad.02:20
lifelessfixed02:20
lifelesssuch a nuisance02:21
wgrantI was trying to fix it.02:21
wgrantBut it kept using the non-AJAX form.02:21
wgrantSomething odd is going on.02:21
lifelessyou clicked too quickly02:21
lifelessgotta wait for yui to initialize and overlay02:21
wgrantI thought so.02:21
wgrantBut apparently not.02:21
lifelessodd indeed then02:21
wgrantI can wait a few seconds after the status picker works, and the project one still doesn't.02:21
lifelessoh, it never has02:22
wgrantHm?02:22
lifelessthere isn't an ajax project picker is there? just the drop-down if you click on the expander02:22
wgrantThere is an AJAX project picker.02:22
lifelessI've never seen it :P02:22
wgrantIt's often buggy, but it usually at least appears.02:22
lifelesswhat dor str(Person) do (when Person is a Launchpadlib object)02:36
wgrantlifeless: IIRC str()ing an Entry will give you its URL.02:41
lifelessblah, thanks.02:41
wgrantAh, now I see the relevance.02:42
lifelesswgrant: ?02:43
wgrantThe qa-tagger bug.02:44
lifelessah yes02:44
wgrantI really should add that to my sieve script, since it ends up in my inbox.02:44
lifelessopen sourcing by incremental pastebin :P02:44
wgrantI learnt a lot about LP through dogfood back when it had public tracebacks :P02:45
wgrantBut then Julian fixed that :(02:45
poolieaw03:03
pooliei wonder why not enable them?03:03
wgrantThey leak data.03:04
pooliein variable values etc?03:04
wgrantAlthough not much worse than API exceptions can do.03:04
wgrantThe most obvious one is object reprs in Unauthorized exceptions.03:04
wgrantBut there are probably others.03:04
StevenKAs an odd question, I wonder why ohloh doesn't have any updates from Launchpad branches since Jan03:09
pooliereally?03:09
poolieyou could mail them03:10
StevenKI'm checking again03:10
maxbHmm. I have a PPA build finished 13 minutes ago and still not published03:10
StevenKLast commit it shows was 4 months ago, but the code metrics seem much older03:11
maxb18 minutes :-/03:15
StevenKThe publisher runs every 20 minutes, so that is the worse case, right?03:16
maxbThe *PPA* publisher used to run every 5 minutes, last time I was told03:16
StevenKmaxb: Which PPA?03:18
maxbbzr-beta-ppa/ppa - it does seem to have just published now03:19
marslifeless, ping, if you have a moment, I am in need of some help with a zope-related implementation question03:59
marsor thumper, if you have a moment to spare?04:02
thumpermars: whazzup?04:04
marsHi thumper, I have a question about storing state for the duration of a Zope request04:04
thumperright...04:04
thumperand what is the question?04:05
marsThe profiling code needs to store the active profiler information for the duration of the request.  I could throw that information onto the request object itself, or take the current approach of using a module-level threading.local()04:06
marsOne approach turns the request object into a cesspool, the other uses a sort-of-magic secret module level variable - is one approach preferred over the other?04:07
thumpermars: does this relate to the existing timeline code?04:07
marsno04:08
thumpermars: my suggestion would be to do what the timeline code does04:08
thumpermars: the request object is already a cesspool04:09
marsheh, ok04:09
marsthumper, where would I find the timeline code?04:10
thumpermars: I think there is a part of the request object used to store "stuff"04:10
thumpermars: lp.services ?04:10
marsright04:10
marsthank you for the help thumper04:13
lifelessmars: hi04:13
lifelessmars: webapp.adapter04:13
lifelessmars: as thumper says, see what lp.services.timeline.requesttimeline does04:13
lifeless(which is to shove it into webapp.adapter and cry with XXX's.)04:14
marslifeless, cool, thanks04:14
lifelessmars: doesn't the profiler already work though?04:14
lifeless[I'm interested in what you're hacking on]04:14
marslifeless, the profiler worked when using lazr.config.  The setting was static for the duration of the request, so profiling was either on or off04:15
lifelessmars: are you working on flags to enable profiling?04:15
lifelessmars: if so, i think it still needs to be either on or off, just evaluated earlier.04:16
marslifeless, but feature flags are set and cleared with request events, and lo, so is profiling.  If the features get nuked before the profiling end hook is run, no profile is generated04:16
marsI am dealing with an event processing order bug04:17
lifelessmars: sure, but wouldn't 'just' caching the result of 'should we profile' be all thats needed (and in fact I thought that that is what it did?)04:17
lifelesswin 6704:17
marslifeless, no, it did not cache the 'profiling is on' flag (unless you count the aforementioned thread-local storage as the flag)04:18
marslifeless, and I was asking about the best implementation for said cache04:18
marseither thread-local storage, or a request.atttribute04:18
lifelessend_requqest does this04:19
lifeless_profilers.profiler is not None04:19
lifelessso it caches (by virtue of using an object)04:19
lifelessmars: I expect you'll have a great deal of trouble changing the cache implementation for profiling04:20
lifelessuntil we fix two bugs:04:20
marshmm, ok04:20
lifeless - many tests call in-request-context-code outside of a reqest-context04:20
lifeless - scripts don't establish a request-context in th esame way the webapp does04:20
lifelessthe second point won't really affect you atm as we don't profile scripts, but the first one will hurt - a lot-04:21
marsso if I change this then I'll probably trip over yet more test-related bugs04:21
lifelesssee the 'except AttributeError:' on line 7804:21
lifelessI'd be delighted to see the root issue here fixed.04:21
lifelessbut I don't know if you have the time budgeted for that :)04:21
marsthis has rotted on the kanban board already (as I am sure you and Martin have noticed).  I think I'll just try and land it :)04:22
lifelessok, so perhaps I can help solve your immediate issue.04:22
lifelesswhat is it ?04:22
marswell, I think it is solved then - I just have to add a comment string or two to that thread-local storage to make it less magic04:23
marsname it _active_profilers or some such obvious thing, etc.04:23
lifelessmmm04:24
lifelessthere are no inactive_profilers04:24
marswell, _active_profile then04:24
marsif _active_profile.actions = None04:24
lifelessmars: if you come up with a good name; great. Myself, I'd just add a comment to the assignment and the module dostring.04:25
marsanyway, something like that04:25
marslifeless, yes, will do04:25
marslifeless, thank you for the help, and for pointing past the minefield04:25
lifelessde nada04:28
wgrantIf I have a db-devel-based branch that will land in devel after the release, how should I propose it? With db-devel as a prereq?04:39
lifelesspropose it to devel04:40
lifelessafter the release, the diff will be normal :)04:40
wgrantIf I somehow convince it to update after the release, sure.04:41
wgrantI guess I could just wait until after the release.04:41
lifelessone day04:41
wgrantAlthough I have to wonder why we don't merge db-devel into devel at the time devel freezes.04:41
lifelessI suggested that on the lit ;)04:41
wgrantAh, I'm a bit behind at the moment.04:41
Ursinha-afkEdwinGrubbs, pong?04:49
Ursinha-afkEdwinGrubbs, holiday here today, sorryu04:49
Ursinha-afk*sorry04:49
EdwinGrubbsUrsinha-afk: no problem, we sorted out some issues we were having with the qatagger. It's working now, and we opened bugs for the problems that should be fixed later.04:56
wgrantStevenK: re. Ohloh: The import has been tried a few times, but always fails after working for a couple of weeks.05:10
wgrantStevenK: Their bzr importer doesn't seem to be awfully good.05:10
* wgrant requests that it be kicked.05:30
wgrantI wonder if the regular failures are because of the frequent LP downtime.05:49
spmsush :-)05:50
wgrantWell, we are the only hosting site I know of that has regular downtime...05:51
poolielifeless: http://sourcefrog.wordpress.com/2010/10/13/59/ about ssl performance may interest you06:20
lifelesspoolie: thaks06:29
jtvstub: question about the BranchRevision patch…06:45
stub?06:45
jtvThe problem is too much downtime when setting a new primary key, right?06:45
jtvThe change requires creation of a huge new unique index, even though we already have one.06:46
jtvSo I'm wondering: why do we need to declare a primary key in the first place?  Does Slony require it?06:47
wgrantStorm does.06:47
jtvStorm requires us to declare a primary key _to Storm_.  But does it require us to declare a primary key _in the schema_?06:48
wgrantAh, fair point.06:48
jtvBecause AFAIK this whole primary key business is little more than convention, a bit of optional syntactic sugar.06:48
wgrant"Slony-I needs to have a primary key or candidate thereof on each table that is replicated."06:49
wgrantHm.06:49
jtvOkay, what does it consider a candidate?  Because we have unique index and we have not-null.06:49
wgrantOne can override it to another candidate key.06:50
wgrantSo it should be doable, yes.06:50
wgrant(just needs UNIQUE and NOT NULL)06:50
jtvstub: we already have the index and constraint we need… what do you think?06:52
stubjtv: Slony requires a primary key06:52
wgrantIt says it requires a primary key or a candidate key.06:53
jtvstub: see what wgrant just dug up—we can define a primary key there without declaring it in the schema.06:53
stubI like to stick to best practices, and from the best practices section " Discussed in the section on Replication Sets,  it is ideal if each replicated table has a true primary key constraint; it is acceptable to use a "candidate primary key."06:54
wgrantWell, it's either use a candidate key or have several hours of downtime...06:54
mwhudsonthere's also the 'make branchrevision2' plan isn't there?06:55
mwhudsonor has that been shot down for some reason06:55
wgrantThat would work too.06:55
wgrantAt the expense of a crapload of disk, I guess.06:55
mwhudsonyeah06:55
stubCandidate key is certainly an option, but we need to teach or maintenance scripts about it.06:56
jtvEveryone bring your spare disks to the DC for Operation Dunkirk.  :)06:56
stubThere is also the ignore-it-until-we-drop-branchrevision route. There might be faster, smaller and better solutions than the big table in the RDB.06:57
wgrantHow long until we run out of rows?06:57
mwhudsonyeah, that's probably a reasonable approach06:57
mwhudsonwgrant: it's at 600 million ish and runs out at 2 billion06:58
mwhudsonso, no massive rush06:58
wgrantOh, I didn't realise it was only 600 million.06:58
jtvWhat's the next id though?06:58
stubThe table is pretty much INSERT only06:58
mwhudsongood question, but probably not noticeably more than the row count06:59
wgrantExcept on branch deletion and overwrite, I guess.06:59
stubHighest id is 75725999606:59
jtvAnd aborted transactions, and maintenance.06:59
wgrantTrue.06:59
jtvSo that's okay.06:59
mwhudsonaccording to the graph (which is only an estimate i think) we've added 300 million ish rows in the last year07:00
jtvWell then, let's just take one bit off the id for now and save 1/32nd of the space :)07:00
spmjtv: don't muck about eh? drop database.07:00
jtvat last we'll have some disk space free07:01
stubAlso, since the only thing that inserts rows into that table is the branch scanner, we could do magic and have everything live while we do the maintenance and only have the branch scanner disabled.07:01
jtvstub: I don't suppose there's a way to make the new index be created concurrently like you can with a regular index?07:02
stubThe new primary key index? No.07:02
stubAnd the *other* other alternative is to talk to the pg-hackers and update the system catalog to promote an existing unique index to the primary key index.07:04
jtvoooh getting dirty now07:06
StevenKI keep getting this when I run tests on any branch locally:07:08
StevenKTest-modules with import problems:07:08
StevenK  lp.services.mailman.tests.test_lpmoderate07:08
StevenK(And one other)07:08
wgrantIt can't find blah.blah.mailman.monkeypatches, or something like that?07:08
wgrantThat error mysteriously vanished when I reinstalled and did a clean rf-setup.07:09
StevenKwgrant: Ah ha07:38
StevenKwgrant: Just to be clear, you mailed ohloh and asked them to kick their LP import?07:45
wgrantStevenK: I posted in the forum as they suggest.07:46
wgrantThey seem to kick them pretty quickly.07:46
wgrantI wonder if they'll have to do another full re-import (which takes like a month)07:47
jtvstub: http://paste.ubuntu.com/512180/ is what I have so far—running tests now08:02
wgrantjtv: That looks rather evil.08:03
jtvwgrant: stop, you're making me blush08:04
wgrantLess evil, however, than an email I just received from my university.08:04
jtv?08:04
wgrantIt was apparently generated by a recent Microsoft Office product, and is a fairly short largely textual email. The text/plain version is <1KiB. The text/html version is 14KiB, contains 53 XML namespace declarations, and 6KiB of CSS.08:04
stubIt is evil, but also something I was considering :) Certainly needs to go past upstream though - everything that needs to be updated may not be obvious.08:05
jtvstub: absolutely—I only found out about the pg_index part because \d didn't pick up the change.08:05
jtvwgrant: that's actually pretty good.  Last time I did that sort of analysis, it went something like 10:1 for some very basic HTML cleanups such as not declaring the font for every paragraph, and then it was another 10:1 for the cleaned-up HTML against the text.08:06
wgrantjtv: 53 NAMESPACES.08:10
jtvThat may be a tad on the high side, yes.08:10
jtvThey probably just couldn't be bothered to see which ones were really needed.08:11
wgrantIndeed.08:11
jtvAfter all, who doesn't want flashing Microsoft logos with a half-functional copy of their website embedded in their letters?08:11
jtvOr something.08:11
stublifeless: When you say 'the OOPS rate has tripled', is that ongoing or are you referring to the spikes during and just after the upgrades?08:23
lifelessstub: its ongoing08:27
stubHmm... wasn't aware it was that much.08:27
lifelessdaily oops reports - we were at a few hundred, we're at 1.mumble K08:28
lifelessits noisy too, not flat08:28
wgrant+ppas and the person picker could well make up most of that, though.08:28
stubOr maybe we have just tripled our throughput - the DB load is still half what we used to see and I don't know why ;)08:28
lifelessstub: we should normalise by requests/day - I have a bug open for that on the oops summaries08:29
lifelessok, tuolumne is doing some -weird- aggregation here - https://lpstats.canonical.com/graphs/OopsEdgeHourly/20100914/20101014/08:29
stublifeless: Oh... and we might be getting a lot of OOPS reports from newly enabled cronscripts, including the doubling up of OOPSes from some scripts. If we just look at timeouts though, the cronscripts won't contribute to that.08:30
lifelessstub: the upgrades - https://lpstats.canonical.com/graphs/OopsLpnetHourly/20100914/20101014/08:30
lifelessstub: I mispoke, I should have said 'timeout rates have tripled'08:32
stubYer, and those spikes helpfully making the rest of the graph unreadable :-P I agree it looks like hard timeouts have increased significantly, and user generated errors too08:33
lifelessstub: the ppa search is a major one08:33
stubSo this was for pre-release, so we can't blame increased traffic from 10/1008:33
lifeless1000 a day08:33
stubI haven't followed the PPA search issues - do you have a bug # handy?08:34
lifelesshttps://bugs.edge.launchpad.net/soyuz/+bug/65912908:34
_mup_Bug #659129: Distribution:+ppas timeout in PPA search <dba> <timeout> <Soyuz:Triaged> <https://launchpad.net/bugs/659129>08:34
lifelessI tagged it dba :)08:34
lifeless(only this morning though - not digging at you)08:34
lifelessisn't SourcepackagePublishingHistory a big table ?08:38
wgrantMaybe 10-15 million records?08:40
stubyup08:40
lifelessSELECT DISTINCT archive FROM SourcepackagePublishingHistory WHERE status IN (2, 1)08:40
wgrantIs that the package cache updater?08:40
lifelessthats the ppa search query08:40
wgrantThat can't be the whole query.08:41
lifelessno, its a in clause08:41
lifelesswgrant: see the bug I linked08:41
wgrantBut still, that's indexed.08:41
lifelessTime: 1265.807 ms08:41
lifeless6690 rows08:42
lifelessits not an obvious cause for 15 second queries, but its a tad slow.08:42
lifelesswhats annoying is that the query in the OOPS runs in 1.5s on staging08:42
lifelessso I can't reproduce08:43
lifelessstub: how long does it take on the prod slaves?08:54
stubJust over 2 seconds08:55
lifeless><08:57
lifelesson all ?08:57
stubYup. I can run the query and return the 6733 results to Bangkok in 2 seconds.08:57
lifelessdamn08:58
stub2.7 seconds on a cold slave08:59
lifelessactually hitting up https://edge.launchpad.net/ubuntu/+ppas?name_filter=munin times out though08:59
stubThat would be doing a different query, or is the filtering done client side?09:00
lifelessslightly different yes09:00
lifeless(Error ID: OOPS-1747ED330)09:00
=== almaisan-away is now known as al-maisan
lifelesswaiting for that to sync09:06
mrevellHello09:06
jmlhi09:07
=== al-maisan is now known as almaisan-away
=== almaisan-away is now known as al-maisan
lifelessmorning jml09:12
lifelessgrrr oops syncing :<09:13
jmllifeless: good morning09:13
jmlmwhudson: thanks for doing the branch-distro thing09:17
mwhudsonjml: it's probably still failing intermittently09:18
jmlmwhudson: I had been meaning to ask, the failures in the bug report, do they require manual intervention?09:18
mwhudsonjml: no09:18
mwhudsonactually seems to be going currently09:19
mwhudsonjml: well, the script needs restarting, that's all09:19
jmlmwhudson: what's the intermittent failure then?09:19
jmlmwhudson: ahh... that's manual enough for me :)09:19
mwhudsonjml: intermittent, as in, until the losas notice09:19
stublifeless, wgrant: Huh. SourcepackagePublishingHistory is only 1.2 million records. I thought it was bigger too.09:19
stubThink I must have been confused with BinarypackagePublishingHistory, which is 11 million09:20
jmlmwhudson: I can't tell you how keen I am to make this much a fire-and-forget operation for next time09:20
mwhudsonjml: well, you saw my advice on that front i guess09:21
jmlmwhudson: rather than a multi-person project09:21
gmbjtv: Hi. Edwin asked me to check with you about the bug you're still qa-ing. Any news?09:21
jmlmwhudson: yeah, thanks09:21
jtvgmb: yes, the build farm is now finally up and running.  And now something else is broken.09:21
gmbAh. Doubleplusungood.09:22
jtvgmb: I'm leaving out some other breakages for brevity.09:22
lifelesslosa ping - where is OOPS 1747ED330 ?09:22
mthaddonlifeless: erm, context?09:23
gmbjtv: Anything i can do to help?09:23
wgrantstub: Er, yes, I mixed them up.09:23
wgrantOops.09:23
lifelessmthaddon: sorry; we're trying to track down the highest timeout since pg8.409:23
lifelessmthaddon: thats an OOPS I triggered 24 minutes ago09:23
lifelessbut lp-oops isn't showing it09:23
mthaddonlifeless: and what do you mean by "where is"? which server is it on, or you can't find it?09:23
lifelessmthaddon: I guess I mean 'has it rsynced across, has the injection into lp-oops completed' - I'm very vague about where to look to figure this out myself :(09:24
mthaddonoh great, edge4 and edge5 are using the same OOPS prefix09:25
mthaddonlifeless: you should familiarise yourself with the OOPS prefix system I think - very useful for tracking this kind of stuff down09:25
lifelessmthaddon: I'll file a bug about the fact the overlap wasn't detected09:26
lifelessmthaddon: I rewrote part of it recently ;)09:26
lifelessmthaddon: but the operational deployment is a bit different09:26
stubThat 'stable has test failures' in the topic is old now, right?09:27
lifelessI don't know :)09:27
=== stub changed the topic of #launchpad-dev to: Launchpad Development Channel | Week 4 of 10.10 | PQM is Release-Critical; devel is closed (Release manager: EdwinGrubbs) | firefighting: - | https:/​/​dev.launchpad.net/​ | Get the code: https:/​/​dev.launchpad.net/​Getting
stubIts a lie anyway - if there are failures nobody is fighting the fire ;)09:28
mthaddonlifeless: I don't see an OOPS with that ID on either edge4 or edge5 :/09:28
mwhudsonjml: in other news, a longer lead in time on new dev would perhaps allow a more thorough qa, which *might* have caught the other problem09:29
lifelessmthaddon: filed https://bugs.edge.launchpad.net/launchpad-foundations/+bug/659752 about the overlap aspect09:29
_mup_Bug #659752: duplicate oops prefixes are not detected in production-configs <Launchpad Foundations:New> <https://launchpad.net/bugs/659752>09:29
jmlmwhudson: I don't quite get it.09:29
mwhudsonjml: thumper tested his branch on like 1% of package branches09:30
mwhudsonif he'd tested on 10%, it might have found the bug i'd reported09:30
mwhudson(probably not though)09:30
thumperit seems there were some maverick branches that hadn't been scanned09:31
mthaddonlifeless: I'm not really sure how else to track this OOPS down if it doesn't appear on either of the two server with the "ED" OOPS prefix09:31
thumperI poked them to get scanned09:31
thumperwhich seemed to make them continue09:31
thumperwe are just of 13K through09:31
thumperwhen it fails, it fails after the restacking09:32
thumperso the failing ones just need to be scanned09:32
lifelessmthaddon: fair enough09:32
mwhudsonthumper: one of the branches i poked at seemed broken09:32
thumperopenoffice.org?09:32
lifelessmthaddon: I'm assuming that you mean you looked on the appserver itself when you say that ?09:32
mwhudsonno, the one in the bug report09:32
lifelessmthaddon: if so thank you very much for prodding.09:32
thumperok09:32
mwhudsoni didn't poke very hard09:32
stubmthaddon: How about 1746B1391 which also hasn't synced?09:32
* mwhudson back to chessy drama tv09:33
mthaddonlifeless: yeah, looked on both appservers edge4 and edge509:33
lifelessmthaddon: do you need a merge proposal to allocate a new prefix for edge5, or are you doing that?09:33
mthaddonlifeless: I'll take care of it09:33
lifelessmthaddon: ok, thanks.09:33
mthaddonstub: don't see that one on lpnet2 either :(09:34
lifelessmthaddon: I have a note here to check that we're still ontarget for the 18th for golive of qastaging09:35
mthaddonlifeless: there have been some delays because the DB build for it was causing blocking problems for the staging DB09:36
mthaddonlifeless: so I'm not sure if we'll still make the 18th09:36
stublifeless: So the PPA search is still timing out on the COUNT() in the bug report, and that query takes 40+ seconds, and I've added the solution to the bug report. Would be nice to know we are not throwing OOPS reports away though ;)09:37
lifelessstub: didn' you just try the count() and have it fast on prod etc?09:37
lifeless(it was fast on staging)09:38
wgrantI wonder how much of the PPA publisher's time is spent in domination.09:38
wgrantThat's *really* slow at the moment, since it blows away the cache a couple of times for each (suite, arch).09:38
lifelessstub: I'm wondering if we're facing a systematic difference between staging and prod making staging unsuitable for evaluating performance09:39
stublifeless: SELECT DISTINCT archive FROM SourcepackagePublishingHistory WHERE status IN (2, 1), which was the proceeding query in my scrollback when you asked09:39
lifelessah09:39
lifelessso on staging09:39
lifelessSELECT COUNT(*) FROM Archive, Person, ValidPersonOrTeamCache WHERE Archive.purpose = 2 AND Archive.distribution = 1 AND Person.id = Archive.owner AND Person.id = ValidPersonOrTeamCache.id AND Archive.id IN ( SELECT DISTINCT archive FROM SourcepackagePublishingHistory WHERE status IN (2, 1)) AND Archive.fti @@ ftq('munin') AND Archive.private = FALSE AND Archive.enabled = TRUE AND (1=1)09:39
lifeless;09:39
lifeless count09:39
lifeless-------09:39
lifeless    1109:39
lifeless(1 row)09:39
lifelessTime: 1204.301 ms09:40
lifelesswgrant: care to whip up a patch for  https://bugs.edge.launchpad.net/soyuz/+bug/659129 with stubs tweaks ?09:40
_mup_Bug #659129: Distribution:+ppas timeout in PPA search <dba> <timeout> <Soyuz:Triaged> <https://launchpad.net/bugs/659129>09:40
wgrantlifeless: I'd love to, but I have five projects due on Monday, so I probably shouldn't.09:40
lifelessstub:  \d validpersonorteamcache09:41
lifelessERROR:  column "reltriggers" does not exist09:41
lifelessLINE 1: SELECT relhasindex, relkind, relchecks, reltriggers, relhasr...09:41
lifeless                                                ^09:41
lifelesswgrant: ok, no worries.09:41
stublifeless: postgresql client package needs to be upgraded on devpad09:42
stub8.3 client doesn't know about 8.4 system table updates09:42
lifelessah09:43
bigjoolsand it even tells you that in the client at startup :)09:45
bigjoolslifeless: you've been busy duping bugs, thanks09:47
lifelessbigjools: I picked a newer one but it had more detail, hope that is ok09:48
lifelessbigjools: and sorry for the confusion about the % bug09:48
bigjoolslifeless: sure thing09:48
bigjoolslifeless: no worries.  you did make me double check it.  Twice.  :)09:48
lifelesshah :)09:49
bigjoolsI know I'm a little scatterbrained....09:49
bigjoolslifeless: btw are you fixing that ppa search timeout?09:50
lifelessstub: so any idea why the count is fast on staging?09:50
lifelessbigjools: certainly not tonight09:50
bigjoolsit would be nice to make the release09:50
lifelessbigjools: stub has a proposed fix for the query09:50
bigjoolsI saw, that's great09:50
lifelessbigjools: should be near trivial to apply it (ignore my comment about validpersonorteamcache for now)09:50
bigjoolslifeless: btw your comment on the ML thread about not joining via TeamParticipation confused me - it's not needed I don't think?09:51
lifelessbigjools: if you or someone in non-asia timezone can get a fix together it should be possible to make the release.09:52
lifelessthough thats only 12 hours away now09:52
lifelessI know that I can't make the release; to tired to be coding right now, and not enough time to run the test suite after I start work before the release ;)09:52
lifelessbigjools: teamparticipation - its needed because 'team X has open subscription' can be achieved two ways:09:54
lifeless - directly and indirectly09:54
bigjoolseek09:54
lifelessfor direct, the team flag matters09:54
bigjools-> - ops, private matter09:54
lifelessfor indirect the same flag on *any team that is a member of the team*.09:54
bigjoolslifeless: do you remember where in the code that slow ppa query is@?09:58
* bigjools curses cold fingers09:58
lifelessbigjools: no, I hadn't looked for it09:59
lifelesssorry09:59
bigjoolsnp, was just looking for a time-saver :)09:59
lifelessyeah, I wish I had one for you10:00
bigjoolsfound it10:06
bigjoolsstub: in your fixed query you say joining to Person is not necessary, but I think it is as it's ordering on Person.name10:08
lifelessbigjools: its not needed for the count(*); this points at a storm issue10:08
bigjoolslifeless: interesting - I dunno how it could know that10:09
lifelessneither do I :)10:09
lifelessbut the way we use .count() implies that we need to teach it, or to start using separate query definitions for estimation, sizing and results10:10
lifelesswe may need to do that anyway.10:10
lifelessstubs comment that the distinct is the key thing suggests that ignoring the Person usage is reasonable10:11
bigjoolslifeless: the batch nav would need fixing to do that10:13
bigjoolswould be a nice fix though10:14
bigjoolswe can supply fake values for huge sets where preciseness is not useful10:14
lifelessthere is an estimator in the code base10:14
lifelesswhich uses the table stats to make an estimate10:14
bigjoolsI wonder what someone thought that DISTINCT was doing10:15
lifelessrefactored code perhaps10:16
bigjoolslifeless: how long are you around for?10:17
* bigjools grumbles at "make schema" building wadl*310:18
lifelessbigjools: if you need me, I can be around10:18
lifelessbigjools: if you don't, given there is a team lead meeting in < 8 hours, I won't be around for long at all10:18
bigjoolslifeless: ok I'm just running tests on this trivial change, if you can bless the branch that'd be good10:18
* bigjools will be 5 mins10:19
lifelessok10:19
bigjoolsjust doing the MP10:19
bigjoolslifeless: https://code.edge.launchpad.net/~julian-edwards/launchpad/slow-ppa-search-bug-659129/+merge/3830710:21
lifelessrc blessed10:21
bigjoolsta10:22
bigjoolslifeless: can you r= it as well :)10:22
lifelessno, lp won't let me.10:23
lifelessjml: can you?10:23
bigjoolsOo10:23
lifelessbigjools: only one vote type per person10:23
bigjoolsprob cause the diff is not ready10:23
bigjoolswe need a rabbit10:24
wgrantYou could teach ec2 to interpret 'code release-critical' properly.10:24
gmbBigjools: I'll take a look10:26
bigjoolsah thanks gmb10:27
bigjoolsstill no diff.... is the scanner foobar?10:27
wgrantDidn't we just branch Ubuntu?10:27
bigjools /o\10:28
lifelessyes10:28
lifelessbut the branch of ubuntu has staggering code10:28
bigjoolsso, last time the backlog was hojw many days? :)10:28
wgrantBye bye scanner for the next month. Unless that thing got CP'd?10:28
* bigjools back in 510:29
gmbbigjools: How many lines should there be in the diff?10:29
gmbI still see "updating diff" but there's also a diff...10:29
wgrantI see no "updating diff" any more.10:29
gmb... and now the message has gone.10:29
gmbRight.10:30
wgrantNice.10:30
gmbHurrah for confusing-ui.10:30
gmbbigjools: Anyway, r=me.10:30
gmbthumper: Edwin-afk asked me to check on the status of https://code.edge.launchpad.net/~thumper/launchpad/better-errors-for-translate-path/+merge/38178 whilst he slept. Is it in EC2 atm?10:31
bigjoolsgmb: ta10:32
stubbigjools: Keep the Person join if you want - it doesn't slow things that much. The DISTINCT is the killer.10:36
bigjoolsstub: right.  I can't work out why it was needed for an IN query as well10:36
bigjoolsfix heading to PQM now10:37
stubbigjools: It may well have been an optimization. I think PG 8.4 query planner handles IN better now.10:37
bigjoolsgood to know, ta10:38
jmllifeless: can I what?10:38
lifelessjml: do a code review (which gmb has done)10:53
jmllifeless: good good :)10:53
lifelesshalt()10:53
gmbjtv: So, talk to me (as an Edwin proxy). What's the situation w.r.t. breakages and how likely are these things to become rollout blockers?11:01
gmb(Note that I have *zero* context besides Edwin saying you had bug that was qa-needstesting)11:01
jtvgmb: we're still working to get staging fully operational for our purposes, which is kind of a prerequisite for a rollout.11:01
gmbAh, right.11:02
jtvOne thing we identified is that the librarian gc grace period needs to be long enough to keep essential files present over the lifetime of a staging copy.11:02
jtvI don't know if there are any other branches waiting for Q/A that would be affected by this.  Possibly not; most buildfarm Q/A can happen on dogfood.11:03
wgrantCan DF not be used?11:03
jtvJust one thing missing on dogfood: codehosting.11:03
wgrantThere's a hack for that.™11:03
wgrantOh, but I guess you need the scanner. Sad.11:04
jtvWell we need to trigger an ITipChanged event and watch it fire off a buildfarm job.11:04
jtvExactly.11:04
wgrantYou can't QA the scanner on staging and manually create the records on DF?11:06
jtvgmb: it's _probably_ safe to roll back my revision, but again we can't verify that assertion in staging's current state.11:06
gmbjtv: Right. Deep joy.11:06
gmbjtv: So, once staging's operational for you, your plans are to do QA and / or check that you can roll back safely?11:07
* gmb stabs wildly in the dark11:07
jtvgmb: a brilliant guess11:07
jtvI'm still betting on forward rather than back.11:07
gmbCool.11:08
jmlbigjools: are you going to be working on the buildd-manager branch of death today?11:09
* jml pokes network drivers… again11:11
bigjoolsjml: otp, but yes11:11
=== jtv is now known as jtv-afk
jmlbigjools: cool. just trying to plan my day.11:14
bigjoolsjml: I'll start on it again in about 30 mins, do you want to join in?11:30
jmlbigjools: sure11:38
bigjoolsgreat - just wading through the mountain of email first11:39
wgrantbigjools: That branch made me scream, but then I noticed that you killed buildd-slavescanner.txt, so all was forgotten.11:39
bigjools:)11:39
bigjoolsit's working on dogfood, did I mention that? :)11:39
wgrantYou did. That's good news.11:40
* jml out arranging lunch – it's all about timing the interruptions.11:40
bigjoolsargh, this person picker timout is seriously pissing me off11:40
bigjoolslifeless: is that on your radar?11:41
mwhudson_looks like branch-distro finished?11:58
* gmb lunches11:58
jmlmwhudson_: cool! how can you tell?11:58
wgrantFinished, or failed again?11:58
mwhudson_https://code.edge.launchpad.net/ubuntu/natty/ has a big number on it11:58
mwhudson_and it's not changing11:59
mwhudson_i guess it might have fallen over again11:59
thumpergmb: Revision: 9885 of db-devel, but buildbot seems down12:03
* thumper -> bed12:03
wgrantbigjools: Are we going to need something like CustomUploadPublishingHistory, maybe?12:03
bigjoolsno idea, I've not thought about it12:04
wgrantAh.12:04
bigjoolspossibly, though12:04
wgrantI think it would probably make a lot of things suck less. But it needs thought.12:05
deryckMorning, all.12:05
StevenKgmb: Hi! Can you look at https://code.edge.launchpad.net/~stevenk/launchpad/db-add-derivedistroseries-api/+merge/38189 again? I've made the changes you suggested.12:30
EdwinGrubbsthumper, lifeless: do you know if bug 658124 can be marked qa-ok? It's on staging already, but stub is not around.12:57
_mup_Bug #658124: Revision karma allocator glacial and needed to be disabled <qa-needstesting> <Launchpad Bazaar Integration:Fix Committed by stub> <https://launchpad.net/bugs/658124>12:57
EdwinGrubbsjtv-afk: how goes QA?13:00
jmlEdwinGrubbs: both are asleep. It's 1am in NZ13:05
EdwinGrubbsjml: you wouldn't happen to know about thumper's two branches that are release-critical approved but not landed?13:06
jmlEdwinGrubbs: not off the top of my head.13:07
gmbEdwinGrubbs: I tried to check in with thumper but he'd already left.13:08
gmbEdwinGrubbs: jtv-afk's situation is thus:13:09
gmb<gmb> jtv: So, talk to me (as an Edwin proxy). What's the situation w.r.t. breakages and how likely are these things to become rollout blockers?13:09
gmb (Note that I have *zero* context besides Edwin saying you had bug that was qa-needstesting)13:09
gmb<jtv> gmb: we're still working to get staging fully operational for our purposes, which is kind of a prerequisite for a rollout.13:09
gmb<gmb> Ah, right.13:09
gmb<jtv> One thing we identified is that the librarian gc grace period needs to be long enough to keep essential files present over the lifetime of a staging copy.13:09
gmb I don't know if there are any other branches waiting for Q/A that would be affected by this.  Possibly not; most buildfarm Q/A can happen on dogfood.13:09
gmb<wgrant> Can DF not be used?13:09
gmb<jtv> Just one thing missing on dogfood: codehosting.13:09
gmb<wgrant> There's a hack for that.™13:09
gmb Oh, but I guess you need the scanner. Sad.13:09
gmb<jtv> Well we need to trigger an ITipChanged event and watch it fire off a buildfarm job.13:09
gmb Exactly.13:09
gmb<wgrant> You can't QA the scanner on staging and manually create the records on DF?13:09
gmb<jtv> gmb: it's _probably_ safe to roll back my revision, but again we can't verify that assertion in staging's current state.13:09
gmb<gmb> jtv: Right. Deep joy.13:09
gmb jtv: So, once staging's operational for you, your plans are to do QA and / or check that you can roll back safely?13:09
gmb* gmb stabs wildly in the dark13:09
gmb<jtv> gmb: a brilliant guess13:09
gmb<jtv> I'm still betting on forward rather than back.13:09
gmbEdwinGrubbs: Not sure if that helps you any.13:09
EdwinGrubbsgmb: well, it confirms that it is as bad as I thought.13:11
wgrantWhat's actually broken about staging?13:14
gmbNo idea.13:15
wgrantI see a TTBJ in progress there as we speak.13:16
wgrantAh, it just restarted.13:16
wgrantWell.13:16
wgrantI think the chroot is missing.13:16
wgrantEasy fix.13:16
wgrantYes, the staging DB just needs to have a new chroot thrown at it.13:18
wgrantSo, unless there's some issue deeper than the obvious fatal one, it should take roughly two commands and ten seconds to fix.13:21
jmlone of these days I'm going to think seriously about the build farm UI13:23
wgrantOh?13:24
jmle.g. that end users care about https://edge.launchpad.net/builders and actually check the page smells wrong to me13:25
wgrantI think we should wait and see what happens now that multi-day queues are rare.13:27
jmlwell I'm hardly proposing immediate action13:27
jmla page that showed the queue, otoh, I could see being useful to end-users and operators alike13:27
wgrantThat sounds like my bug #15575813:28
_mup_Bug #155758: Global PPA +builds would be useful <ppa> <ui> <Soyuz:Triaged by julian-edwards> <https://launchpad.net/bugs/155758>13:28
=== jtv-afk is now known as jtv
jtvhi gmb, hi EdwinGrubbs, I'm back from dinner13:30
jmlwgrant: right13:30
EdwinGrubbsjtv: I'm hoping staging works for you now.13:31
jtvno, not yet13:31
jmlwgrant: I guess in general I'm thinking that we should think about operator UI and user UI as being two distinct things that only sometimes overlap13:31
wgrantjtv: Is there more to the staging breakage than the obvious chroot LFA expiration?13:32
jtvwgrant: I was about to ask how mthaddon had fared13:33
jtvmthaddon: staging is back… have you tried running those commands to upload the new chroot again?13:33
mthaddonjtv: I haven't no13:45
jtvmthaddon: could you?13:45
wgrantJust grabbing the current prod one and manage-chroot.py'ing it in?13:45
mthaddonrunning it now13:46
mthaddonjtv: and done13:46
jtvmthaddon: yay!  Thanks.13:46
wgrantSuccess.13:47
jtvmthaddon: and now it's producing output.  I'll throw in another "thanks" for good measure.13:47
mthaddonyer welcome13:47
jtvwgrant is obviously watching the same page I am.  :)13:47
wgrantIndeed. But I'm a little confused as to how clementine is involved. I thought that was used by the server team for stuff.13:48
jtvwgrant: are you saying it's not supposed to be a staging builder!?13:49
jtvEdwinGrubbs, gmb: yay!  qa-ok.  Only took a few seconds once everything was set up.  :)13:51
EdwinGrubbsjtv: yipeee13:51
wgrantI.. don't know.13:51
=== al-maisan is now known as almaisan-away
jtvwgrant: I've had clementine for these jobs before.  Can't say if that was IS's intention, but that's how it's been working.13:53
bigjoolsclementine is the staging builder13:56
jtvphew13:56
jtvand build it did.13:56
jtvI got my template.13:57
jtvShouldn't feel like such an achievement for something we've already had in production for a while, should it?  :)13:57
jtvSo many moving parts.13:57
bigjoolsthe build farm is complicated...13:57
bigjoolsok jml I am about to start hacking on the BFH13:59
jtvjam: heh, I just googled for something in libpqxx and found it on arbash-meinel.com :)14:02
jmlbigjools: \o/14:04
StevenKgmb: Did you see my gentle prod?14:05
StevenKgmb: You did, never mind. Thanks for the review.14:06
EdwinGrubbswallyworld_, rockstar: ping14:08
bigjoolswgrant: https://edge.launchpad.net/ubuntu/+source/linux-lts-backport-maverick14:12
bigjoolsspot the problem14:12
wgrantbigjools: Already commented.14:12
bigjools:)14:13
bigjoolsyour diagnosis is the same as mine14:13
wgrantbigjools: Right, clementine is clearly a staging builder... but I also saw it being used to publish Maverick's EC2 AMIs. So I'm a little confused.14:16
wgrantMaybe there are two clementines.14:16
* jtv suppresses mumbled remark about her sister14:20
jtv—having listened to far too much Tom Lehrer for his own good14:20
=== Ursinha-afk is now known as Ursinha
EdwinGrubbsrockstar, abentley: ping14:52
abentleyEdwinGrubbs: pong14:52
EdwinGrubbsabentley: can you QA bug 634149 and bug 639785 that thumper landed?14:53
_mup_Bug #634149: Poor error messages from the smart server <codehosting-ssh> <qa-needstesting> <Launchpad Bazaar Integration:Fix Committed by thumper> <https://launchpad.net/bugs/634149>14:53
_mup_Bug #639785: InvalidProductName when trying to access some branches in LP <oops> <qa-needstesting> <Launchpad Bazaar Integration:Fix Committed by thumper> <https://launchpad.net/bugs/639785>14:53
deryckallenap or gmb, how should I run test_bugtask_status?  I get LayerIsolationError about the librarian being killed or hung.14:53
deryckI've tried all manner of ./bin/test with test_bugtask_status14:54
allenapderyck: Can you paste the error? I would use bin/test -vvct test_bugtask_status (and I have recently because I've changed it).14:55
=== almaisan-away is now known as al-maisan
abentleyEdwinGrubbs: I'm not sure.  The merge proposal doesn't describe how to demo the fix.14:55
gmbderyck: What allenap said.14:56
EdwinGrubbsabentley: well, if we can't QA it, I guess we can't release it.14:56
deryckallenap, gmb --  http://pastebin.ubuntu.com/512400/14:56
deryckdevel should be up to date for me, but confirming that now.14:57
bacabentley, adeuring, allenap , bac, danilo, sinzui, deryck, EdwinGrubbs, flacoste, gary, gmb, henninge, jelmer, jtv, bigjools, leonard, mars, noodles775: Reviewer Meeting in 3 minutes14:57
allenapderyck: Have you tried removing pid files, or even (gasp) rebooting?14:58
deryckheh14:58
deryckgasp indeed! ;)14:58
bigjoolsderyck: kill all existing librarians then remove the pid file14:59
gmbderyck: Again, what the other guy said. I can't reproduce locally...14:59
gmbreproduce *the error*14:59
bigjoolsit happens to me occasionally14:59
* bigjools chuckles at gmb14:59
* gmb saw that coming14:59
bigjools...15:00
gmb*sigh*15:00
gmbOh, hey, grep works better if you spell things right. Who'da thunk?15:00
deryckhmmm, no luck.15:01
deryckrm'ed /var/tmp/testrunner-librarian.pid, still have the error15:01
deryckdon't show the librarian running via ps15:01
deryckoh, well.  Will dig in more after reviewer meeting15:02
allenapderyck: Try lsof +D $tree_dir to see if anything is still running there.15:03
derycknothing running except gvim :-)15:08
lifelessderyck: is that plain devel or do you have some changes?15:10
derycka-ha!  rm /var/tmp/fatsam.test/librarian.pid did the trick.15:10
derycklifeless, plain devel.15:10
deryckbut I've got it now, finally.15:10
lifelessthats very odd; you should have been getting a error from setUp15:12
lifeless(layers.py line 589)15:12
bigjoolslifeless!15:20
lifelesshaving trouble sleeping15:21
lifelessso hey, is https://devpad.canonical.com/~lpqateam/qa_reports/deployment-db-stable.html down for other people ? I get connection refused15:22
bigjoolsyeah loolks like devpad is misbehaving15:25
bigjoolsjml: ok just looked at your patch *finally* and it appears I hadn't pushed up the latest revision for you to play with :(15:31
jmlbigjools: I'm not surprised, it looked wrong :)15:31
jmlbigjools: but I reckon my patch is good enough for illustration15:31
bigjoolsyep15:31
bigjoolsthanks15:31
EdwinGrubbsUrsinha, matsubara: do you know of any oopses or or other problems that might be a rollout blocker?15:33
marsabentley, are you still having problems with 'make check' failing on your local system?15:33
UrsinhaEdwinGrubbs, I'm checking right now15:33
marsabentley, in reference to bug 62974615:33
_mup_Bug #629746: make check fails with "A test appears to be hung. There has been no output for 600 seconds." <build-infrastructure> <Launchpad Foundations:Triaged by mars> <https://launchpad.net/bugs/629746>15:33
abentleymars: I dunno-- I stopped using it.  bin/test has always worked fine.15:34
marsabentley, ok, I'll flag it as Won't Fix15:34
abentleymars: !!!15:34
abentleymars: Why would you do something like that?15:34
abentleymars: make check uses test_on_merge, which turns out to be completely different code from bin/test.15:35
marsabentley, well, 'make check' is a target intended for automated test suite use.  After discussing this with the other build people, we decided that bin/test for local dev was fine, and save 'make check' for the bots15:36
abentleymars: The difference in behavour between bin/test and test_on_merge worries me.15:37
UrsinhaEdwinGrubbs, devpad is down, I can't keep checking right now :/15:37
Ursinhait should be back soon, according to losas15:37
Ursinhaso I'll have an answer soon15:37
marsabentley, it only has a call to 'make schema' in between, and it calls xvfb-run15:37
abentleymars: last I saw, test_on_merge was its own test runner.15:38
marsyes, unfortunately15:38
bigjoolsjml: I reckon _with_timeout could be a nice decorator in lp.services.twisted15:38
marsabentley, it checks the child process' exit status15:38
marsabentley, and kills hung tests15:39
jmlbigjools: interesting thought. it assumes that the Deferred has a nice canceller defined, but that might not be a problem.15:39
bigjoolsjml: or perhaps a context manager15:39
abentleymars: my mistake.  I guess I saw lots and lots of Python and assumed it was a test runner.15:40
jmlbigjools: yeah. maybe. I still find it hard to get excited about them.15:41
abentleymars: still, I wonder-- are these tests not displaying output for 15 minutes and then succeeding on my box?15:41
bigjoolsjml: I know what you mean, but the code would look much nicer if nothing else :)15:42
marsabentley, I would say run the test in isolation with bin/test to see15:42
jmlno opinion on that yet15:42
bigjoolsjml: oh I was going to ask - does our version of Twisted have that Deferred cancellation in it for the one callRemote returns?15:43
jmlbigjools: I don't know off the top of my head. the NEWS file will mention it.15:43
abentleymars: Do you think testPPAUploadResultingInNoBuilds is the test in question?15:44
marsabentley, no, I can't be sure.  The other problem with test_on_merge.py is that output from hung tests, etc. gets buffered15:44
marsabentley, usually one needs to run the sub-suite with bin/test15:45
marsbin/test does the right thing: hangs, then prints to the console when you hit Ctrl-C15:45
abentleymars: Perhaps you should send SIGINT before signal 15, then?15:47
marshmm, I don't know, maybe15:47
abentleymars: so by sub-suite, you mean test_ppauploadprocessor?15:48
marsyes15:48
marsand if that does not reproduce it, step one suite higher in the chain again15:48
bigjoolsjml: yes, it does15:48
jmlbigjools: cool.15:49
* bigjools hax0rs15:49
marsbenji, leonardr, I think I have an idea about cleaning up windmill, if that is indeed the problem15:55
benjimars: great15:56
marsI'll whip up a patch15:56
jamjtv: do you have the link?15:58
=== Ursinha is now known as Ursinha-afk
=== Ursinha-afk is now known as Ursinha
jtvjam: what, for the libpqxx stuff?  Not anymore…  I've got a little design problem with notification listeners in libpqxx so I thought I'd look up who uses them and how.16:10
=== Ursinha is now known as Ursinha-lunch
jtvgary_poster: thanks for following up on the storm issue16:10
gary_posternp jtv16:11
jamjtv: hmmm, when I search for it, I get an old .weave file for a project I used to work on. Interesting to have text-readable repository content get indexed16:12
bigjoolsjml: btw did you look into how to pass a connection timeout value to the reactor's connect method?16:13
jtvjam: I think there was mention of university stuff.  On an unrelated note, I'm sorry there's so much trouble getting the BranchRevision patch through.16:14
jmlbigjools: it's still the same as yesterday: patch Twisted or clone & mutate the Proxy class.16:14
bigjoolsjml: yes I realise that :)  Just wondered if you'd done anything.16:14
jmlbigjools: oh, no.16:14
bigjoolsI think I found a problem with the decorator approach as well - it's kinda hard to pass different reactors for tests :(16:15
abentleymars: I can't reproduce the specific delay.  I have noticed the test suite seems to hang sometimes and then gets moving again, but I don't usually run with -vv, so I'm not sure where.16:16
jmlbigjools: good point16:17
bigjoolsjml: unless we decorate the whole class16:17
abentleymars: I worry that it might be because getUniqueInteger now has a random starting point.16:18
jmlbigjools: that seems like one of solutions in search of a problem16:18
bigjoolsyer16:18
jmlone of those, I meant to say16:18
bigjoolsI'm just looking for ways to make the code re-usable.16:18
jamjtv: well, modifying a 600M row table and having a hard-timeout on how long the upgrade can run is always going to be a bit of a problem :)16:18
jmlbigjools: well, it can be a function, rather than a method16:19
jtvjam: that's the thing—we're not doing anything that should take noticeable time.16:19
bigjoolsjml: that's the easy approach, yes16:19
jmldef cancel_on_timeout(timeout, d, reactor=None):16:19
jtvjam: dropping a table in postgres is at its core just dropping it from metadata, and leaving the existing rows untouched (until the next vacuum I guess—but we vacuum anyway)16:19
jamjtv: it is changing the primary key, which requires re-indexing16:20
jtvjam: that's the stupid thing.  No technical reason for that that we can think of.  It's just that nobody bothered to allow it yet.16:20
jtvjam: changing a primary key is a matter of dropping one constraint and adding another, which is really just a not-null plus a unique plus a little marker saying "this is the primary key."16:21
jtvjam: a primary key has basically no special meaning, except various scripts and slony like to work with the primary key by default.16:22
jtvjam: so stub came up with a good one… just ram the change into the system catalog.  Make it say that there's a primary-key constraint and that the existing index was made for it.  But that needs careful deliberation with pg-hackers.16:23
=== deryck is now known as deryck[lunch]
jamjtv: true, though I'd rather work with thumper to redesign the whole logic and turn 600M rows into <1M16:23
jam:)16:23
jtvjam: that's good too  :-)16:24
jtvIs that the "compression" scheme you mentioned in Prague?16:24
jamit would be interesting to get a dump of that content, and see how small it can be16:24
jamyes16:24
abentleyEdwinGrubbs: qa-ed.16:27
abentleyjam, speaking of that, can we chat?16:31
EdwinGrubbsabentley: thanks16:31
bigjoolsjml: success.  Now to write tests :)16:33
jmlbigjools: I don't know whether to be happy or sad.16:34
bigjoolsjml: DDT16:34
bigjoolsarf16:34
=== gary_poster is now known as gary-lunch
EdwinGrubbsgmb: are we still supposed to write up a rollout report? I don't see one for last cycle. https://wiki.canonical.com/Launchpad/RolloutReports16:42
=== benji is now known as benji-lunch
gmbEdwinGrubbs: Yes. https://wiki.canonical.com/Launchpad/RolloutReports/10.09. I just forgot to link to it.16:43
=== salgado is now known as salgado-physio
jcsackettEdwinGrubbs: ping.16:54
EdwinGrubbsjcsackett: hi16:54
jcsackettEdwinGrubbs: how do you feel about altering the codehosting_usage property on projects so it's set to LAUNCHPAD if products for the group are?16:55
jcsackettrationale is that we have a bug about showing the unknown code hosting message if there are no branches for the projectgroup products, but it seems odd to test branches when we're looking at usage.16:56
jcsacketti'm pinging you, EdwinGrubbs, since you most recently refactored that. (really nicely, btw).16:56
=== deryck[lunch] is now known as deryck
jcsackettalternatively right now i can just test the output of getBranches on a projectgroup and display the unknown message if it's 0; that just seems odd.16:59
EdwinGrubbsjcsackett: hmmm, maybe projectgroups need a special message when there are no branches to say that you can submit code on the following products that have codehosting turned on.17:00
marsleonardr, benji-lunch, here is a patch that should if the problem is the windmill suite: http://pastebin.ubuntu.com/512467/17:00
EdwinGrubbsjcsackett: I assume that if we change the codehosting_usage to LAUNCHPAD for the projectgroup, it will show a bunch of action links that don't apply.17:01
jcsackettEdwinGrubbs: fair point; the overview involvement menu will trigger, which is ridiculous.17:01
* jcsackett hadn't thought that through.17:01
marsleonardr, benji-lunch, create a new branch of your current work, apply this patch, push, and run with "ec2 test -o '-t whatever_the_failing_test'", see if the problem persists.  If it does not, try a full test run.17:01
leonardrwill do17:01
jcsackettEdwinGrubbs: i think a message about no branches and list of links to the products makes sense. just displaying the "we don't know" message seems underwheming to me.17:03
jcsackettthanks.17:03
=== bigjools is now known as bigjools-afk
=== beuno is now known as beuno-lunch
=== Ursinha-lunch is now known as Ursinha
=== benji-lunch is now known as benji
=== gary-lunch is now known as gary_poster
=== bigjools-afk is now known as bigjools
=== beuno-lunch is now known as beuno
barryhi guys, what's the story with python-psycopg2 for lp development on maverick?  launchpad-dependencies won't install because it requires < 2.0.1418:02
jmlg'night18:03
jtvjml: good night18:03
maxbbarry: manually install the lucid .deb, then install launchpad-dependencies18:11
barrymaxb: ah.  what are the prospects for updating to the maverick version of the package?18:14
maxbI am not the person to ask about that18:14
barrymaxb: gotcha, thanks.  maybe flacoste, gary_poster or sinzui knows?18:14
maxbThe underlying question is "How soon can we resolve our/Storm's unicode issues and be able to use PsycoPg 2.2?"18:14
gary_posterbarry, maxb, you need to revert to the older one.  stub has a task to do the update probably in the next month/cycle18:15
barrygary_poster: cool, thanks18:16
gary_posternp18:16
lifelessbigjools: what was the outcome of testing that query fix ?18:17
bigjoolslifeless: nothing else happened18:18
lifelessbarry: https://bugs.edge.launchpad.net/ubuntu/+source/psycopg2/+bug/65077718:18
bigjoolsit doesn't break functionality so there's no point worrying18:18
_mup_Bug #650777: operator does not exist: text = bytea <amd64> <apport-bug> <maverick> <psycopg2 (Ubuntu):New> <https://launchpad.net/bugs/650777>18:18
lifelessbigjools: ok18:18
lifelessbigjools: works for me18:18
bigjoolslifeless: we can do more investigation on the performance later18:18
lifelessack18:18
barrylifeless: thanks.  subscribed18:19
lifelessbarry: we have lucids version, which works, in the lp PPA18:19
barrylifeless: so i just need to uninstall the mav version and it should work?18:19
lifelessthere is an argument that 'lp is broken and this just shows it'.18:19
lifelessbarry: downgrade yeah18:20
barry+118:20
=== matsubara is now known as matsubara-lunch
bigjoolslifeless: https://lp-oops.canonical.com/oops.py/?oopsid=OOPS-1747S22718:26
bigjoolsthe fixed query is not the one that's timing out18:27
bigjoolsI smell a problem with the ValidPersonOrTeamCache view18:27
lifelessoh wow, lp-oops openid dance is speial now18:28
lifeless3 continue buttons18:28
bigjoolsyeah I had to log out/in18:28
bigjoolsI frickin hate openid18:28
lifelessyeah, the valid* caches have been the source of lots of timeouts18:29
lifelessthere's a validity clause for Person18:29
lifelesswhich you can incorporate into a storm query, guess we need the same for team18:29
* bigjools heads off for dinner18:30
bigjoolslaterz18:30
lifelessciao18:30
gary_poster(mars, look over here :-) ) flacoste: do you know if dogfood is on lucid now, or if not, when it will be?18:34
flacostegary_poster: only a losa or bigjools would know18:35
gary_posterok thanks flacoste18:35
gary_posterhuh, oh look, I haven't been on canonical irc all day :-P18:35
gary_posterlifeless: you mentioned to me a while ago that storm trunk had a bug that would bite us.  Do you remember what it was, and do you know if it has been resolved?  If it has been resolved, you can even ignore the first question if you want :-)18:39
elmolifeless/bigjools: try lp-oops now18:40
lifelessI don't think it has18:40
derycklifeless, hi.  Are you subscribed to the security mailing list that gets mail for security bugs?18:40
lifelesselmo: thanks18:40
lifelessderyck: I don't know18:40
derycklifeless, I posed a question for you in bug 638054, and then realized I wasn't sure if you would see it.18:40
lifelessderyck: I'm structurally subcribed to 'launchpad-project' ;)18:41
derycklifeless, but that doesn't get you security bugs.  non-obvious as that may be and all. ;)18:42
lifelesshuh, well I got the bug mail anyhow18:42
lifelessand I've replied just now18:42
gary_posterlifeless, "I don't think it has" was directed to me, I think; thank you.  Do you know what the issue was?  I'd like to mention it to jamu18:52
lifelesssomething like18:54
lifelessthere was this cache incoherency18:54
lifelessmm18:55
lifelessI know, its an XXX18:55
=== salgado-physio is now known as salgado
lifelesshttps://bugs.edge.launchpad.net/storm/+bug/61901718:55
_mup_Bug #619017: __storm_loaded__ called on empty object <Storm:Fix Committed by therve> <https://launchpad.net/bugs/619017>18:55
lifelessthats the bug I mentioned, i think18:56
lifelessnow to find the fallout18:56
lifelesshttps://bugs.edge.launchpad.net/storm/+bug/62061518:56
_mup_Bug #620615: please contact the developers <Storm:In Progress by niemeyer> <https://launchpad.net/bugs/620615>18:56
lifelesswe hit that one when we use storm with the earlier one fixed.18:56
lifelessIIRC18:56
gary_posterlifeless: thank you.  the title of the bug made me laugh.  OK, so to your knowledge, when that bug is fixed, we can switch to Storm trunk (via an official 0.18 or unofficial release)?19:01
lifelessderyck: my reply is  alittle brief - but all the context is in the rt19:01
lifelessgary_poster: I'm not aware of any other blockers19:01
gary_postergreat thanks again19:01
derycklifeless, ok, thanks for responding.  Brief is fine.  :-)  I'll look at the RT.19:02
=== matsubara-lunch is now known as matsubara
=== al-maisan is now known as almaisan-away
jcsackettabentley: ping19:33
abentleyjcsackett: OTP19:34
jcsackettnever mind then; rockstar, you available for a quick question?19:35
rockstarjcsackett, on the phone.19:35
rockstarjcsackett, abentley and I are on the phone together.  :)19:37
jcsackettrockstar: that's sort of what i guessed from the paired responses. :-)19:37
EdwinGrubbsjcsackett: ok, I think I can answer your question now.19:37
jcsackettEdwinGrubbs: i'm all ears.19:37
EdwinGrubbsjcsackett: if you go to https://launchpad.dev/$project/+branchvisibility, you can specify the visibility policy for multiple teams separately. You can also specify the default visibility for people not in one of those teams.19:38
abentleyjcsackett: back19:43
jcsackettEdwinGrubbs: can anyone with Edit permission for the product use that page?19:43
jcsackettabentley: i'm trying to answer a question that EdwinGrubbs has helped me out with a bit. namely, if a product has branches set as private to one team, can you make branches on the product for another team?19:44
abentleyjcsackett: I don't know a lot about branch privacy.19:45
jcsackettah. Edwin thought you might.19:45
abentleyjcsackett: I don't think that "private to one team" is a thing.19:46
lifelessdifferent teams can have private branches on the same product19:46
abentleyjcsackett: I'm pretty sure the enum is "private", "private by default" or "public".19:46
abentleyjcsackett: I don't think there's a team relationship.19:46
lifelessthe ability to make private branches is a commercial feature19:46
lifelessabentley: the policy is team based19:46
jcsackettlifeless: i know, i'm trying to answer a question for a commercial team.https://answers.edge.launchpad.net/launchpad-registry/+question/12925819:47
jcsacketthe marked it as solved, but has a new question in the comment he closed it with.19:47
jcsackettnonmunged link https://answers.edge.launchpad.net/launchpad-registry/+question/12925819:47
jcsackettEdwinGrubbs pointed out he might be able to set it up with the +branchvisibility link; i'm just figuring out all the bits before i answer him.19:49
sinzuijcsackett, you make need to to retarget the question to launchpad-code or at least get thumper or abentley to explain that branch visibly does not work the way they think.19:49
jcsackettsinzui: dig. i'll retarget.19:52
lifelesssinzui: jcsackett: I don't think it needs retargeting. Have you looked at their oops?19:56
jcsackettlifeless: yes, that's why i was asking my initial question.19:57
lifelessthe fact they are encountering an oops suggests they have found a bug, to me.19:58
lifelessthey do need to have each *team* that is pushing branches setup with a branch policy (or have a meta-team containing all their teams, and give it the policy)19:59
lifelessif the project is proprietary they should have the no-defined-policy behavior be to prevent pushing.19:59
sinzuilifeless, they cannot define branch visibility. We suck20:00
lifelesssinzui: they can have us do it though, no?20:01
sinzuihow do they know that?20:01
sinzuiWho walked them through how privacy works?20:01
sinzuiWhere are the documents that they can read?20:02
sinzuilifeless, this is an unusable feature. Lp engineers read the code to find out how it works20:02
jcsackettsinzui: i think this *is* us walking them through privacy. :-/20:02
=== mwhudson_ is now known as mwhudson
sinzuijcsackett, I think we should have done that 6 hours ago. This is the third problem20:03
lifelesssinzui: https://help.launchpad.net/Code/SubscribingToPrivateBranches <- does this help?20:04
lifelessit seems lightweight to me20:04
sinzuijcsackett, I do not service commercial requests anymore because my experience as a subscriber to lp bugs, questions, feedback@ and commercial@ are preventing other engineers from discovering they need to do better20:05
jcsackettsinzui: that's reasonable. thus i am now the one learning we need to do better. :-P20:05
jcsacketthowever, i do not seem to have bac's powers to deal with their issue (insofar as setting visibility).20:06
sinzuilifeless, no, they want to define visibility for another team, I think 10 people can do that20:06
lifelesssinzui: do you file bugs about the things that are faulty/missing?20:06
sinzuijcsackett, bac did no put you in the commercial admin team20:07
sinzuilifeless, I have done more than that, I have had meetings to explain that is is wrong.20:08
lifelesssinzui: could you bind 'what' to a value, for clarity20:08
sinzuiI also have nasty recipes in FAQs how to setup a commercial project that works somewhat like someone expect20:08
lifelessI have an lp create-project tool in lptools20:09
lifelesswould it be reasonable to extend that for commercial projects (so that jc, bac etc - those with lp perms to do it, can do it easily)20:09
sinzuilifeless, I an at 99% frustration and I am on my vacation. Lp engineers do not believe they made an bad service that is an embarrassment to charge money for.20:10
lifelesssinzui: I didn't realise you were on leave. Shoo! go relax.20:10
jcsackettlifeless: so, acknowledging that this sucks (and that the OOPs in question should probably be a bug, since a useful warning would be better), you good with it being retargeted per our vacationing friend's suggestion?20:15
lifelessjcsackett: I don't see that a handoff will help the user.20:15
lifelessjcsackett: if you think its the best thing for them to hand it off, sure, by all means do so.20:15
lifelessjcsackett: if I was handling the question, I would:20:16
lifeless - file a bug for the user for the OOPS20:16
* jcsackett nods.20:16
lifeless - write up a help page now with what we know about branch privacy20:16
lifeless - point them at it20:16
jcsackettnot entirely sure we *know* about it; but i can seed a page with what i've learned.20:16
jcsacketts/i've/we've20:16
lifeless - read the wiki page curtis mentioned that is in the internal wiki20:17
lifeless  (and use that pages notes as part of the seed for the help.lp.net page)20:17
jcsackettdig.20:18
* jcsackett did not expect to open this can of worms.20:19
lifelessif we write it up well, it will stay more closed in future20:19
rockstarleonardr, ping20:30
leonardrrockstar, hi20:30
rockstarleonardr, did you write the lp.client javascript?20:30
leonardrrockstar: i don't rember. i probably wrote some of it20:31
leonardrcan we talk about dominion instead?20:31
rockstarleonardr, :)20:31
rockstarleonardr, I only see a definition of the lp.client.plugins module, never a mention of just the lp.client module.20:32
leonardrrockstar: look in l/c/l/javascript/client/client.js?20:33
rockstarleonardr, yeah, no definition in there of lp.client20:33
leonardrline 4 seems to have one?20:33
leonardrno, it's tautological20:34
leonardrwell, no, it's not tautological20:34
leonardrLP.client starts out an empty dictionary20:34
rockstarleonardr, yeah, I can't seem to be able to do YUI().use("lp.client");20:34
rockstarleonardr, that's what I mean.20:34
leonardrand then over the course of that file, stuff is added to the dictionary20:34
leonardrrockstar: at that point you've lost me. it's possible there's some module management thing that this file isn't doing, but you should talk to maybe mars20:35
marsrockstar, did you check the base template for it?20:35
marsbase-template-macros.pt20:36
rockstarmars, yes.20:36
rockstarmars, it's included there.20:36
=== almaisan-away is now known as al-maisan
marsrockstar, what is the problem?20:37
rockstarmars, on upgrading to YUI 3.2, I get a "requirement NOT loaded: lp.client"20:37
rockstarmars, that's all I know.20:37
rockstarI suspect it's related to a dependent module not being available, but I have no idea how to prove that.20:38
marsrockstar, have you grepp'd the source tree for the lp.client symbol?20:38
rockstarI don't know where the Y.add('lp.client') is.20:38
rockstarIn fact, I'm almost positive now that there isn't one.20:44
marsrockstar, that is odd20:48
rockstarmars, I think it's a boo boo that thumper made that might have caused everything to break in yui 3.2.20:49
rockstarmars, I think it's gotten stricter.20:49
rockstarThere is no lp.client.20:49
marsthat would be nice20:49
marsthe loose dependency loading in earlier versions caused problems for developers20:49
rockstarmars, yeah, I'm doing a clean and a build real quick. I think this might fix it.20:50
marsrockstar, well, if there is no .add() for it, but there is a 'requires:' stanza, then I would say it is an error in the requirements20:50
rockstarmars, yeah, I think that's what's broken.20:50
marsleonardr, benji, any luck with the windmill fix I proposed earlier?20:51
leonardrmars: i had promising results, but i'm not giving them a lot of credence since the problem seems to skip from test to test. am doing a full run now20:51
benjimars: I haven't gotten my test results back yet (I did a full run because I don't get the same errors twice)20:51
marsok, let me know how it turns out20:52
rockstarmars, we upgraded windmill, right?20:59
marsrockstar, we did, to tip.21:00
rockstarmars, er, we've upgraded windmill since we discovered the 512K bug, right?21:00
marsyes21:00
marswe upgraded last week21:00
rockstarmars, great.  I'm hoping the 512K bug is fixed.  Otherwise, I've hit yet another blocker in my quest to get a new YUI in...21:04
marsrockstar, you could ask on #windmill.  It is early PDT21:05
marsthat reminds me21:05
rockstarmars, I didn't think it was a windmill bug, but in the way we used windmill.21:05
marsI have a patch I would like to get into windmill trunk21:06
thumperrockstar: what boo boo?21:11
=== al-maisan is now known as almaisan-away
rockstarthumper, your popup diff claims to require lp.client, but there is no lp.client module.21:11
thumperrockstar: so fix it :)21:11
rockstarthumper, not a big problem, except that I believed there really was, so I approached the problem thinking something I changed broke it.21:12
rockstarTruthfully, something I changed just made the breakage more apparent (and break ALL OTHER JAVASCRIPT in the process...)21:12
deryckI'm out.  Later on, all.21:14
UrsinhaEdwinGrubbs, qa-tagger is back, it tagged a bug as needstesting, should I keep that as qa-bad as it was? it's bug 65912921:18
_mup_Bug #659129: Distribution:+ppas timeout in PPA search <qa-needstesting> <timeout> <Soyuz:Fix Committed by julian-edwards> <https://launchpad.net/bugs/659129>21:18
lifelessUrsinha: qa-ok for that bug, if you're touching it21:19
Ursinhalifeless, cool, in a second21:19
lifelessUrsinha: the fix wasn't /wrong/ it just wasn't deep enough (a later query times out instead)21:19
UrsinhaI see21:20
lifelessabentley: thanks for adding to the arch guide21:27
lifelessjcsackett: yes, thats the page - see the bottom where it talks about branch privact setup21:32
jcsackettlifeless: ok, thanks.21:32
Ursinhalifeless, hi21:33
Ursinhare. bug 65961821:34
_mup_Bug #659618: crash when assignee is None <qa-tagger:Fix Released by ursinha> <https://launchpad.net/bugs/659618>21:34
lifelessjcsackett: and unless we're talking confidential stuff, the default place to talk is here :)21:34
UrsinhaI'm getting the committer from the info of the merged branch21:34
jcsackettlifeless: right; i went there b/c i was unsure of the status of that page: re confidentiality.21:34
lifelessUrsinha: I'd like some more detail than that, if you can humour me.21:34
Ursinhalifeless, sure, a minute21:34
lifelessjcsackett: fair enough; uhm, its not about any specific customer or a security vulnerability or embargoed surprise feature etc.21:35
lifelessjcsackett: nor is it operational details we'd hold sacred21:35
* jcsackett nods.21:35
jcsackettfair enough.21:36
Ursinhalifeless, the committer there: http://paste.ubuntu.com/512644/21:36
lifelessjcsackett: nor is it of a personal nature for one of us ;)21:36
jcsacketti would hope that case doesn't come up too often on IRC. :-P21:37
Ursinhalifeless, get_apparent_authors21:37
lifelessUrsinha: so using that for assignee has a few problems.21:37
lifelessjcsackett: people taking leave is personal, shouldn't be discussed in public (unless the person in question does)21:37
lifelessjcsackett: (because if the house is vacant...)21:37
Ursinhalifeless, go ahead21:37
lifelessfirstly, there may be no merged commits.21:38
Ursinhalifeless, in devel/stable?21:38
lifelessthis happens when someone does a fix directly on trunk on pqm21:38
lifelesswhich is needed (rarely) when things go completely cactus21:38
UrsinhaI've never saw that happen. As in all commits go to trunk through pqm21:38
lifelessUrsinha: there was one about 7 weeks ago in fact :)21:39
Ursinhaso pqm will always be the first committer, and we'll have the apparent authors21:39
lifelessUrsinha: no, that doesn't make sense21:40
lifelessin your pastebin21:40
lifelessrev 1168221:40
lifelesswill have apparent authors of pqm21:40
lifelessand rev 11643.2.721:40
lifelesswill have apparent authors of stevenk21:40
lifelessget_apparent_authors applies only to a single rev.21:40
Ursinharight..21:40
lifelessanyhow, you need to handle the case of there being no merged revisions21:41
Ursinhalifeless, it goes one level deeper to get the apparent authors21:41
lifelesssecondly, if fred does a lot of work but goes on leave, barney may merge devel to fix conflicts and then land it; barney isn't the assignee21:41
lifelessor if fred and barney are collaborating, the revision graph would look similar.21:42
lifelesswhat would we want in the web report in those cases?21:43
Ursinhalifeless, how do you suggest fixing that?21:43
lifelessUrsinha: well, I don't know what 'assignee' in the report is for actually.21:43
lifelessUrsinha: so I'd like to understand the use case and our goals before offering solutions21:43
Ursinhalifeless, the assignee, in my understanding, should be the person responsible for that fix, as the one that should QA that and fix if anything goes wrong21:45
Ursinhalifeless, the person we should poke about that item21:45
lifelessok21:45
lifelessif we rename it 'authors'21:45
lifelessand include *all* the authors found by looking at the trunk revision and all the merge revisions, transitively21:46
lifelessthen it would do that comprehensively21:46
rockstarthumper, I wonder if you and I could have a phone call/review on my lazr-js branch.21:47
lifelessthe common case will be one person21:47
lifelessbut in the uncommon case we'll have accurate information21:47
Ursinhalifeless, right.21:47
Ursinhalifeless, mind writing this on the bug report?21:47
UrsinhaI have to leave now and should return in ~1h3021:48
Ursinhayou'll be here anyway :)21:48
lifelesssure21:48
Ursinhathanks lifeless21:48
=== Ursinha is now known as Ursinha-bbl
thumperrockstar: ok, OTP right now21:54
rockstarthumper, ack.  We can do it much later in the day.21:55
abentleythumper: https://dev.launchpad.net/ArchitectureGuide22:02
wallyworld_morning22:07
jcsackettlifeless: got a second to be a second set of eyes on the help.lp.net page?22:17
=== Chex changed the topic of #launchpad-dev to: Launchpad Development Channel | Week 4 of 10.10 | PQM is Release-Critical; devel is closed (Release manager: EdwinGrubbs) | firefighting: - | https:/​/​dev.launchpad.net/​ | Get the code: https:/​/​dev.launchpad.net/​Getting | 17:15 -!- Topic for #ubuntu-devel: 10.10 released on 10/10/10 at 10:10:10UTC!! | Development of Ubuntu (not support, not app development) | #ubuntu fo
=== Chex changed the topic of #launchpad-dev to: Launchpad Development Channel | Week 4 of 10.10 | PQM is Release-Critical; devel is closed (Release manager: EdwinGrubbs) | firefighting: - | https:/​/​dev.launchpad.net/​ | Get the code: https:/​/​dev.launchpad.net/​Getting | Launchpad down/read-only from 22:00 - 00:00 UTC for a code update
benjimars: no dice on the tests: https://pastebin.canonical.com/38615/22:19
LPCIBotProject db-devel build (65): STILL FAILING in 3 hr 44 min: https://hudson.wedontsleep.org/job/db-devel/65/22:20
marsbenji, darnit22:20
LPCIBot* Launchpad Patch Queue Manager: [release-critical=lifeless][r=gmb][ui=none][bug=659129] Speed up the22:21
LPCIBotquery used to search for PPAs.22:21
LPCIBot* Launchpad Patch Queue Manager: [release-critical=lifeless][r=jtv][ui=none][bug=634149,22:21
LPCIBot639785] Catch the CannotHaveLinkedBranch exception in translatePath.22:21
marsok22:21
marshmm22:21
marsso testtools has this nifty addDetail feature22:21
marsperhaps that could be used to create a graceful way to do printf debugging on these errors22:22
mars/if/ I can get useful identifying information about the active thread22:23
marsmonkey-patch threading.Thread.start()?  :(22:23
marsyuck22:24
marsbenji, I'll think about it.  leonardr, looks like the errors persisted for benji.22:24
lifelessjcsackett: sure22:35
jcsackettlifeless: https://help.launchpad.net/Code/PrivateBranches22:36
benjimars: do you know what the errors even mean?  If so, can you explain it to me?22:36
lifelessrestricted -or- moderated?22:36
marsbenji, it means that threading.enumerate() says there are still live unjoined threads after the test is finished22:38
marsbenji, and the thread is still alive22:38
marsbenji, threading has a settrace() method that may provide some insight22:38
benjimars: and that's something that RemotedTestCase tests for and generates errors if it is the case?22:38
lifelessjcsackett: other than that, great22:39
lifelessbenji: RemotedTestCase is just the local proxy for a test that ran in another processs22:39
lifelessbenji: BaseLayer checks for the threads.22:39
jcsackettlifeless: good catch. the internal stuff said restricted, but they're referring to a special case of all of this.22:40
jcsackettthanks!22:40
marsbenji, it is added by zope.testing.testrunner.runner.TestResult, printed as a subunit stream by zope.testing.testrunner.formatter, then the stream is interpreted by RemotedTestCase22:40
marsand raises the test error22:40
rockstarthumper, https://code.edge.launchpad.net/~rockstar/launchpad/javascript-refresh/+merge/3837322:48
=== salgado is now known as salgado-afk
lifelessflacoste: have you looked at the google doc I made? Any thoughts?22:54
flacostelifeless: i found it interesting, and a good direction, but didn't have any specific thoughts when i read it,22:55
lifelessflacoste: ok; I'm going to code today.22:55
leonardrmars: my full test run also failed with three random failures22:55
lifelessflacoste: I'll get back to it tomorrow/monday22:56
=== matsubara is now known as matsubara-afk
wgrantjtv: The chroot_url URL seems to work fine for me...22:56
jtvwgrant: yeah, _now_ it does22:56
wgrantjtv: Maybe you caught it in a moment when the chroots were being replaced?22:58
wgrantI can't see why they'd be blank.22:58
jtvwgrant: so I get you straight: you're saying the production maverick chroot librarian URL works if you edit it to use the staging librarian?22:59
wgrantjtv: No, no, I refer to your wiki edit.23:00
wgrantSorry.23:00
jtvah23:01
jtvwgrant: no idea what caused it, but glad to hear it.23:01
wgrantAh, now this is one of those "we have no idea how long it's going to take, because staging sucks" upgrades, isn't it?23:03
jtvwgrant: We do have some idea; stub did a manual db upgrade that doesn't show up in successful-updates.txt23:05
wgrantAh.23:05
pooliethumper: did you see https://lp-oops.canonical.com/oops.py/?oopsid=1747ED661 and https://answers.edge.launchpad.net/launchpad-registry/+question/129258 ?23:07
pooliei'm glad someone tweeted at the relevant time23:10
thumperpoolie: yes I saw it23:27

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!