/srv/irclogs.ubuntu.com/2011/08/19/#launchpad-dev.txt

cjwatsonactually, mawson has a sufficient python-apt version00:00
cjwatsonit'll have trouble with the multiarch-translations branch until we get it upgraded, but it'll be good enough for dpkg-xz-support00:00
cjwatsonso it can be QAed on dogfood00:01
StevenKcjwatson: If this branch lands, it should be fine to test on mawson on Monday -- prod myself or wgrant before you start so we can update its code.00:01
cjwatsonin that case, can I get https://code.launchpad.net/~cjwatson/launchpad/multiarch-translations/+merge/67640 landed too?  we can test it on mawson then too00:02
cjwatson(I don't know what the procedure for QAing db-devel branches is)00:02
StevenKI think you might need to change the DB patch number. lifeless: ^00:03
lifelesscjwatson: that needs to be split00:03
lifelessits got both code and schema00:03
lifelessand we only deploy schema from db-devel00:03
cjwatsonhm?  I already split out a schema branch for that00:04
lifelesshttps://dev.launchpad.net/PolicyAndProcess/DatabaseSchemaChangesProcess00:04
lifelesshttps://code.launchpad.net/~cjwatson/launchpad/multiarch-translations/+merge/67640 ? i see changes to lib/lp/archivepublisher/model/ftparchive.py, to === modified file 'lib/lp/archivepublisher/tests/apt-data/apt.conf'00:04
cjwatsonhttps://code.launchpad.net/~cjwatson/launchpad/multiarch-translations-schema which has landed00:04
lifeless etc00:04
cjwatsonmultiarch-translations was supposed to be just the code bit00:05
lifelesshttps://code.launchpad.net/~cjwatson/launchpad/multiarch-translations/+merge/67640 has a db patch in it - = added file 'database/schema/patch-2208-79-0.sql'00:05
lifelessso this need to go to devel00:05
lifelessand it can't land until we've deployed the schema change00:05
lifelessthats blocked on the losas finishing pgbouncer migration00:06
cjwatsonI'm confused about why LP is showing that, if you look at https://code.launchpad.net/~cjwatson/launchpad/multiarch-translations-schema/+merge/67992 then it has the same schema patch00:06
cjwatsonand it's merged00:06
lifelesswhich is blocked on them sprinting00:06
lifelessits certainly not deployed00:06
cjwatsonI was told a couple of weeks ago that multiarch-translations needed to go to db-devel :-(00:06
lifelessthe schema did00:06
cjwatsonI would appreciate a consistent story here00:06
lifelessthe other part, *if* you land on db-devel, will sit there until you cherrypick it across to devel post deploy of the schema change.00:06
cjwatsonI can't cherrypick anything to devel personally, no access00:07
StevenK79-0 is already on db-devel00:07
lifelesswell, you would do it by preparing another branch which we can land via ec2 at the right time00:07
lifelesscjwatson: if you want to flush your queue, you can land this on db-devel yes. But we can't deploy it from there,00:08
lifelesscjwatson: I'm sorry that this feels inconsistent to you00:08
lifelesscjwatson: particularly if its my fault :)00:08
cjwatson2011-07-14.log:12:54 <lifeless> cjwatson: for your branch, you'll need to land both components on db-devel (because we're not live on the incremental deploy steps yet)00:08
lifelesscjwatson: ah yes, so thats up to me to be more clear00:09
cjwatsonso right now I am completely confused as to what I need to do.  I don't care about flushing my queue, I care about getting things deployed00:09
lifelessok00:09
StevenKI can see the schema is already on db-devel00:10
lifelessso right now, this is blocked on losa work: we have no way to deploy schema changes until the pgbouncer migration is completed.00:10
lifelessthats stubs and the losas top priority ticket00:10
lifelessas soon as thats done we'll start doing fastdowntimes, one per day, with one db patch per day00:10
cjwatsonthat's fine.  what I'd like to know is (a) how I know when to proceed (b) what I should do next00:10
cjwatsonoh and (c) what if anythng I should do to the multiarch-translations branch00:11
lifelessso - nothing.00:11
cjwatsonmerge it from db-devel maybe?00:11
lifelessthe bug for the schema change should be sitting in fix committed now00:11
lifelesswhen we have the patch deployed that will toggle to fix released00:12
lifelessand we can continue with the rest of the work00:12
cjwatsonbug for the schema change> is that https://bugs.launchpad.net/launchpad/+bug/809123 ?00:15
_mup_Bug #809123: we cannot deploy DB schema changes live <fastdowntime> <qa-ok> <Launchpad itself:Fix Committed by stub> < https://launchpad.net/bugs/809123 >00:15
lifelessthat too; no I meant the one linked to your schema patch00:15
lifeless(there is one, isn't there? it may be the main one for your translations support)00:16
cjwatsonthere isn't onoe00:16
lifelessah00:16
lifelessok00:16
beunohm00:16
lifelessso i suggest picking this up when 809123 is fix released00:16
beunoI'm getting an oops when searching for someone (trying to add a new ubuntu member)00:16
lifelessat that point we'll be a few days out from your thing being live00:16
beunoOOPS-2057DX00:16
cjwatsonok, subscribing to that00:16
cjwatsonI basically just want to make sure that any delays in the process are not down to me - it's felt very much like there've been serial multiple-day delays so far00:18
cjwatsonand I appreciate the assistance in deployment but the feature in general is important enough that I need to report on t00:19
lifelesscjwatson: welcome to LP dev :)00:19
cjwatson*it00:19
cjwatsonheh00:19
lifelesscjwatson: this is one of the things that we're working on reducing - dev friction is insanely high atm00:20
cjwatsonright, understood00:20
cjwatsonand FWIW non-db stuff has clearly been getting better from my POV00:20
lifelessthanks!00:20
cjwatsonI've merged db-devel into multiarch-translations so that it now clearly only contains code.  Do I need to resubmit that against devel (presumably after 809123 is fix released)?  Can I do that without losing approvals or will it need re-rubber-stamped?00:32
lifelessyes, an dyes, and probably needs a rubber stamp at that point. Use the 'resubmit' button.00:35
lifeless(at the right time)00:35
cjwatsonok00:36
jtvHi wallyworld__02:19
wallyworld__jtv: yellow02:19
jtv?02:20
wallyworld__jtv: hello02:20
jtvAh.02:20
wallyworld__one review just popped up recently02:20
wallyworld__doing it soon02:20
jtvOK02:20
wallyworld__just finishing off a ^@%%@!& yui test02:20
* jtv shudders in sympathy02:21
jtvStevenK, are you hammering dogfood?03:35
StevenKNot any more03:38
jtvAh.  I just updated the code/schema as well.03:40
jtvAnd now it's failed to come up.03:42
jtvAh.  Not that again.03:42
jtvFixing it.03:43
=== almaisan-away is now known as al-maisan
nigelbwallyworld__: I thought my feelings to yui was isolated. apparently not ;-)04:07
wallyworld__nigelb: it's not that bad actually. just a bit tedious sometimes04:08
nigelbI know!04:08
wallyworld__to mock everything needed to allow the tests to run in isolation04:08
nigelbthat's one of the things I'm stuck at because I lack time.04:08
wallyworld__how is your branch?04:08
wallyworld__yeah, i can understand that04:08
nigelbneeds tests04:08
wallyworld__well you are not alone there04:09
nigelbhehe04:09
nigelband work's been busy, so I get very little time04:09
wallyworld__what do yiu do for work?04:09
nigelber, what? :)04:10
wallyworld__what's your day job?04:10
nigelbah, I work as a systems engineer at a local startup :)04:10
wallyworld__sounds cool. i worked for a startup once, about 11 years ago04:11
wallyworld__but they went bust04:11
wallyworld__is everything working apart from the tests?04:11
nigelbheh04:11
nigelbyeah, the code's working for anon as well as non-anon user04:11
nigelband I tested with private bug too04:11
nigelbso I want to catch alll that i my tests04:12
nigelbI put some ground work in there04:12
wallyworld__sounds good.04:12
nigelbthe javascript bits doesn't have a test right now04:14
lifelessbooyah04:14
lifelessI have oopses from gpgverify.04:14
nigelbSo, I'll probably write a test for the entire code.  Also, because I want to learn how to do it04:14
wallyworld__nigelb: well, yes it will be educational to do it for sure04:19
StevenKs/educational/brain-damaging/04:20
nigelblifeless: congrats!04:21
nigelbwallyworld__: yeah, that was my thinking :)04:21
nigelbStevenK: bwahaha04:21
wgrantlifeless: Paste?04:25
lifelessweb.py04:29
lifelessdoing $anything on thursday is daft.04:30
lifelessrule 1.04:30
wgrantI thought you'd discounted it.04:30
wgrantHah.04:30
wgrantRight.04:30
lifelesshttp://bazaar.launchpad.net/~lifeless/+junk/gpgverify/revision/11?start_revid=1104:30
=== jtv is now known as jtv-eat
wgranttext/html... ew.04:32
lifelessmeh04:32
lifelessthat was cargo cloned; I should change.04:32
wgrantIt must not be used frivolously.04:33
wgrantLike Twisted Web.04:33
wgrant(it defaults to text/html... what could possibly go wrong)04:33
lifelessor $all $web $frameworks04:33
lifelessso does flask04:33
lifelessand paste IIRC04:33
wgrantKill it.04:33
lifelessfor their errors04:33
mwhudsonso does django04:33
wgrantKill them all.04:33
mwhudson+1 wgrant04:33
wgrantYes, let's just default to the most dangerous content type in the world.04:34
wgrantNothing bad could come of that.04:34
lifelessfixed in 1204:37
wgrantThanks.04:40
wgrantAlthough 'OOPS-ID' is not a standard HTTP header, AFAIK :P04:40
nigelbpicky :P04:41
wgrantlifeless: We can't have some generic WSGI container launcher thing that does OOPS stuff, rather than having all this stuff in the core code of every service?04:46
wgrantLike our scripts, it seems silly to have all these boilerplate wrapper scripts rather than a parameterised launcher.04:46
wgrantI guess twistd is already a similar sort of thing.04:49
wgrantBut I think we should do it for more than just daemons :)04:49
lifelesswgrant: well, if we have two * web.py services, we can have python-oops-webpy04:59
lifelesswgrant: it should be!04:59
lifelesswgrant: the problem is, as I said yesterday, web.py isn't actually wsgi05:00
=== al-maisan is now known as almaisan-away
lifelessits kindof wsgo05:00
lifelesssame goes for flask.weurkzeug05:01
lifelesss/\.////05:01
wgrant:(05:01
lifelessthey both want to stop exceptions bubbling out05:01
lifelessso they error handle themselves rather than as layers05:01
wgrantYay05:01
lifelessby the time you're sniffing start_response for 500's and trying to reconstruct a long-gong sys.exc_info you've lost.05:02
lifelessI think hooking in in the preferred for for any given framework is best.05:02
lifelessthats the point of having a simple, flexible core, after all.05:02
lifelessits just a shame that wsgi is so micro that few things use it.05:02
wgrantIt would be nice if there was a standard.05:03
lifelesse.g. werkzeug uses request and response objects, which wsgi has no knowledge off (and response puns as a wsgi app... which is actually quite good)05:03
lifelessbut its request objects are thread local meta things05:03
lifelessanyhow05:05
lifelessI'm going to setup a project for gpgverify05:05
lifelessshove the current code in there05:05
lifelessteach it to handle detached sigs and use a regular form object at the same time05:05
lifelessand then next week, deploy the biatch.05:05
lifelessjamesh is playing with python-oops-wsgi, which django manages to have a sane way to integrate in05:06
wgrantExcellent.05:06
lifelesswhich is - huge - brownie points for django IMO05:06
wgrant(are you keeping a reasonably small backlog of in-progress work now, given your impending incapacitation?)05:07
lifelesswe have two very modest features identified there to make it have parity with the used features of wsgi-oops05:07
lifelesswgrant: as much as I can yeah05:07
wgrantGreat.05:07
lifelessI wanted to unblock SOA before my life changes forever05:07
wgrantYes.05:07
lifelessthe one key thing for oops remaining is to teach oops-tools to use a repo interface rather than parsing itself05:08
lifelessthen we could switch it over to a different backend05:08
wgrantThat interface gives back a dict?05:08
lifelessyes05:08
wgrantThe current repo implementation is just a directory containing date dirs?05:08
wgrantSo oops-tools would need lots?05:09
lifelesswe'd want to shuffle a bunch of stuff like getOopReport(id) from lp into python-oops-datedir-repo05:09
lifelesswe could model oops-tools needs as either a collection of repos05:10
lifelessor as a repo with knowledge of many root dirs.05:10
wgrantRight.05:10
lifelessthe main thing is to lift the conceptual stuff out of rfc822 parsing and up to useful types05:10
lifelesswith that done, we can switch to bson and iterate on things like messages and extra keys easily enough05:10
lifelesswhich is a totally separate project.05:11
lifelessrelatedly, moving to cassandra might be unblocked if we take a map-reduce search approach rather than a pre-indexed one (for finding oopses by non-id)05:11
wgrantWhy can't we pre-index?05:12
lifelesswe can, with e.g. solandra05:12
lifelessbut if we want anything more sophisticated map-reduce is probably a good idea anyway05:12
wgrantYeah.05:12
wgrantKillall solr05:12
lifelessso starting with map-reduce would deliver the necessary conditions05:12
lifelesswhereas starting with solandra doesn't really.05:13
lifelessþ05:13
lifelessanyhow05:16
lifelessthats for tomorrow^Wmonday05:16
poolielifeless, hi, could we have a short supplementary chat?06:40
nigelbg3106:41
nigelbargh06:41
poolie:)06:42
=== wallyworld__ changed the topic of #launchpad-dev to: https:dev.launchpad.net/ | On call reviewer: - | Critical bugs: 238 - 0:[#######=]:256
=== jtv-eat is now known as jtv
henningeAnybody merging stable into db-devel currently?08:07
henningeNo, that's not trivial for me.08:14
henninge^ Looks like something jelmer_ and bigjools could do.08:14
bigjoolsseriously?08:17
henningervba: I will request a deploy. If your QA is quick it can still be included. ;-)08:17
henningebigjools: I looked at bzr annotate and found your name and jelmer's for safe_open08:18
rvbahenninge: if you're talking about 820452 then I'm afraid the QA won't be quick. :(08:18
henningervba: ok, np08:18
henningeone more reason to request the deploy asap ;)08:19
rvbaRight :)08:19
jelmer_henninge, I'll have a look08:22
henningebigjools, jelmer_ : I have a branch ready, so if you want to tell me how to fix it, I can do the mechanics.08:23
bigjoolshenninge: have you fixed the conflicts?08:23
henningeno ;)08:23
henningejust done the merge and looked at them08:23
henningeit's just one in each file, so it might be easy08:24
bigjoolsok08:24
StevenKhenninge: I'm a little concerned about deploying now, TBH.08:29
henningeStevenK: why is that?08:29
henningeStevenK: because it's Friday?08:29
StevenKhenninge: Because most of IS are going to be on a plane over the weekend08:29
henningeoic08:30
wgrantIt's Friday and everyone will be in the air for the weekend.08:30
wgrantAnd we don't have APAC LOSAs on Monday.08:30
wgrantThe first LOSA will appear in 72 hours.08:30
bigjoolsdo not deploy today, please08:30
StevenKThe earliest we can deal with problems is Monday UK08:30
henningegood reasons ;-)08:30
bigjoolswe never deply on Fridays08:30
henningeI thought mornings are ok08:30
henningebut the "in the air" issue is a neck breaker.08:31
henningeI will re-visit this on Monday08:31
bigjoolsmornings are not ok08:31
bigjoolssome problems will only occurr overnight08:31
henningeso I learn ;-)08:31
StevenKhenninge: Friday morning *in Australia* can be okay, since then we have LOSA coverage for another long while08:32
wgrant(we will occasionally deploy up to early afternoon my time, but I normally try to stick to mornings)08:32
bigjoolshenninge: for the test_notification conflict, take the second, larger chunk08:34
henningebigjools: I will08:34
bigjoolsI dunno about the other08:34
henningejelmer_: any insight on the merge?08:36
henningefor safe_open.py08:36
allenaphenninge: I just emailed the list that I would sort out the stable -> db-devel conflicts, but bigjools says you're on it, and so I shall leave you to it :) Thank you.08:37
henningeallenap: you're welcome08:38
jelmer_henninge: what's the conflict like?08:47
henningejelmer_: let me paste it08:47
henningejelmer_: http://paste.ubuntu.com/669867/08:48
jelmer_henninge: you'd want the second chunk in that case08:51
jelmer_(bzr resolve --take-other)08:51
jelmer_is there a wiki page that describes what branch gets deployed where, when, how often, etc?08:58
henningejelmer_: thanks09:01
lifelesspoolie: sure09:06
cjwatsonargh, why does launchpad-dependencies hate me10:22
StevenKcjwatson: It isn't just you, sadly.10:23
cjwatsonturns out that the upload target isn't a reliable way to test which version it's being built for either10:23
StevenKcjwatson: I think I've just figured why your branch failed in ec2, too.10:24
cjwatsonso it's broken in lucid right now10:24
cjwatsonI suspect it might be related?10:24
cjwatsonI mean, I noticed while trying to upgrade my LP dev VM, but ...10:24
StevenKcjwatson: The ec2 images are not updated for newer dependencies, they need to be done manually.10:24
cjwatsonI could have sworn I saw an apt-get dist-upgrade in the test setup10:25
cjwatson./lib/devscripts/ec2test/instance.py:134:aptitude -y full-upgrade10:25
cjwatson launchpad-dependencies (0.97~lucid1) natty; urgency=low10:25
StevenKHmm10:25
cjwatsonanyway, that's why it's going wrong10:25
cjwatsonbloody recipes10:25
StevenKHah10:26
cjwatsonwhile the IS builds are more like "launchpad-dependencies (0.97~0.IS.10.04) lucid-cat; urgency=low"10:27
cjwatsonCould somebody review/merge https://code.launchpad.net/~cjwatson/meta-lp-deps/fix-target-detection-harder/+merge/72166 ?  Reasonably urgent since launchpad-dependencies is currently broken in the LP PPA for lucid10:54
cjwatsonStevenK: maybe you could?10:54
StevenKcjwatson: You mean distroseries, not distribution11:02
StevenKBut perhaps we should fix that11:03
StevenKEither way, r=me11:03
cjwatsonStevenK: well - it's called Distribution in dpkg-parsechangelog output11:08
cjwatsonso I was mirroring that11:08
cjwatsonI can rename if you feel it necessary11:08
cjwatsonStevenK: can you land it for me?11:09
=== henninge is now known as henninge-lunch
jtvgary_poster: hi!  Say, do you know how I can enumerate all of Launchpad's registered utilities?  getGlobalSiteManager().registeredUtilities() gives me nothing.11:29
gary_posterhi jtv.  Thanks for looking at that.  Lemme look, one sec.11:30
cjwatson... maybe somebody else can land https://code.launchpad.net/~cjwatson/meta-lp-deps/fix-target-detection-harder/+merge/72166 for me?  I've made the distribution -> distroseries substitution as suggested by StevenK11:32
gary_posterjtv, I'm surprised that registeredUtilities is giving you nothing.  It looks like it does all the right things.  Could it be that you called it before zcml was processed?11:33
jtvgary_poster: unlikely—I'm calling it from a LaunchpadScript and one of the reasons was that zcml would be processed for me.  :)11:34
gary_posterjtv, could you verify by trying to look up a utility?11:34
jtvYou mean using zope.component.getUtility?11:34
jtvOr using getGlobalSiteManager().getUtility or something?11:35
gary_posterjtv, both, either.11:35
jtvgary_poster: Hmm... componentlookuperror11:37
gary_posterjtv, that's what I would expect.  registeredUtilities really does look in some integral data structures. :-)11:37
jtvArrh… I think I needed to script.run() instead of script.main()11:38
jtvNow it takes the requisite 20 minutes to start up.11:38
gary_poster:-/11:38
gary_postercjwatson, that needs ec2 land I assume?11:38
jtvgary_poster: it fails later now, so that gets us past the first hurdle.  Thanks.11:38
gary_postercool jtv, np11:39
cjwatsongary_poster: no, AFAICS it's just direct-commit11:39
gary_postercjwatson, you mean, you can verify that all tests pass, and if buildbot fails you will be shocked, awed, and at least mildly embarrassed? :-)11:39
cjwatsonlp:meta-lp-deps is owned by ~launchpad-committers and the commits are all just direct11:39
gary_posterof duh11:40
cjwatsonmeta-lp-deps has no tests ...11:40
gary_posters/of/oh/11:40
* gary_poster was not looking closely enough11:40
* gary_poster goes to look at mp11:40
cjwatsonI wasn't suggesting direct commit to launchpad :-)11:40
* cjwatson is nowhere near that brave11:40
gary_posterheh :-)11:41
gary_postercjwatson, ok, I'm giving it a whirl11:42
cjwatsongreat, thanks11:43
gary_postercjwatson, please approve/adjust commit message: "[r=StevenK] fix target detection so that it works for both recipe builds and the CAT repository"11:46
jtvgary_poster: next of my hurdles.  The docs I saw "on the internet somewhere" said UtilityRegistration had members "provides" and "provided."  But no.11:46
jtvMaybe it's just a typo.11:47
gary_posterjtv, according to code, it has "self.registry, self.provided, self.name, self.component, self.info, self.factory"11:48
cjwatsongary_poster: ack, that's fine11:48
gary_postercool cjwatson11:48
jtvgary_poster: yup, the provides was a typo.  I'm getting further now.11:48
jtvFunny.  Some of them have empty names.11:49
gary_postercjwatson, done11:50
gary_posterjtv, sure, those are utilities you just look up with an interface11:50
gary_posterILaunchBag, for instance11:50
cjwatsongary_poster: thanks!11:50
jtvWell lots of them give an interface name as the utility registration's name.11:50
gary_posterwelcome11:50
gary_posterjtv, yes, that's something you will probably want to filter out.  IIRC, something or other registers all interfaces that it encounters as a utility.  So that it can do something else.  Later.11:52
gary_posters/all interfaces/each interface/11:52
jtvgary_poster: it looks as if the ones _with_ names are the ones I'm supposed to skip.11:53
gary_posterjtv, that's what I would expect to be the common case, yes.  I'd instead say that if the utility provides IInterface, skip it.  That might be equivalent, but it is more careful.11:54
jtvOh, OK11:55
jtvgary_poster: checked 347 interfaces, 238 failed.  :/12:01
gary_posterjtv, ow.  :-(12:01
jtvProbably a bug in my code.12:01
* gary_poster hopes so, practically speaking :-)12:01
gary_posterjtv, are you using the zope.interface-provided interface checker, or rolling your own12:02
gary_poster?12:02
jtvgary_poster: I was lazy and grabbed our own test matchers' Provides.12:03
gary_posterjtv, ah ok.  I think I looked at that once but I forgot how that works.  I meant zope.interface.verify.verifyObject FWIW12:05
jtvWell, I'll just give it a whirl.12:06
gary_postercjwatson, we've got a problem.  Don't know if it is related... https://launchpadlibrarian.net/77594282/buildlog.txt.gz12:07
cjwatsonI just asked #is about that12:08
cjwatsonit's not related to my change12:08
gary_posterok thanks cjwatson12:08
cjwatsonI suspect badness due to puppet deployment but that's just a guess ...12:08
gary_posterheh, puppet is getting a lot of bad press lately12:09
cjwatsonI may be blaming it unfairly, it's just that I think I heard of a previous instance of this problem and I only started hearing about it this wewek12:09
cjwatson*week12:09
jtvgary_poster: getting better — 109 failures (out of 347)12:10
jtvI just wonder why so many raise DoesNotImplement.12:11
gary_posterjtv, I suggest you change the checker to lambda *args: True12:11
jtvWhat checker?12:12
gary_posterjtv, sorry, trying to make a joke.  verify your interface with an "everything passes".  Hee.  Hee.12:12
jtvAh.  You are… American, right?  Might I suggest you check with a European first?  It may prevent misunderstandings.  :-P12:13
gary_posterjtv :-P12:13
jtvBut the lambda idea is good too.  :)12:13
jtvgary_poster: I wonder if I need to do this differently for classProvides than for implements.12:15
gary_posterjtv, ah, quite possibly.12:15
gary_posterjtv, so you mean that we are registering some classes as utilities, yes?12:16
jtvAnd I'm pretty sure the component isn't supposed to be "security proxied __builtin__.type instance"12:16
jtvYes, we use both in LP.12:16
gary_posterjtv, as a separate issue, you may need to rip off security procxies, if you have not already.12:16
jtvWith disturbing pleasure.12:17
gary_posterlol12:17
=== adeuring changed the topic of #launchpad-dev to: On call reviewer: adeuring | Critical bugs: 238 - 0:[#######=]:256
gary_posterjtv, FWIW, I suspect you are right that neither verifyObject nor verifyClass will do what you want for class utilities.  You may need to make your own verification for that.12:18
=== adeuring changed the topic of #launchpad-dev to: https:dev.launchpad.net/ | On call reviewer: adeuring | Critical bugs: 238 - 0:[#######=]:256
jtvSeriously?12:19
=== bac changed the topic of #launchpad-dev to: https:dev.launchpad.net/ | On call reviewer: adeuring,bac | Critical bugs: 238 - 0:[#######=]:256
jtvBut I've verified them in the past as verifyObject(II, getUtility(II))12:19
=== henninge-lunch is now known as henninge
gary_posterjtv, ah, then...I thought you implied it was not working? ("I wonder if I need to do this differently for classProvides than for implements.")  If it is working, then, uh, I suggest you keep using it.  I was just not confident that verifyObject would do what you need without digging into it.12:22
jmlwhy would you remove security proxies?12:23
jtvgary_poster: I'm not sure if it's working or not.  I'm getting a bunch of DoesNotImplement exceptions (besides some other exceptions that I did expect)12:24
gary_posterjml, primarily because security proxies will only let someone with the proper authority look at the value.  I suppose another approach would be to log in as a Launchpad admin (if I remember correctly that they have all permissions in all contexts).  Secondarily because the verification machinery might not expect them generally, and it's a good first pass to ignore them.12:30
gary_posterjtv, ok.  In your shoes, I'd simply investigate some seemingly representative reports and see if the complaints seem to have merit.12:32
jmlgary_poster: oh, of course. I was thinking only of the security proxies other duty as JIT interface validators (e.g. raising ForbiddenAttribute because you spelled 'displayname' incorrectly)12:32
jtvgary_poster: I guess I could try to verify the result of getUtility instead of the component.12:33
jmlmaybe some of those utilities don't have correct implements() lines.12:33
jtvSince 93 of the 124 failures I have now are DoesNotImplement, I think I'm verifying the wrong object.12:33
jtvjml: wouldn't that be noticed immediately?12:34
jtvgary_poster, jml: checked out a first case of DoesNotImplement… the implements() is in a base class.12:40
jtvI suppose that would also apply for all these vocabularies that are giving me the same error.12:40
jtvIf I check getUtility(interface) instead of utility_registration.component, I only get 11 instances of DoesNotImplement.12:42
gary_posterhuh12:42
gary_posterI have not worked with utility registrations enough to know how unexpected that might be12:43
gary_posterI'd say stick with whatever spelling seems to reflect reality and move on, myself.  That might be stating the obvious.12:43
Ursinhais is just me or launchpad has performance issues today?12:53
Ursinhascripts are timing out12:53
gary_posterUrsinha, I haven't experienced any problems myself, but graphs seem to suggest that we had increased db load and an increased number of errors starting about six hours ago.  I have no idea what that might be: we have not had a rollout since the 16th.13:05
* gary_poster tries to find page performance report, and tries to remember other tools for this.13:06
Ursinhagary_poster: I'm not able to generate ubuntu reports for a while; in general it takes about 6 minutes and now it's timing out13:06
StevenKcjwatson: Sorry about that, I was picking up my wife and having dinner. Did you find someone?13:07
gary_posterStevenK, hey, I did it for him13:07
StevenKgary_poster: Excellent, thanks.13:07
gary_posterStevenK, do you happen to have an idea of something that might have changed six hours ago to make our db load and errors increase?  It is not an increased number of requests, according to the graphs.13:08
StevenKAnd the recipe fails due to chroot problem? Awesomeness13:09
gary_poster(number of requests: https://lpstats.canonical.com/graphs/AppServerRequestLpnet/ ; 5xx s : https://lpstats.canonical.com/graphs/AppServer5XXsLpnet/ ; db load : https://lpstats.canonical.com/graphs/DBCpuLoadAppServers/)13:09
gary_posterheh, yeah StevenK. :-/13:09
StevenKgary_poster: That isn't your fault, though.13:09
gary_posterStevenK, yeah, cjwatson thought it might be puppet13:10
StevenKgary_poster: The only thing I can think of that I did six hours ago was finish work. :-)13:10
cjwatsonlamont is looking at it13:10
gary_posterStevenK, that's it! ;-)13:10
StevenKAw, man. Now I have to work the weekend. :-P13:10
gary_poster:-)13:10
StevenKgary_poster: Just thinking about it, check with the LOSAs, mizuho and cocobanana were brought under the iron fist of puppet around that time13:12
gary_posterok thanks StevenK, I'll ask them (do we even have any?)13:12
gary_posterI'll find out :-)13:12
DavieyUrsinha: yeah, i am seeing timeouts aswell.13:18
UrsinhaDaviey: all of our scripts are failing, desktop team as well13:19
jtvgary_poster: any feedback on lp:~jtv/launchpad/audit-utilities would be most welcome.  Run utilities/audit-utilities.py to see what I get so far.13:23
jtvNot now though; I'll be off!13:23
gary_posterjtv, cool.  working on emergency; please ask Monday and will be happy to13:24
gary_posterHave a great weekend13:24
jtvsame to you!13:24
stubCool. fiera is doing recursive queries now. Didn't realize anyone was using them yet.13:30
bigjoolsOo13:31
deryckhenninge, ping for standup13:31
henningeoh, yeah13:31
* henninge boots phone, looks for headset13:31
jelmerHmm, qastaging is giving me a "Internal Server Error" for loggerhead - is there an easy way to see the actual error?13:37
henningeabentley: Hi!14:25
abentleyhenninge: hi!14:25
henningeabentley: can we mumble about iorecorder?14:26
abentleyhenninge: 1 sec14:26
cjwatsonDoes anyone know how to make https://code.launchpad.net/~launchpad/+archive/ppa/+recipebuild/73739 (from https://code.launchpad.net/~launchpad/+recipe/meta-lp-deps-on-demand) try again?14:43
cjwatsonlamont tells me that the buildd problem is fixed now14:43
cjwatsonmaybe people in the ~launchpad team get more buttons there than I dod14:43
cjwatson*do14:43
bigjoolslooks like the build page has a bug14:44
bigjoolssays it's finished but offers me a link to cancel it still14:44
cjwatsonme too14:44
cjwatsonmaybe if we cancel it will try again later?14:44
bigjoolsmebbe14:44
bigjoolsdon't know much about this stuff14:45
cjwatsonI can't rescore it either14:45
cjwatsonwho does?14:45
bigjoolsI can :)14:45
bigjoolsabentley does14:45
cjwatsonI get the link, but it says "Cannot rescore this build because it is not queued."14:45
bigjoolshuh14:45
bigjoolsyes the page is buggy14:45
bigjoolsI bet it thinks "chroot problem" is not a real error14:46
abentleycjwatson: you request a build from https://code.launchpad.net/~launchpad/+recipe/meta-lp-deps-on-demand14:47
cjwatsonabentley: I'm not sure I have the right team access to request a build that goes into ~launchpad/+archive/ppa14:49
cjwatson(if I did, that would probably be a bug)14:50
cjwatsonabentley: can you?14:50
abentleycjwatson: I see the "request build(s)" link on the page, so I assume I do.14:51
abentleycjwatson: Do you not see it?14:51
cjwatsonI do, but surely I only have access to request builds into PPAs owned by myself or teams I'm a member of; I am not a member of launchpad14:53
bigjoolscjwatson: I'll request a build, is it just lucid you need?14:53
cjwatsonyeah, the others look done14:53
bigjoolsdone14:53
cjwatsonthanks14:54
allenapadeuring, bac: Have you got time for a short-ish review? https://code.launchpad.net/~allenap/launchpad/librarian-log-bug-828151/+merge/7209714:57
bacallenap: i do14:57
allenapbac: Thanks :)14:57
bacnp14:57
deryckbigjools, there's an lp question about sudo error and busted builds I'm working through....14:59
bigjoolsderyck: should be fixed15:00
deryckbigjools, ok, thanks.15:00
bigjools:)15:00
deryckeasy peasy :)15:00
bacallenap: done15:29
allenapThanks bac.15:29
derycksinzui, ping.15:30
sinzuihi deryck15:30
derycksinzui, hi there.  Do you think you could spare a minute to help kate in:  https://answers.launchpad.net/launchpad/+question/168164 ?15:31
derycksinzui, you could probably directly answer her as quickly as walk me through how to answer her :)15:31
sinzuiThis might be a permission issue. Lots of attr are only setable by LOSAs because Ubuntu one made 100s of members project owners15:32
sinzuiinvestigates15:32
derycksinzui, thanks!15:33
sinzuis/Ubuntu one/Ubuntu once/15:34
derycksinzui, can I assign the question to you and note that you're looking into it?15:39
derycksinzui, ah, never mind.  I see you did assign it.  Sorry.15:39
deryckstupid page reloads.15:40
=== Ursinha` is now known as Ursula
sinzuideryck, datereleased is not directly setable. it is implicitly set by the Web UI when the series status is set to current.15:40
=== Ursula is now known as Ursinha
sinzuideryck, since the releases are being done by API, there is no way that the date is set. the field is not exposed in the UI either15:41
deryckah, ok.15:41
sinzuideryck, I think we need to choose a) push the rule into the model so that the status attr also updates the datereleased attr or b) expose the datereleased attr over the api to let owners change it anytime they like.,15:42
derycksinzui, I like b personally.  Makes sense to me an owner might want to set this themselves, if doing everything else over the API.15:44
sinzuiI see datereleased is exported over the API. I think someone can set it15:44
sinzuideryck, the rule is in place to ensure the field is not set in an impossible status. field validator is needed15:45
jcsackettsinzui: mumble?15:46
derycksinzui, can't the validator kick in, even if set over the API?  But it sounds like this is possible anyway, if it's exposed.15:46
sinzuiah, the field is editable over the api by anyone with LP moderate, which hopefully includes the series RM15:47
jcsackettoh, sorry, i see you're in the middle of a conversation. :-P15:48
sinzuideryck, the validator will kickin if we define a new field or update the existing date field to use constraint=???15:48
cjwatsonStevenK: do you think you could run dpkg-xz-support through again, once you see this?  I'd like to establish whether it has anything to do with the launchpad-dependencies breakage (which seems not unlikely) before doing further manual investigation15:52
derycksinzui, ah, I was thinking of the old bugs way of having a mutator in the model that does the validation in Python. This doesn't work if there are db constraints doing the validation now.15:52
sinzuideryck, The answer to the question is the jeremy is not an admin or registry expert. I think we want to change the security checker so that the series.driver (RM) or all ubuntu drivers can change (version name status nominatedarchindep changeslist datereleased)15:56
sinzuiI will update the question and link it to the really old bug we have been trying to fix by changing the Ubuntu team structure15:57
derycksinzui, ok, cool.  Thanks much!16:06
=== beuno is now known as beuno-lunch
=== deryck is now known as deryck[lunch]
=== adeuring changed the topic of #launchpad-dev to: https:dev.launchpad.net/ | On call reviewer: bac | Critical bugs: 238 - 0:[#######=]:256
sinzuijcsackett, I sorted out the distro stuff. I can talk now16:51
jcsackettsinzui: i just grabbed lunch. ping you when i'm done?16:51
sinzuiyes16:52
jcsackettsinzui: i'm getting on to mumble now.17:00
henningehelp!17:06
henningeI am totally stuck in trying to get a js test to run.17:06
henningeSomething to do with loading, I think17:06
henningehm, just solved one thing but there was more ...17:08
henningeWhich js file do I need to load to have the "LP" object defined?17:11
jmlhenninge: lib/lp/app/templates/base-layout-macros.pt?17:13
henningeoh17:13
* henninge looks17:13
jmlit's just a grep-informed guess.17:13
henningeI only searched js files.17:15
henningejml: yeah, it's there17:15
henningebut that's no use for a test, so I will have to create a dummy I guess.17:15
jmlhenninge: grep also points me at lib/lp/code/javascript/tests/test_branchrevisionexpander.html:17:17
jmlhenninge: which, at a guess, declares a dummy.17:17
henningeyes it does17:18
henningejml: thanks17:18
jmlhenninge: don't thank me, thank 'bzr grep "var LP"'17:18
henninge;-)17:19
=== deryck[lunch] is now known as deryck
deryckhenninge, do you want LPS object or the js web service client?17:36
henningederyck: LP.cache17:37
henningebut I got it figured out now.17:37
deryckhenninge, ok.17:37
flacostesinzui: you might interested in bug 82967818:01
_mup_Bug #829678: Person picker widget to add a member says it fails but really didn't <person-picker> <regression> <Launchpad itself:Triaged> < https://launchpad.net/bugs/829678 >18:02
sinzuiflacoste, no I am not. It is a dupe of the bug that jcsackett is working on18:03
flacostesinzui: a cool, then!18:03
sinzuiI will update the master bug because I reported nothing happen because the spinner failed.18:04
benjijam: is there a particular person I should ask to review a small bzr MP?  (https://code.launchpad.net/~benji/bzr/bug-702914/+merge/72239)18:13
benjidarn, I bet jam is quite AFK at the moment18:15
jelmerbenji___: hi18:22
=== benji___ is now known as benji
benjihi jelmer18:22
jelmerbenji___: it's really nice to see tests for the lazy import threading issue18:23
jelmerbenji: have you seen bug 39681918:23
jelmer?18:23
_mup_Bug #396819: AttributeError: _factory - lazy imports are not threadsafe <lazy-imports> <oops> <Bazaar:Confirmed> <loggerhead:Triaged> < https://launchpad.net/bugs/396819 >18:23
benjijelmer: nope, I hadn't seen that; it looks like a dupe of the other (or rather, the other is a dupe of 396819)18:25
jelmerbenji: yeah, indeed18:25
abentleybac: could you please review https://code.launchpad.net/~abentley/launchpad/upgrade-not-branch-error/+merge/72242 ?18:28
bacabentley: sure18:28
abentleybac: thanks.18:28
benjijelmer: do you know if the bzr guys look at their review queue regularly (i.e., will they find my MP lying there and pick it up) or should I email one or more of them?18:31
abentleybenji: they have one guy assigned to the review queue, called the "patch pilot", every week.18:33
baclooks good abentley18:33
benjiabentley: great, thanks18:33
abentleybenji: from their topic, looks like it's Riddell this week;.18:33
abentleybac: thanks.18:33
benjiabentley: cool, I'll anticipate hearing from him then18:34
jelmerbenji: I was actually just doing a review :)18:35
benjijelmer: yay!18:35
jelmerbenji: I'd like to get some input from jam too though, as he's probably most familiar with lazy_import and all its corner cases.18:36
benjimakes sense18:37
=== cr3_ is now known as cr3
jelmerbenji: do you know if there's any way to find out why loggerhead on qastaging is failing? It's just giving me a "Internal Server Error" without referencing an OOPS or anything like that.19:04
benjijelmer: not off the top of my head... but I'll look at it in a minute and see if I can think of anything19:05
jelmerbenji, thanks19:08
=== beuno-lunch is now known as beuno
nigelbwhat's the correct alternative to EDGE_SERVICE_ROOT these days?19:23
abentleynigelb: production.19:24
abentleynigelb: i.e. LPNET_SERVICE_ROOT19:25
nigelbaha19:25
nigelbabentley: thanks!19:25
abentleynigelb: no problem.19:26
benjijelmer: it looks like it's having an error trying to report an error that it's having: https://pastebin.canonical.com/51493/20:04
=== Ursinha` is now known as Ursinha
henningeabentley: maybe you'd enjoy reviewing this? https://code.launchpad.net/~henninge/launchpad/bug-824435-failure-reporting/+merge/7225520:20
henningeabentley: but I can also ask the OCR20:20
=== Ursinha is now known as Guest59628
abentleyhenninge: I'm happy to look at it.20:21
henningeabentley: thanks20:21
nigelbflacoste: aww, I wish I could see those graphs20:21
abentleyhenninge: in some browsers (IE), the last element in a list must not have a comma following it.  Please fix that before landing.20:26
abentleyhenninge: It also looks like you've made changes that will break the existing use of IORecorder, i.e. renaming success -> response.20:31
henningeabentley: I added "respond" and made "success" use that.20:32
henningebut  I just found something else, so expect another revision.20:33
henningeabentley: I also ran test_lp_client with that new iorecorder.20:33
abentleyhenninge: okay, cool.  I didn't see the new success.20:34
flacostenigelb: i can't give you access, but I can copy them in a public location20:34
nigelbflacoste: that would work, thanks!20:35
jelmerbenji: sorry, was away for a bit for dinner20:36
jelmerbenji: that error looks odd20:36
jelmerbenji, out of curiosity, where did you look to find that log?20:36
benjijelmer: note that I'm not sure that that error is the result of requests, but it's the only error in the logs20:37
benjijelmer: from /srv/launchpad.net-logs/qastaging/asuka/launchpad.log on devpad.canonical.com20:37
jelmerbenji: ah, thanks20:42
henningeabentley: screenshots in the MP! ;-)20:42
abentleyhenninge: cool.20:43
henningeabentley: I also pushed a new revision20:45
abentleyhenninge: r=me20:46
henningeabentley: thanks! ;-)20:46
nigelbI forget, how is it that I run only one test?20:47
flacostenigelb: http://people.canonical.com/~flacoste/LPProjectCriticalClosed-2011-04-01_2011-0820.png20:55
flacosteand http://people.canonical.com/~flacoste/LPProjectCriticalFiled-2011-04-01_2011-0820.png20:55
nigelbflacoste: yay, thanks!20:55
=== bac changed the topic of #launchpad-dev to: https:dev.launchpad.net/ | On call reviewer: - | Critical bugs: 238 - 0:[#######=]:256
deryckHave a nice weekend, everyone.21:08
bacsinzui_: you still around?21:20
sinzui_I am21:20
=== sinzui_ is now known as sinzui
sinzuiirc was lying21:20
bacsinzui_: mvo is reporting he cannot see private bugs for a source package he is the maintainer21:20
bachas anything changed around private bug visibility?21:21
sinzuiNo21:21
sinzuiYou still need to be subscribed21:21
bache's also indirectly in the team that is the bug supervisor for the distro21:21
sinzuibut is the supervisor subscribed to those bugs?21:22
sinzuimarking a bug private does not subscribe the supervisor, though I hope to fix the 6 year old bug in 4 weeks21:22
* bac looks at userCanView21:23
sinzuibac: which distro? Ubuntu?21:24
bacyes21:24
bacupdate-manager package21:24
bacmvo21:24
bacsinzui: i thought the bug supervisor was subscribed to bugs when they are made private21:25
nigelbbac: I just tested on qastaging. Only security supervisor is sub'd for private bugs.21:26
sinzuibac: Consider the changes made by structural subscriptions. User can be very specific about what they subscribe to and about the team that is subscribed. When a bug is made private, the structural subscribers are converted to bug subscribers. In the past, the bug supervisor could not control which email he got...he was subscribed to every bug, so he was always in the set of people subscribed. Now that the team can filter21:27
sinzui the notifications, the team is implicitly opting out of private bug subscriptions21:27
bacoi21:28
sinzuiThere is only one code point where a bug supervisor is explicitly subscribed to a bug, and it was written by statik 4 years ago. When a bug is created for a project with private bugs, the supervisor is subscribed21:28
bacah, right, that's why a project must have a bug supervisor before 'private by default' is enabled. that bit is what was confusing me.21:29
sinzuibac, Since I can see mvo's +participation page, I assume his membership in ~ubuntu-bugs is correct. Can other members of that team see the bugs? Are then only subscribed via that team21:36
sinzuibac: there is a small chance that something else private on that page could cause a 403 oops for him as we have seen on branch pages21:36
nigelbanyone around?22:21
nigelbgah, monday then.22:28

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