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

lifelessyes00:00
thumpercan someone else try authorizing a new launchapdlib token?00:00
thumperI got a client side and server side blowup00:00
lifelesswin00:00
lifelessOOPS in the response?00:00
wgrantthumper: Works for me.00:01
wgrantOn Maverick.00:01
thumperlifeless: https://pastebin.canonical.com/36957/00:01
thumperlifeless: OOPS-1713EB2534 on server00:01
lifelessthats...surprising00:02
lifelessits also surprising to get the backend failed message00:02
wgrantWhat exploded this time?00:03
lifelessorry, there was a problem connecting to the Launchpad server.00:03
wgrantThat's... not an oops, though.00:03
lifelessI know00:04
lifeless  Module canonical.launchpad.webapp.publisher, line 297, in __call__00:04
lifeless    self.initialize()00:04
lifeless  Module canonical.launchpad.browser.oauth, line 259, in initialize00:04
lifeless    assert self.token.is_reviewed, (00:04
lifelessAttributeError: 'NoneType' object has no attribute 'is_reviewed'00:04
wgrantSpecial.00:05
lifelessat least its a fast page00:05
lifeless207ms00:05
wgrantHeh.00:05
lifelessLLLLEEEEOOOOONNNNNAAAAAARRRRRRDDDDDD00:05
lifelessthumper: I'll file a bug for this00:05
* maxb wonders what an earth has happened to the kdegames import, which was "Successful", but "This branch has not been imported yet"00:06
maxbhttps://code.edge.launchpad.net/~neon/kdegames/trunk00:06
thumpermaxb: not scanned I guess00:06
wgrantThe scanner is broken at the moment, isn't it?00:06
thumpernot fully broken00:06
thumperonly to those that are linked to bugs with distribution source package tasks00:07
lifelessthumper: the token authorized ok00:07
lifelessthumper: I think00:07
thumperlifeless: well the client went on its merry way00:07
lifelessyeah00:07
lifelessbut the 'show it to the user' page went boom00:07
maxbIf the branch was scheduled for scanner attention, ought it not show they pale yellow "Updating" box?00:08
lifelessmaxb: we've had a scanner malf00:09
lifelessmaxb: may be implicated00:09
* mwhudson afk for a bit00:09
=== Ursinha-afk is now known as Ursinha
rockstarthumper, shall we skype about some UI?00:32
thumperrockstar: still chasing critical issue00:36
rockstarthumper, okay.00:37
rockstarthumper, maybe some annotated mockups?00:39
thumperrockstar: lets talk anyway00:40
rockstarthumper, okay.00:40
=== gary_poster_ is now known as gary_poster
MTecknologyWhy is it that Configuration Progress is never complete until you actually enable everything? You can't just say, I don't want to use this.03:43
thumperMTecknology: you should be able to03:43
thumperMTecknology: if it doesn't work that way it is a bug03:43
lifelessthumper: you can't for code hosting yet, I don't think.03:46
MTecknologyoooooh! You can now!03:47
MTecknologyI lied and ignore me :P03:47
MTecknologylifeless: it seems you can :)03:47
wgrantMTecknology: Yeah, as of yesterday it should be OK.04:03
wgrant+configure-translations isn't exactly... intuitive.04:20
wgrantIs it finished?04:20
MTecknologykiko: hey, how ya been?04:21
MTecknologyI hate it when I should know exactly where something in LP is... but I can't remember. This is gonna bug me. :P04:24
wgrantThings do move occasionally.04:25
wgrantWhat've you lost?04:25
MTecknologyadd a download file04:26
wgrantYou need to do it from within a release.04:26
MTecknologyand that's the part I forgot..04:27
MTecknologythanks :)04:27
wgrantlifeless: This new request timeline stuff is pretty awesome.04:37
michaelh1Hi there.  I have a web app that uses launchpadlib to create tickets.  How can I set the reporter to an arbitrary user?04:47
michaelh1(on creation that is)04:48
wgrantThe API doesn't support impersonation.04:48
wgrantIt may eventually for some trusted clients.04:48
michaelh1OK.  I want the reporter to be the same as the person logged into my web app.  The web app is authenticated using OpenID against LP.04:49
michaelh1...and there's only a few users.04:49
wgrantAh. In that case you should probably get an OAuth token on behalf of the user.04:49
michaelh1What's a clean way of doing that?  Worst case is I give them a small app that runs on their machine and get them to email me the credentials file...04:50
wgrantWell, I'm not sure if there's a great web-based workflow yet -- I haven't done it myself.04:51
wgrantBut when you tell launchpadlib to request a token, it gives you an authorisation URL. The user has to visit that.04:51
michaelh1Does the 'change non-private data' permission allow me to create and modify tickets?04:54
wgrantIf they're public bugs, yes.04:55
wgrantPrivate bugs require the Change Private Data permission.04:55
michaelh1Yip, these would be new public bugs.  What is a private bug?04:55
wgrantBugs start private if their project is configured that way, or if they're marked as security related. You can toggle privacy with the 'This bug is public' box in top right of the bug page.04:56
wgrantOnly subscribers can see private bugs.04:56
michaelh1Thanks for your help.  We only have a couple of bug reporters so the OAuth hack-around will be fine.05:00
MTecknologywgrant: for default private bugs, it needs to be either security related or have the proprietary thing, right?05:00
wgrantMTecknology: I believe so.05:01
lifelesswgrant: thanks05:03
lifelesswgrant: what prompted that ?05:03
wgrantlifeless: Just looking at OOPSes locally and seeing all the memcache etc. calls accounted for.05:04
wgrantFewer unexplained holes in time is good.05:05
lifelessyeah05:09
lifelessalso I think sinzui was able to debug a memcache issue more quickly, via it05:10
wgrantIt looks like it.05:12
* StevenK tries to find how one uses lplib via the test suite05:12
wgrantIt makes it a lot less opaque.05:12
MTecknologyI think you guys should switch to Nginx :D05:14
* MTecknology wonders how hard it would be to do that05:15
wgrantStevenK: Grep around for launchpadlib_for.05:15
wgranttest_archive_webservice looks reasonable.05:16
wgrantI should check how that performs.05:18
wgrantSince it would be nice to use it everywhere.05:18
mwhudsonit's pretty slow i think05:19
wgrant:(05:19
mwhudsonbut don't take my word for it05:19
wgrantWe should be able to cache the processed WADL or something.05:19
thumpermwhudson: I'm confused05:20
thumpermwhudson: take a look at https://code.edge.launchpad.net/~neon/kdegames/trunk05:20
mwhudsoni remember debugging some weird interaction with launchpadlib_for that made me very angry05:21
mwhudsonthumper: it *is* friday, maybe a beer will help?05:21
thumpermwhudson: I'm stopping soon to drink a bottle of wine05:21
thumperprobably pinot noir05:21
thumpermaybe two05:21
thumperit has been one of those days05:21
mwhudsonthumper: branch puller is stuck?05:22
MTecknologythumper: all I have for wine - two cheap brands I mixed together05:23
lifelesswgrant: have you checked prod & edge?05:23
lifelesswgrant: for tracebacks?05:23
thumpermwhudson: no it isn't stuck05:23
thumpermwhudson: it hasn't been pulled05:23
thumpermwhudson: I've checked the puller logs05:23
thumpermwhudson: and... there have been no scan jobs05:23
mwhudsonthumper: maaaybe the requestMirror call does to the internal xmlrpc server oopsed?05:24
lifelessMTecknology: probably not hard; very uninteresting.05:24
lifelessMTecknology: what would we gain?05:24
mwhudsonthumper: you could try calling requestMirror over the api and seeing if that kicks it into life?05:24
thumpermwhudson: yeah, I'll try that05:24
thumpermwhudson: maybe it was a timeout to finishJob ?05:24
MTecknologylifeless: nginx is super awesome... and for static content kicks apache's ass - I don't know how many of your requests are for static content though05:25
mwhudsonthumper: oh right, yeah05:25
mwhudsonthumper: grep in the arsenic oops dir?05:25
mwhudsonthumper: would be odd to happen to the same branch repeatedly though05:26
thumperit would05:27
thumpermirror requested05:27
* mwhudson afk for a sec05:27
lifelessMTecknology: super awesome really doesn't mean anything to me.05:28
wgrantlifeless: Yes.05:28
lifelesswe have very few static files - css, the iconset and shortly the wadl. Oh, and the librarian which is only kindof static (its static but with complex url mapping & dynamic mime types and access control05:28
lifelesswgrant: thanks05:28
lifelessMTecknology: I have no interest in change for changes sake05:29
wgrantlifeless: I've only seem them on production for a few minutes a few years ago. They were on beta for a while (when it was called beta), and on dogfood until just a couple of years ago.05:29
mwhudsonthumper: the branch seems to have been pulled now05:30
MTecknologylifeless: With Apache if you have say mod_php or mod_python enabled, every single request forks a new instance that can handle those requests. Nginx only passes the request to that if it's needed. Then you can have it try to server static content that needs no additional processing which makes it extremely fast, and light. Then you could keep using Apache if preferred for those heavier requests.05:30
mwhudsonMTecknology: the chance of a server that's not in ubuntu main being deployed is .... small05:31
wgrantMTecknology: Launchpad just uses Apache to serve a few static files and proxy to the Zope appserver.05:31
wgrantHm, nginx really still isn't in main?05:31
wgrantodd.05:31
lifelessMTecknology: mod_wsgi++, and php -argh.05:31
lifelessMTecknology: also the prefork worker doesn't fork on every request05:32
mwhudsonthumper: come to think of it, it can't have been finishJob oopsing, because that's what records the success05:32
lifelessMTecknology: I know that nginx has a lot of cred going around, but someone needs to map it to a /problem/ or /benefit/ that is relevant to us, before anyone is going to put in the time (non trivial) to change.05:32
thumpermwhudson: hmm...05:33
thumpermwhudson: WTF could it be then?05:34
MTecknologylifeless: I guess if you proxy most with wsgi then it would be an insanely easy deployment. It's probably come down to just the ability to serve static content much faster. and in this case maybe the benefit wouldn't outweigh the hassle05:34
MTecknologyEither way I think I should pull the branch and try out some benchmarking.. Could be fun..05:34
lifelessMTecknology: I think we're using proxypass for everything in fact.05:34
mwhudsonthumper: don't know05:34
thumper:(05:34
MTecknologylifeless: even for static?05:34
thumperand Friday afternoon isn't the time to go looking for it05:34
mwhudsonthumper: it's not in the puller logs at all?05:35
lifelessMTecknology: benchmarking would be essential. As mwhudson says, being in main is very important too (otherwise the lp team has to maintain the package)05:35
lifelessMTecknology: for -anything-05:35
thumpermwhudson: nope05:35
thumperrequestMirror worked05:35
MTecknology.. so I definitely should peek at that..05:35
thumpernow pulled and scanned05:35
MTecknologyI would like to know why nginx isn't in main yet though :P05:35
mwhudsonthumper: i guess you could try to find the relevant worker logs from pear05:35
MTecknologyI should go find that out too..05:36
thumpermwhudson: http://launchpadlibrarian.net/55296521/neon-kdegames-trunk.log05:36
MTecknologylifeless: btw- thanks for giving an honest discussion to it. :)05:36
thumpermwhudson: earlier one http://launchpadlibrarian.net/55292524/neon-kdegames-trunk.log05:37
mwhudsonthumper: that's the log from the worker -- i meant the log from the worker monitor i guess05:37
thumpermwhudson: ah...05:37
mwhudsonthey don't end up in the librarian, but are kept on pear05:37
mwhudsondunno if they're synced to devpad, likely not05:38
mwhudsonspm: grep kdegames  in /srv/importd.launchpad.net/production-logs ?05:39
spmmwhudson: they're on sodium, or should be05:39
mwhudsoni guess i should find out why i can't log in to devpad any more05:40
spmmwhudson: /x/launchpad.net-logs/production/neumayer05:40
spmhaha, one sec then05:40
mwhudsonthumper can do it...05:40
mwhudson:)05:40
spm*snort*05:40
thumperdo what?05:40
mwhudsonthumper: grep kdegames -r /x/launchpad.net-logs/production/pear05:41
mwhudsonon devpad05:41
* thumper is there05:41
thumperholy crap there are a lot of files in there05:41
spmthat's the "cleaned up" version. should have seen what it was like before.05:42
StevenKmwhudson: Probably due to your team move05:43
MTecknologylifeless: so.. Nginx in main, Patch for configs to work perfect, Benchmarks, A good reason to switch, anything else?05:44
mwhudsonStevenK: yeah05:44
lifelessMTecknology: I think thats it; elmo has previously discussed this in a more pithy form "hell no" :- but if there is a compelling story I don't see why we wouldn't.05:45
lifelessHowever, I don't *expect* a compelling story, based on what I know of our problems (today)05:45
MTecknologyAre most of the issues DB side?05:45
thumpermwhudson: I can't see anything, but I'm feeling like I'm not getting very far05:46
lifelessMTecknology: I wouldn't like you to spend a lot of time and end up empty handed is all I'm saying05:46
* thumper halts05:46
mwhudsonthumper: :/05:46
lifelessMTecknology: DB issues are the proximate cause of a good 50% of the perf issues I look at; another 40+ are most closely identified as python - single threadedness, time-to-do-stuff05:47
MTecknologylifeless: ya um... I tried to add a patch to the php package which added a whole new feature and I fought with it for about a month... The hardest part about this would be performing accurate benchmarking :P05:47
lifelessanother 10% are things like sending mail (200ms per mail)05:47
lifelesswe serve 2.6Million hits a day from the backend servers05:47
MTecknologyreally?.. I sould thought it'd be more05:48
lifelesssome larger count from the squid farm (anonymous content only) & apache handles /all/ of that with nearly no load and no maintenance or uptime issues.05:48
MTecknologyNot to say 2.6mil is low.. I just woulda thought it'd be higher05:48
lifelesslet me check05:48
lifeless2838269 from lpnet05:49
lifelessthats excluding:05:49
lifeless - librarian05:49
lifeless - bazaar.*05:49
lifeless - edge05:49
MTecknologyoh.. that sounds more like what my guess would been then.. My guess was ~10mil05:49
lifeless99% of our requests, by count, complete in 3.2 seconds05:49
lifelessedge was only 66K yesterday05:50
MTecknologyoh- with nginx you can upgrade it in place, so you update the package and never lose any request. I don't think apache can do that - but I suppose you have plenty of redundancy too05:50
lifelessOTOH we had a big chunk of downtime in place05:50
lifelessMTecknology: yeah, we have L4 proxies in place already05:50
MTecknologyNot many people use edge?05:50
MTecknologyNow I really feel edgy :P05:51
lifelesson a non-release day : 168171605:51
lifeless1.6M05:51
lifelessanyhow, we're going to get rid of edge real-soon now05:52
MTecknologykeep everyone looking at the same thing?05:52
lifelesssimplify deployment05:53
lifelessget fixes to all users more quickly.05:53
MTecknologyoh05:53
MTecknologyalrighty - so I think I got my curiousity satisfied for the day :)05:54
MTecknologyI have one other question.. what is ~buy-something for?05:54
wgrantThe Software Center purchasing feature.05:55
wgrantWhich is very nearly there, I believe.05:55
lifelessno idea but I'd guess its the agent account for the SCA05:55
MTecknologyoh05:55
lifelesswhich is how folk buying debs from ppas via software centre will have their access requests relayed into LP05:55
MTecknologyelachuni seems to be doing a crap load of work05:56
MTecknologyBeen a while since I talked to him or metcalfe - they seem to be locked in closets over there..05:56
MTecknologyAight, it's beddy bye time - I'll ttyal05:59
MTecknologylifeless: thanks for that chat; wgrant: thanks for the help05:59
wgrantNight.05:59
lifelessgnight06:09
lifelessanyone around can do a small review ?08:39
adeuringgood moring08:44
mrevellMorning09:04
lifelesshi mrevell09:09
lifelessmrevell: btw, it occured to me you might want to do a team-joining interview with me - or not, I'm easy.09:09
mrevelllifeless, Oh, I thought I'd sent you one already.09:12
* mrevell goes to rifle through the Sent folder.09:12
lifelessmrevell: heh09:44
wgrantlifeless: Did you get a response from -security about the restricted librarian thing?09:52
lifelessyes09:59
lifeless+1, all things considered09:59
lifelesswe have the SSL certs09:59
lifelessits with losa to be configured up on staging and lpnet10:00
lifelessonce thats all done we'll arrange to set the feature flag on staging and QA it all10:00
stubAnd me... I need to sort the session db!10:01
stubWhen are we looking at switching it on?10:01
lifelessstub: Monday?10:01
stubk. I'll do it after a coffee.10:01
wgrantExcellent.10:05
wgrantHas the domain restriction landed?10:06
wgrantI forget.10:06
lifelesswgrant: no, its in the rt for apache to do.10:07
wgrantAh.10:08
kikoMTecknology, pretty good, just fell off the net :)10:13
deryckMorning, all12:00
jtvReason #311 for not using ReST in doctests: bzr conflicts are hard enough to read with all the >>> that I really don't need any more ======= in there12:49
nigelbheh ;)12:57
=== matsubara-afk is now known as matsubara
MTecknologykiko: You did... and it made me sad. :(14:00
kikoMTecknology, it's all good now!14:01
MTecknologyYay! :)14:01
=== almaisan-away is now known as al-maisan
cr3what's the difference between the "lp" icon (see blueprint project) and the "pad" icon (see launchpad-project project)?15:17
deryckrockstar, ping16:04
rockstarderyck, pong16:25
deryckrockstar, yo, dude, I have progress on the widget mess.16:26
rockstarderyck, really?16:26
rockstarderyck, skype then?16:26
deryckrockstar, yup.  And it's dumb but simple.  http://pastebin.ubuntu.com/491643/16:27
deryckyeah, we can skype16:27
* deryck looks for headphones16:27
rockstarderyck, are you freakin' kidding me?16:27
derycknope16:28
deryckrockstar, do you want to skype, or that un blocks you now?16:28
rockstarderyck, that makes the events fire?16:29
deryckrockstar, let's skype to do high bandwidth.16:29
rockstarderyck, skype doesn't think you're around.16:29
deryckcause I am only now :-)16:30
deryckring me when you want, rockstar16:30
deryckrockstar, guess I lost you.  I'm done though, if you are.16:47
rockstarderyck, I think I lost you.16:47
rockstarYup.16:47
rockstarderyck, we were finishing up anyway.  I was just saying that I'm going to consider my wizard work done (for now) when I have two steps.16:47
deryckrockstar, righ16:48
rockstarderyck, okay, cool.16:48
deryckrockstar, so feel free to call on me or gmb if you need help next week.  Or me later today even.16:48
deryckgmb needs to wizard widget to move forward, obviously.16:48
=== deryck is now known as deryck[lunch]
=== Ursinha is now known as Ursinha-lunch
=== matsubara is now known as matsubara-lunch
=== beuno is now known as beuno-lunch
=== Ursinha-lunch is now known as Ursinha
=== deryck[lunch] is now known as deryck
=== al-maisan is now known as almaisan-away
EdwinGrubbsmatsubara-lunch: ping18:20
=== matsubara-lunch is now known as matsubara
matsubarahi Edwin-afk18:24
matsubarahmm18:24
matsubarahi EdwinGrubbs18:24
EdwinGrubbsmatsubara: I just wrote a big reply to robert's comments on oops-tools, but I wanted to see if you could answer what the status is on open sourcing it. gary had implied that you would know more.18:26
matsubaraEdwinGrubbs, I'll reply. We had a conversation about it during the foundations stand up call today.18:27
EdwinGrubbsmatsubara: also, what email lists should I forward the email to in order to get ISD's and U1's input? I'm not sure if I'm even subscribed to their lists, though.18:28
matsubaraEdwinGrubbs, good question. I'm not sure either as I'm not subscribed to their lists. I usually talk to specific people on those teams (U1: Roman Yepishev <rye>, ISD: Anthony Lenton <achuni>)18:33
=== beuno-lunch is now known as beuno
=== almaisan-away is now known as al-maisan
=== jelmer_ is now known as jelmer
lifelessEdwinGrubbs: I've replied ;)21:17
=== Ursinha is now known as Ursinha-afk
=== matsubara is now known as matsubara-afk
=== al-maisan is now known as almaisan-away

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