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

lifelesswgrant: no, they aren't.00:26
lifelesshe was going to.00:26
* wgrant blames email.00:26
=== Ursinha-afk is now known as Ursinha
=== matsubara is now known as matsubara-afk
thumperwgrant, StevenK: ping01:54
lifelessflacoste: when you get up01:54
lifelesshttps://chinstrap.canonical.com/~stub/splitit/4vs5/diff_shipit-20090810T_212109_vs_204654/01:54
thumperdo either of you know where build queue entries are kept?01:54
wgrantBuildQueue, you mean?01:55
lifelessflacoste: the request response time degrades terribly as load goes on in that benchmark - we'd want it to stay flat01:55
thumperwgrant: perhaps01:56
lifelessflacoste: according to that , we'd be able to run at 30-40 concurrent users max on that config01:56
wgrantthumper: What are you looking to do, exactly?01:56
thumperwgrant: I'm chasing down some weird old buildfarmjobs01:56
thumperwgrant: there are some entries there that aren't being dispatched01:56
thumperwgrant: and I'm wondering why01:56
wgrantthumper: These aren't the same ones that don't have a specific_job?01:56
thumperwgrant: there are 15 old recipe buildfarmjob rows, 12 of those don't have a sourcepackagerecipebuild, 3 do01:57
thumperI'm wondering what happened to those 301:57
wgrantthumper: SourcePackageRecipeBuildJob links SPRBs to Jobs. BuildQueue.job then references that Job.01:58
wgrantSo there are three rows that you need to look for for each of those three builds.01:58
thumperso to go from the buildfarmjob to the buildqueue you need to go through 5 tables?01:59
thumperthat sounds freaking insane01:59
wgrantThe links that I just referenced are all scheduled for demolition.01:59
wgrantBuildFarmJob is going to replace all of them.02:00
thumperwgrant: so BuildFarmJob is the new goodness?02:00
wgrantthumper: That's right.02:00
thumperwgrant: and sourcepackagerecipebuild is staying?02:01
wgrantNow Translations is on it, I just need to find a free weekend and delete the rest.02:01
wgrantRight.02:01
wgrantSourcePackageRecipeBuild*Job* is dying.02:01
thumperok02:01
thumperbut builds are being dispatched through the buildjob right now?02:02
wgrantYes.02:03
thumperbut not for much longer?02:03
wgrantCorrect. Soon only BuildFarmJob, PackageBuild and SourcePackageRecipeBuild will be involved.02:03
thumperok02:03
wgrantThe BuildQueue and SourcePackageRecipeBuildJob tables will vanish, and everyone will be a lot less confused.02:03
thumperand no links to the Job table at all?02:03
wgrantOnce we have everything sitting well-abstracted on top of it, BuildFarmJob will probably migrate to storing most of its data in a Job.02:03
thumpercool02:03
wgrantBut that's not a significant change, so hasn't been thought about too much yet.02:03
thumperthanks for the help02:03
wgrantI decided that having BFJ store things in a Job from a start would be even more confusing: it would mean having two Jobs for every build farm task during the migration period.02:04
thumperso...02:06
thumperthese other three rows have no sourcepackagerecipebuildjob links02:06
wgrantYou're not checking on staging, are you?02:06
thumperhence not being built?02:06
thumperI am right now02:07
thumperbut I can fling the query at spm02:07
wgrantThe staging restore dequeues builds. I don't know if it deletes SPRBJs too.02:07
wgrantBut it definitely deletes the BuildQueues.02:07
poolieso generally speaking i feel i should add fixtures rather than add to the LaunchpadObjectFactory02:12
poolieis that true?02:12
thumperpoolie: who said what about the factory?02:12
thumperpoolie: can you give me an example?02:14
pooliesorry, my recollection of it is vague02:14
pooliei thought that abentley said it was quasi-deprecated?02:14
poolieor not a good pattern?02:14
wgrantSampledata is deprecated.02:14
pooliethe example is if i want a thing to establish feature rules for testing02:14
wgrantThe factory is very much not.02:14
thumperwgrant: in the end, the BuildQueue rows are missing for the respective jobs02:15
wgrantthumper: Do they have SPRBJs?02:15
thumperwgrant: yes02:15
thumperwgrant: and Jobs02:15
wgrantthumper: There's nothing special about the three?02:16
thumperwgrant: not that I can fathom without actually looking :)02:16
thumperwgrant: they are from july02:16
wgrantIt could just be a botched deletion, I suppose.02:16
thumperyeah, I suppose02:17
wgrantIf it hasn't happened in three months...02:17
james_ware daily recipe build jobs being created?02:58
pooliehttps://bugs.edge.launchpad.net/launchpad/+bug/649500 is amusing03:32
wgrantI think I saw a bug about that a while ago.03:33
wgrantThe issue has certainly been present forever.03:33
pooliecan i have just features/browser.py, or should it be a submodule?03:34
poolieah i see there are some precedents for a plain file03:34
wgrantBug #64043503:34
_mup_Bug #640435: branch name conflicts with zope.ManageContent <oops> <Launchpad Foundations:Triaged> <https://launchpad.net/bugs/640435>03:34
* mwhudson wtfs at poolie's bug03:34
pooliei guess it's inherited from some builtin zope thing03:35
poolieis it a cms or a framework? who can tell03:35
mwhudsonah yeah03:36
wgrantWell, the ZTK was meant to fix that duality.03:36
wgrantI think it has.03:36
mwhudsonj'accuse zope.app.publisher03:37
poolieyep03:38
wgrantEr.03:38
wgrantWhy do we use that?03:39
rockstar\o/03:39
* rockstar conquers buildout03:39
pooliespecifically BrowserSkinsVocabulary03:39
wgrantI would have thought all our needs would be in zope.publisher.03:39
poolieit doesn't seem to add anything we do want03:39
wgrantlib/canonical/launchpad/doc/zcmldirectives.txt:#        <class 'zope.app.publisher.browser.viewmeta.SimpleLaunchpadViewClass'>,03:40
wgrantWTF?03:40
wgrantI get the feeling that I don't want to look at that file.03:40
mwhudsonwell hehy, if we can fix a bug by dropping a dependency03:40
wgrantWe still import a whole lot of stuff from it.03:41
wgrantBut I'm fairly sure it was all moved to other packages ages ago.03:41
wgrantOh look, zope.app.publisher imports them from zope.browserpage.03:42
mwhudsonwgrant: certainly looks like it03:42
wgrantHm.03:42
wgrantBut we still need it for XML-RPC :(03:42
mwhudsonit's probably not very hard to write a zcml directive that unregisters the offending view03:45
wgrantI'd personally prefer to see if we can stop needing IMethodPublisher, since that's our remaining dependency on zope.app.publisher. There must be a replacement...03:46
mwhudsonit03:47
mwhudsonseems pretty tiny03:47
wgrantIt really is.03:47
wgrantHm. Looks like z.a.p might provide the xmlrpc:view ZCML directive.03:48
wgrantSo it may be harder to excise.03:48
wgrantWhy is that in there, I wonder...03:48
wgrantAh, the ZTK steering committee appears to have just not yet decided where to put it.03:50
wgrantGrar.03:50
wgrantHmm.03:52
wgrantWhat happens if we just remove the zope.app.publisher ZCML inclusion?03:52
wgrantAnd import just the zope.app.publisher.xmlrpc03:52
* wgrant tries.03:52
wgrantThat seems to have worked.03:54
mwhudsoni wonder if there's some way of finding all the places where we import from deprecated locations03:56
wgrantGiven the recent ZTK reshuffles, that's probably most of our imports...03:56
wgrantAll the xmlrpc tests are happy with my fix, and the webapp seems to work.03:57
wgrantI'm not sure how, though.03:58
wgrantSomething else must be pulling in the zope.browserpage and co.03:58
thumperlifeless: got any ideas about https://bugs.edge.launchpad.net/launchpad-code/+bug/537116 ? I don't know where to start looking.04:18
_mup_Bug #537116: bzr branch from launchpad disconnected after exactly one hour <Launchpad Bazaar Integration:Triaged> <https://launchpad.net/bugs/537116>04:18
=== thumper changed the topic of #launchpad-dev to: Launchpad Development Channel | Performance Tuesday ! | Week 3 of 10.10 | PQM is open for business | firefighting: - | https:/​/​dev.launchpad.net/​ | Get the code: https:/​/​dev.launchpad.net/​Getting
lifelessthumper: his firewall perhaps ?04:24
* lifeless shoots first, asks questions later04:24
lifelesswe could try and reproduce04:24
lifelessI suspect something at his end though, because e.g. pulls of LP can be an hour and work04:25
pooliethere's no timeout on our end?04:42
poolieit's plausible it's his firewall04:43
pooliea bit strange if it kills an actually active socket though04:43
lifelessspm: do we have anything that would kill a bzr serve process / ssh connection after 1 hour ?04:44
spmI can think of several possibilities, but don't *know* which is likely.04:44
spmi'd be asking for a snoop that shows the termination. that may be a clue.04:45
mwhudsonwe have code in launchpad that's supposed to kill _idle_ connections after an houe04:45
mwhudson*hour04:45
poolieas far as whether it's killed by a reset or socket close04:45
pooliemwhudson: where is that code?04:46
mwhudsonpoolie: not sure now since jml shuffled this area04:46
* mwhudson pokes04:46
poolieif it was an econnreset it would be more likely to be a router intervention, i think04:46
pooliebut it's just an early eof, which could be anything04:46
poolieperhaps is slightly more likely to be app code than networking04:47
mwhudsonpoolie: lp.services.sshserver.service04:47
mwhudsonpoolie: line 150-ish04:47
mwhudsonoh right04:49
mwhudsonwell he's definitely being cut off by the idle_timeout04:49
mwhudsonbut what's happening is that the branching runs for an hour04:49
spm<mwhudson> poolie: line 150-ish <== was that from memory? or did you look it up? ;-)04:49
mwhudsonthen the connection goes idle04:49
mwhudsonthen an hour after that he's disconnected04:49
mwhudsonspm: i looked it up :-)04:49
spm:-)04:50
mwhudsonpoolie: there is also a bug in conch's ssh key renegotiation04:50
mwhudsonthat usually kicks in after a gigabyte of traffic04:50
mwhudsonhe doesn't seem to be close to that though04:50
poolieaside from anything else we should upgrade the origin branch04:52
pooliewell, it would be an incredible coincidence for that to happen after an hour04:56
pooliebut perhaps there's a time-based renegotiation too?04:57
pooliedo you have a bug number for that?04:57
spmit wouldn't be some reverse speed of light problem maybe? http://www.ibiblio.org/harris/500milemail.html04:58
mwhudsonpoolie: yes, but i can't find it04:59
thumperpoolie: I'm contacting the project owner05:03
thumperweb2py owner that is05:03
pooliespm if we have users more than one light-hour away, uh..05:07
pooliei'll be impressed05:07
spmyou never know......05:07
poolieabout 1e9 km05:08
lifelesstcp over spaceship would be painful05:09
lifelesstalk about slow start05:09
spmlifeless: you've not seen that rfc? it's an update on 114905:10
lifelesscarrier pigeon?05:10
mwhudsonhttp://twitter.com/#!/colmmacuait/status/2535222032305:10
poolienice05:11
spmlifeless: indeed05:11
spmbwhahaha05:11
poolieso in a bit of poking around i can't see anything in conch to do with automatically renegotiating keys, based on either traffic or time05:11
poolieit may well be there but i don't see it05:11
mwhudsonpoolie: it's client side05:11
nigelbspm: heh, that was a good one about 500 miles05:12
spmnigelb: *very* old favourite. The Story Of Mel, is another05:13
nigelbspm: Story of Mel?05:13
spmhttp://www.pbm.com/~lindahl/mel.html05:13
pooliemwhudson: and not implemented by conch as a client?05:14
mwhudsonpoolie: probably not05:14
pooliemwhudson: but ok, i can see how openssh might ask  for a new key after a few gb and then that could cause trouble with the server05:14
=== Ursinha is now known as Ursinha-afk
pooliebut that's almost certainly not what we're seeing here05:14
mwhudsonthis is infuriating, i spent quite a while looking at this and writing it up and now i can't find it05:14
mwhudsonpoolie: right05:14
pooliemwhudson: i'm trying to branch from there05:14
mwhudsonpoolie: i think openssh's default is 1 gig05:15
mwhudsonyou can change it05:15
pooliemy connection is faster so it may just complete05:15
pooliesays "depending on the cypher 1-4GB"05:15
pooliespm I watched "Colossus: The Forbin Project" last night05:16
pooliehad to bite my tongue a lot05:16
poolie"ffs it never works first time"05:16
spmpoolie: I've never heard of that one! I shall have to chase!05:18
poolievisually beautiful05:18
=== almaisan-away is now known as al-maisan
=== Ursinha-afk is now known as Ursinha
stublifeless: https://bugs.launchpad.net/bugs/637507 if you haven't seen it. I don't understand the low level stuff or the risks, but sounds like something we might want to do across the board.07:38
_mup_Bug #637507: Uploads with extra data in the .tar.gz rejected unnecessarily <boobytrap> <soyuz-upload> <Soyuz:Triaged by jelmer> <https://launchpad.net/bugs/637507>07:38
lifelessstub: hey07:38
lifelessstub: see the cassandra mail?07:38
lifelessstub: sigpipe handling; yes, it should really be reset by subprocess automatically.07:39
stublifeless: yes, and pfibiger pinged me this morning.07:39
lifelessstub: a wrapper for it would be useful07:40
stublifeless: I have to think about the timing for the cassandra - my lease on a new house starts the same day.07:40
lifelessmeep07:41
stublifeless: knowing the location would be helpful - short haul might be ok07:41
lifelessus I believe07:41
stublifeless: I was told 'up to mariana'07:41
lifelessah, interesting07:41
stubu1 is us centric though, so probably dullas again07:42
lifelesswould taipei count as short haul ?07:42
stubyes07:42
stubI suggested Taipei. 'We should all get to Taipei' I recall from a keynote.07:42
stubOnly problem with Taipei is I would want to take a holiday there and I can't ;)07:43
lifelessheh07:43
wgrantWhy is Dallas so popular?08:24
lifelesscheap, reasonably central08:31
lifeless(I guess, I have no knowledge)08:31
lifelesswgrant: hey, do you happen to know the name of the signal raised in +filebug w/apport ?08:33
wgrantlifeless: Signal?08:33
lifelessevent08:42
lifelessthingy dookhicky08:42
wgrantlifeless: To do what?08:42
wgrantI don't know of a special event.08:42
adeuringgood morning08:53
michaelh1Hi there.  I've started getting 'Errors in work item definitions' from 'Launchpad work item tracker <noreply@launchpad.net>'08:57
michaelh1emails.  How can I stop them?08:57
lifelessmichaelh1: thats not an lp service, for all that its using the launchpad.net domain08:57
lifelesslast i heard Martin Pitt was running it08:58
lifelessbigjools: hi; CPing your thing ?08:58
lifeless[thats code for 'had a good weekend?']08:58
michaelh1Right, I'll track pitti down...08:58
bigjoolsmoin09:00
lifelesswgrant: this is what I was meaning09:03
lifelesshttp://pastebin.com/SHStVhUv09:03
lifelessthough, that may not be enough09:04
lifelessI think I need to get a profile09:04
lifeless(can apport be pointed at staging?)09:04
pooliedo i need an __all__ even in tests?09:05
StevenKpoolie: Only if they export something09:06
pooliethanks09:07
mrevellMornin'09:10
pooliehi there09:10
wgrantlifeless: APPORT_STAGING=1 ubuntu-bug linux09:14
wgrantIIRC09:14
lifelessthe main reason we need __all__ is the import fascist requires that imports be in it09:16
lifelessthis is a bit silly09:16
lifelessbecause you can do module._thing09:16
poolieyou mean it doesn't really guard against using private interfaces?09:16
lifelessright09:17
lifelessit doesn't seem to have any functional benefit09:17
wgrantI think it's a handy check.09:18
wgrantIf it works.09:18
wgrantBut I don't think it does.09:18
wgrantit hasn't whinged at me much lately.09:18
wgrantNot being very fascist at all.09:18
lifelessI question the value now that security is on the model09:18
lifelesss/ now/ particularly now/09:19
wgrantIt makes some attempts at preserving layering.09:19
poolieassuming people actually respond by changing the layering, not just updating the paperwork09:20
lifelesswgrant: with the assumption that the layering is useful; the primary differences between view and model code are:09:21
lifeless - some model code is db backed09:21
lifeless - model code wasn't allowed to cache for a while09:21
lifeless - model classes get interfaces (high overhead) and security (useful where it matters)09:21
pooliere bug 646563, is it really true that login(something); getUserBrowser() doesn't give you a browser as that user?09:22
_mup_Bug #646563: want a way to make a TestBrowser logged in as a particular user <testing> <Launchpad Foundations:New> <https://launchpad.net/bugs/646563>09:22
lifelessthe first item is a performance problem, the second isn't relevant anymore and the third adds a good 15+ percent to the code base, but *mostly* is just boilerplate.09:22
jmllet's not forget that the import fascist also prevents us from using storm sorting in view code09:22
lifelessjml: yes, an import 'benefit', that one.09:22
lifelessjml: if you wanted to remove it, I'd be fine with that.09:23
jmllifeless: landscape has an importguardian that's, well, better09:23
lifelessjml: I remain fundamentally unconvinced that this is appropriate for python, at all.09:23
jmllifeless: last time I tried this, I went to split that out into lazr.importguardian, but got blocked on new lazr packages being very hard to make09:23
lifelesspoolie: yes, its true.09:23
lifelessjml: why shouldn't we just remove it?09:24
wgrantWhat does the guardian do?09:24
jmllifeless: don't know, basically09:24
jmlwgrant: I can't remember the details beyond "like the fascist, but nicer; let's you import for sorting"09:25
wgrantWhy were they both created in the first place?09:25
jmlahh, now _that_ is a historical question09:25
jmlso the answer is clearly "for historical reasons"09:25
wgrantHeh.09:25
pooliei have code to add getUserBrowserAsTeamMember in https://code.edge.launchpad.net/~mbp/launchpad/flags-gui/+merge/3641509:25
pooliei might just move that to BrowserTestCase as part of this same mp?09:26
wgrantpoolie: Is that really worth its own method?09:26
jmlI suspect it was to stop programmers from doing bad things like circumventing the interface/security code09:26
pooliewgrant: how would you write a test that needs a logged in user?09:26
wgrant(as opposed to getUserBrowser(getTeamMember(blah)))09:26
lifelessfrankly, that sort of thing, unless there is a really big win, just annoys me09:26
lifelesspoolie:09:27
pooliewgrant: that doesn't seem to work09:27
jmllifeless: well, yes :)09:27
lifelessuser = self.factory.makePerson(password='test')09:27
lifelessbrowser = self.getUserBrowser(user=user)09:27
poolieright, then add them to those teams09:27
poolieit's only 5 lines but assuming it doesn't exist already, it seems reusable09:27
lifelessI think its a bit of a kludge09:27
lifelesshow about this09:28
lifelessgetUserBrowser(user=user) resets the users password if its wrong09:28
lifelessor09:28
lifelesshow about we make the default password in makePerson be 'test'09:28
lifelessuhm09:28
lifelessI'm not against a convenience helper gluing stuff together09:28
jmlanyway, I must ablute. back later.09:28
pooliemm, or i could add a teams=None parameter to getUserBrowser09:28
lifelessI think I'm mainly reacting to the fact that one is needed here.09:28
lifelesspoolie: I don't understand why team membership and browser instance creation are coupled.09:29
lifelessthey seem like vastly different concerns.09:29
lifelessif you did this:09:29
pooliegetUserBrowser creates a new person09:29
lifeless - change makePerson to use 'test' as the default password09:29
lifelessthen you can do the following:09:30
lifelessthen gUB will 'just work'09:31
lifelessand if you want a team relationship you can make that and pass in a user (and again it will just work)09:31
pooliei'm reluctant to change something called by so many tests as makePerson09:32
lifelessand yet that is what makes it valuable to change09:33
lifelesslosa ping; I'd like to request profiling on staging please09:33
mthaddonlifeless: is it urgent - working on something just at the moment09:34
lifelessmthaddon: I can't claim urgent, but its 2130 for me, if I can get this before I head to sleep I may be able to confirm/deny a theory for the +filebug timeouts.09:35
lifelessand kick it over to deryck for further examination09:35
mthaddoncan you file an RT and I'll get to it a little bit later on (if you can include the info that's needed to hand over to deryck)?09:36
poolieanother option would be to stash the unhashed password on the object09:36
lifelessmthaddon: no, the info is me analysing kcachegrind09:36
lifelessmthaddon: which is what the profile would give me; if you get a timeslice ping me09:36
lifelessmthaddon: if you don't ping, thats fine, I'll do with someone tomorrow morning.09:37
mthaddonlifeless: k, will do - how long of a timeslice would you need?09:37
wgrantlifeless: Do we not have a URL trigger for that yet?09:37
lifelessmthaddon: you edit one config file and restart the appserver; I go play until I have the data; then you revert the config file and restart, and trigger your rsync that copies the profile files to sodium.09:37
lifelesswgrant: we do, but because its not secured it requires a config change to enable it.09:38
wgrantlifeless: ... ah. Useful.09:38
lifelesswgrant: next step is a featureflag to enable it, and a group scoped to 'launchpad'09:38
lifelesssorry, a scope, which looks up the ~launchpad group.09:40
lifelessmthaddon: http://pastebin.com/yTp0TL1D is the change; I'm sure this is in LOSA docs already09:41
mthaddonlifeless: diff applied and staging restarted10:08
lifelessthank you10:11
lifelessmthaddon: thanks; revert it anytime you like; and please kick off the rsync of the profiles (AFAIK its not cronned; maybe it is but just very infrequent)10:13
lifelessmthaddon: no rush10:13
poolielifeless: realize it's dead late but if you sometime want to do a meta-review on https://code.edge.launchpad.net/~mbp/launchpad/flags-gui/+merge/3641510:23
pooliethat could be good10:23
poolieespecially as to whether the ui is adequate to start with10:23
pooliewe could do that thursday10:25
lifelesspoolie: it sounds fine to me10:33
pooliemthaddon: when things are not on fire, perhaps you would like to comment on the devops-usability of that mp10:33
poolies//of the feature proposed in that mp10:33
pooliethansk10:33
pooliei'm a bit impatient to get it done10:33
lifelesspoolie: its better than sql, so I'd just land it10:33
poolieyeah :)10:33
pooliei appreciate the reviews though10:33
lifelessbigjools: so, are you going to CP 11566 and 11579 (IIRC) today?10:48
bigjoolslifeless: jelmer is preparing a CP, yes10:48
bigjoolsnot sure of the revnos10:49
lifelessgreat10:51
lifelesswe noted that one of the bugs is not qa'd10:51
bigjoolswhich?10:51
lifelessbug 12825910:51
_mup_Bug #128259: Buildmaster should not call "uploader" script for processing incoming binaries <buildd-manager> <qa-needstesting> <soyuz-build> <Soyuz:Fix Committed by jelmer> <https://launchpad.net/bugs/128259>10:51
* bigjools f ixes that10:52
bigjoolspylint blows10:55
jmlyes10:56
* bigjools considers fixing the lint make target10:57
jmlif I cared a little bit more, I'd write a Python formatting checker/fixer that was as fast as pyflakes10:57
bigjoolsit really hates our new import style10:57
jmland then nuke pylint with great nuking10:57
bigjoolswe should just get rid of pylint10:58
bigjoolsit's worse than useless10:58
jmlno arguments here.10:58
jmlthe reason I want a formatting checker/fixer is I'm sick of thinking about formatting.10:59
jmlbut that doesn't block removing pylint10:59
* bigjools blinks10:59
bigjoolsurgh, a shell script11:00
jmlI'm closing my mail & IRC clients for a bit to get some work done. Call my phone if you need me.11:36
=== al-maisan is now known as almaisan-away
deryckMorning, all.12:03
=== didrocks1 is now known as didrocks
wgrantbigjools: The publisher will no longer die if there's an unconfigured series, will it?12:29
bigjoolswgrant: no idea12:29
wgrantYeah, it looks like it was fixed a couple of months ago.12:30
wgrant(#ubuntu-devel just mentioned that they couldn't target specs to natty yet)12:31
jelmerwgrant: That was one of the booby trap issues I fixed last release IIRC12:40
jelmerbug 5528812:40
_mup_Bug #55288: publisher gets very unhappy about unknown distroreleases <boobytrap> <oops> <qa-ok> <soyuz-publisher> <Soyuz:Fix Released by jelmer> <https://launchpad.net/bugs/55288>12:40
bigjools\o/12:41
wgrantThat's the one.12:41
wgrantAlso, I hate ISPs.12:42
wgrantMy international routing has just collapsed for the fourth time this evening.12:42
wgrant70% packet loss FTW.12:42
=== mrevell is now known as mrevell-lunch
=== matsubara-afk is now known as matsubara
=== almaisan-away is now known as al-maisan
=== mrevell-lunch is now known as mrevell
stubgmb: https://code.edge.launchpad.net/~shttps://code.edge.launchpad.net/~stub/launchpad/trivial/+merge/3685314:01
gmbstub: I'll take a look now, thanks.14:04
gmbstub: s/rouge/rogue in your commit message :)14:04
stubblah. twiddled in the web.14:06
gmbstub: r=me14:10
adeuringHi deryck, could you please run this query on staging: https://pastebin.canonical.com/37772/ (or an EXPLAIN ANALYZE)?14:33
deryckHi adeuring.  Sure.14:33
deryckadeuring, so you want the explain analyze mostly?  Or just need the query run?14:37
adeuringderyck: I think the EXPLAIN ANALYZE is more interesting :)14:38
deryckok14:38
bigjoolsI am so utterly frustrated with the slow test suite14:39
deryckadeuring, http://pastebin.ubuntu.com/502120/14:40
adeuringderyck: thanks!14:40
deryckbigjools, I feel you.  Combined with fails in ec2 and buildbot and it takes *for* *freakin* *ever* to land anything.14:40
adeuringso, fast enough :)14:40
deryckadeuring, well, for now.14:41
bigjoolsderyck: stop feeling me :)14:41
deryckheh14:41
bigjoolsderyck: yeah, we have to do something.  I will bring it up in tomorrow's call.14:41
adeuringderyck: yes, but the old query needed 177 seconds or so14:41
deryckadeuring, ah, yes.  So that's much better.14:41
adeuringerm, 17 seconds...14:41
deryckbigjools, thanks for bringing it up.  I agree.  We can't keep putting it off.  Something has to be done.14:42
bigjoolsquick someone, do Something!14:42
bigjoolsderyck: I have an idea but we can discuss tomorrow14:43
deryckexcellent.14:43
jmlmrevell: https://bugs.launchpad.net/bugs/64976414:48
_mup_Bug #649764: Getting started documentation is not very searchable <Launchpad Bazaar Integration:Triaged> <https://launchpad.net/bugs/649764>14:48
=== vednis is now known as mars
bachi mars, did you ever get your clean install of maverick and did you see the authentication window when running windmill tests?15:15
marsbac, I got my maverick install running, I have not tried the tests15:16
bacmars: ok, i'm curious to see what you find when you run them.15:16
marsis the Tomboy notes indicator applet messed up for anyone else?15:17
marsit is showing a bunch of blank separator lines15:17
marsmaxb, can we call the new PPA "graveyard"? :)15:32
maxbheh15:32
maxbIs production still PostgreSQL 8.3 at this point?15:33
marsI'll check15:34
cr3leonardr: hi there, I'm getting "TypeError: Could not serialize object <object> to JSON", is there a practical way to debug that?15:35
marsmthaddon, what version of Postgres are we running right now?  I can't dig up the wiki page for it :(15:37
marsmaxb, I'm +1 on the PPA idea, but I do not have the rights to create it15:38
maxbNo rush, we can wait for consensus and then get one of the (rather few) team admins to do it15:41
leonardrcr3: is this when you invoke a named operation? if so, what does your python method return?15:44
bigjoolshmmm, when running the test suite locally, the windmill tests pop up a browser that seems to stall on some sort of auth dialog15:45
cr3leonardr: this is in my own code, not launchpad, and yes, this is when I invoke a named method called createTestRun which returns an object which implements ITestRun15:45
marsbigjools, yes, a known problem on Maverick15:46
bigjoolsmars: ah ok15:46
marsbigjools, I can look at it now that I am actually running said distro :)15:46
cr3leonardr: aha, when calling simplejson.dumps(test_run, cls=ResourceJSONEncoder), I get: TypeError: can't compare offset-naive and offset-aware datetimes15:46
bigjoolsit's amazing how much of our stuff breaks with each new Ubuntu release :(15:46
cr3leonardr: I seem to be getting somewhere :)15:46
leonardrcr3: good, that's what i was going to suggest15:48
leonardr'couldn't serialize' is masking some other error15:48
marsbac, bigjools, bug 64988615:57
_mup_Bug #649886: Windmill tests throw login window popups on Maverick <build-infrastructure> <Launchpad Foundations:New> <https://launchpad.net/bugs/649886>15:57
bigjoolsmars: cool thanks15:57
bacthanks mars15:57
marsclose to bug 650,00015:57
_mup_Bug #650: broken package dependency's (i think :S still learning) <acroread (Ubuntu):Invalid> <https://launchpad.net/bugs/650>15:57
bigjoolslifeless: when you're awake, I'm interested to understand why you're importing stuff from the soyuz module into the bugs module in one of your changes.  It causes circular imports in the test runner unless it's invoked with -t15:58
cr3leonardr: oddly, running simplejson.dumps(test_run, cls=ResourceJSONEncoder) the first time returns a typeerror but running the second time works fine :(16:00
leonardrcr3, let me see your test code?16:01
leonardrcheck to see if the dump process modifies any of the attributes of your object16:01
bigjoolsderyck: hi, got a sec?16:01
deryckbigjools, getting on call.16:02
bigjoolsderyck: np, it can wait16:02
cr3leonardr: argh, found the problem: setting a DateTime(allow_none=True) column to datetime.now(pytz.UTC) isn't the same as setting it to UTC_NOW :(16:08
leonardrcr3: different things get set in the database?16:10
cr3leonardr: not sure, let me have a look16:11
cr3leonardr: looks like the same thing is landing in the database, the only perceptible difference is that the datetime object contains a timezone when set explicitly in now()  but not when retrieved from the database16:16
leonardrcr3: is the object with the timezone being stored in memory and reused later? the problem is being caused by mixing them16:16
leonardror are you comparing the datetime object from the database to datetime.now?16:16
=== matsubara is now known as matsubara-lunch
cr3leonardr: I'm not sure where the datetimes are being compared, not in my code for sure. it seems to be either by storm or lazr16:18
deryckbigjools, hi.  I can chat now if you still need.16:19
bigjoolsderyck: I'm otp now :)16:19
deryckheh16:20
deryckok, we'll try later then :-)16:20
leonardrcr3: try stepping through simplejson.dumps()16:21
sinzuils16:31
sinzuioops16:31
jpdssinzui: No OOPS ID?16:37
sinzuijpds, I was attempting to list a dir in my terminal, xchat had focus16:39
jpds;-)16:39
cr3leonardr: turns out the problem goes deep into the zope browser absoluteurl routine, which calls upton the __name__ attribute of my object which returns self.name which probably triggers something in storm, like cash refresh or somesuch16:42
cr3leonardr: in that particular context, just calling self.name causes the typeerror (I'm using storm from trunk)16:44
bigjoolsderyck: ok I'm free now if you are16:55
deryckheh16:56
deryckbigjools, I'm about to jump on my standup16:56
bigjoolslol16:56
deryckbigjools, I can do bottom of the hour, but then I have another call at the top of the next hour.16:56
bigjoolsderyck: perhaps I can do it real quick on mumble right now?  it won't take long16:57
derycksure.16:57
bigjoolsderyck: bin/test -vv test_deathrow17:00
marsapport: "Your system encountered a serious kernel problem."  :(17:02
=== al-maisan is now known as almaisan-away
* bigjools is totally loving lp-open17:07
bigjoolsbzr lp-open that is17:07
jml\o/17:07
bigjoolsalthough sometimes I hanker for an IDE17:08
marsnice, I didn't know about that command17:09
marsbigjools, here is what I am using: http://www.openkomodo.com/17:09
bigjoolsinteresting17:10
bigjoolscan I keep my vim editor embedded? :)17:11
marshmm, it has a full vim emulation mode - embedding, I don't know about that17:11
bigjoolsargh my eyes, TCL17:11
bigjoolswell if it reads my current vim config...?17:11
=== jcsackett is now known as jcsackett|afk
bigjoolsgrrr fscking testfix mode17:26
=== matsubara-lunch is now known as matsubara
jmlI'm off. See you all tomorrow.17:31
bigjoolsnn jml17:31
EdwinGrubbssinzui: do you know why the error_dir is always set to none for new sections in schema-lazr.conf? It seems like that means every new section will require a change to the production config to set the error_dir. Otherwise, exceptions will be lost when it raises an exception that error_dir was not set.17:34
=== beuno is now known as beuno-lunch
deryckleonardr, ping17:37
sinzuiEdwinGrubbs, the ErrorLogger uses the default from its section, then updates the information is present in the section it is running all17:38
sinzuiEdwinGrubbs, also, lifeless refactored error reporting to use a separate logging service that manages the dir, so it is often inconsequential.17:39
leonardrderyck,. hi17:40
deryckhi leonardr.  I have an issue that I think involves the JavaScript API client, LP.client.17:41
deryckleonardr, can I explain to you and get your feedback on it?17:41
deryckI need help working out what's happening :-)17:41
leonardrok, sure, maybe mars can help if i can't17:41
deryckok17:41
mars?17:41
marsderyck, this the firebug return values thing?17:42
deryckmars, this is the comment posting issue I mentioned before.17:42
deryckyes17:42
deryckmars, leonardr, see bug 541993, especially my comment at comment #15.17:42
_mup_Bug #541993: Adding comments to a bug shows [Object object] instead of comment <comment-handling> <javascript> <ui> <Launchpad Bugs:Triaged> <https://launchpad.net/bugs/541993>17:42
marsderyck, I didn't ask before, but do you see the behaviour on launchpad.dev?17:42
deryckyes17:42
=== abentley is now known as abentley-lunch
marsderyck, ok, have to go to lunch due to circumstances here, but some thoughts: it could be comment.js is listening for the wrong XHR events, and you are encountering race conditions as a result17:47
deryckmars, ok, let's catch up more after your lunch.  I have to do a call shortly too.17:47
EdwinGrubbssinzui: ok, it looks like lp.services.job.runner.JobCronScript is doing something wrong by calling errorlog.globalErrorUtility.configure(self.config_name), since it blows up if error_dir is not specified in the config for the cronjob.17:52
sinzuiEdwinGrubbs, sounds like an undocumented requirement17:53
EdwinGrubbssinzui: hmmm, it seems like the JobCronScript should just have an if-statement that only runs configure if error_dir is not None for its specific section.17:58
sinzuiEdwinGrubbs, I think that is a sound suggestion if there is not a reason error_dir can be the default. I suppose a lot of use case for jobs describe non-webapp processes18:00
sinzuiEdwinGrubbs, if the process is considered to be the webapp, then I agree the default error_dir should be used18:01
=== beuno-lunch is now known as beuno
cr3is there something in launchpad, perhaps under lazrjs, to render a table from a restful call?18:23
marscr3, in soyuz for the PPAs, I think.18:24
cr3mars: thanks for the lead, I'll look around there18:25
marscr3, lib/lp/soyuz/javascript/lp_dynamic_dom_updater.js /might/ have some useful code18:26
marscr3, line 86 has an example usage.  Search for the symbols in our .pt template files for real-world usage18:28
sinzuiflacoste, are we talking today?18:38
flacostesinzui: we should!18:44
flacostesinzui: mumble?18:44
=== benji is now known as benji-afk
marsrockstar, ping, I am looking at deryck's problem with the bug comment async-post code, and wondering if your yui 3.2.1 branch may fix the issue.  Is that branch usable (or landed?)18:45
rockstarmars, I'm working on it right now.18:45
rockstarmars, I don't think a new yui is going to fix the issues though.18:45
sinzuiflacoste, mumble18:45
deryckHi mars.  When you said you thought we might be listening for the wrong XHR event.  Is there a way to globally log every event fired?  A flag to Y.Event or some such?18:45
marsrockstar, ok, I am wondering if it is a race condition with XHR event handling - Y.io is one possible culprit18:46
bdmurraysinzui: from your comments on my +subscriptions branch I get the impression that after clicking Continue on the +subscribe page the user should be returned back to +subscriptions is that right?18:46
rockstarderyck, there is, but it gets noisy.  Set your log level to "debug"18:46
marsderyck, yes, you can log everything.  Fire up launchpad.dev, it will be easiest that way18:46
rockstarEr, filter.18:46
sinzuibdmurray, yes18:46
rockstarmars, I really suspect the problem to be in the lp.client18:47
bdmurraysinzui: okay and that should be possible by setting next_url for the form?18:47
marsrockstar, it could be there too, yes.  I am looking at the code, and it is a bit hairy18:47
sinzuibdmurray, yes, or by using the redirect mixin18:47
rockstarmars, yeah, I recall BjornT futzing with it a bit at the last lazr-js sprint.18:47
rockstarmars, I'm currently in the process of getting all the python logic out of lazr-js and into a new library.18:48
sinzuibdmurray, I think the mixin also provides a cancel link18:48
marsrockstar, awesome :)18:48
bdmurraysinzui: okay, thanks18:48
marsderyck, ok, pointed question to diagnose this: what is the content-type header for the named operation, and it's HTTP status?18:48
marsderyck, for the response18:49
marsderyck, I am looking at line 186 of client.js, and how the callback argument changes type depending on the HTTP headers18:49
deryckmars, text/plain;charset=utf-8 with an X-Content-Type-Warning that it was guessed.  And status is 201.18:50
marsderyck, ok, and the following response?  201 is continue, so there should be a 200 right after it18:50
deryckrockstar, so how do I sent my log level to debug for YUI?18:50
rockstarderyck, in the YUI_CONFIG, set your filter: "debug"18:51
deryckmars, 200 for application/json18:51
rockstarderyck, that will get noisy as hell though.18:51
deryckthat's what I want. :-)18:51
rockstarderyck, it's like a monkey paw though.  You'll get what you want, but at a cost you may not want to pay.18:51
* mars gestures towards the firebug console filter field18:52
rockstarmars, yeah, but the sheer amount of events that fire just on the startup of the page is HUGE.  :)18:53
marsderyck, you could always hack the page template to use the io-debug.js file directly.  As long as it appears after event.js then it will work as expected18:55
marsas long as it appears after io-base.js <=18:55
deryckok, thanks.18:57
marsargh, this code twists your brain.  There are a lot of callbacks in here18:59
marsit's like reading a twisted mix of functional, procedural, and prolog19:00
deryckyup19:00
deryckmars, rockstar -- so nothing extra from this diff:  http://pastebin.ubuntu.com/502236/  What did I do wrong?19:01
marsderyck, in the net tab, are you sure io-debug is in use?19:01
marssecond, client.js does not make use of the LPS config var19:02
marsthird, rockstar spoke of the YUI_CONFIG setting - that is new to me19:02
marswell, new in that I have only heard passing mention of it19:02
deryckI'm definitely using io-debug.js.  I see a get for:  https://bugs.launchpad.dev/+icing/rev11594/yui/io/io-debug.js19:03
deryckBut I think I need this filter in LP.client, as you note.19:03
deryckhmmm, still no luck.  I'll wait on rockstar to see how I've misused this.19:04
marsderyck, so I have a hack that may help narrow things down.  Try running your test with this patch: http://pastebin.ubuntu.com/502239/19:06
deryckmars, are line 8 and 9 really different?19:09
marsderyck, whitespace19:09
marseditor did that19:09
deryckok19:09
deryckmars, what should I be looking for here?  patch applied.  Same behavior by posting a comment.19:10
marsderyck, ok, that is a nod towards the problem being in the result processing and not the event order19:11
deryckok19:11
deryckmars, I don't think it's event order.  Unless it's something to do with the client patching on.success.19:11
marsyep19:12
marsbut this rules that out19:12
sinzuiflacoste,  RT#4163119:13
_mup_Bug #41631: deskbar didnt recognize short nautilus bookmarks <deskbar-applet:Fix Released> <deskbar-applet (Ubuntu):Fix Released by desktop-bugs> <https://launchpad.net/bugs/41631>19:13
lifelessmoin19:14
marsmorning lifeless19:19
achunimorning lifeless19:19
marsderyck, does this patch work? http://pastebin.ubuntu.com/502247/19:21
deryckmars, trying now....19:23
marsneat, YUI has touch gestures capability19:24
deryckmars, doesn't fix the "object Object" dom update.  Does add more logging, obviously.19:24
marshehe19:24
marsderyck, ok, was the log output useful?  Or was it just a bunch of "object Object" junk?19:25
deryckmars, yeah, object object or object XMLHttpResponse stuff.19:25
achunihi! buildbot question... prod_lp threw a "substantiate failed" recently and the whole thing was restarted, but it hasn't picked up the branch I had landed since then.  Is it just a matter of waiting, or should I use the /force form?19:26
marsderyck, ah, see, that is useful - you now know where it changed from the response to the wrapped value19:26
marsachuni, if you landed it before the restart, then yes, someone needs to force the build19:27
achunimars: yup, in fact I was concerned the land was what caused it to fail, but lifeless pointed out "substantiate failed" wasn't due to the code itself19:27
marsnope, that is the network reminding us it is still there laughing at us19:28
achuni:)19:28
deryckmars, copied from firebug output: http://pastebin.ubuntu.com/502252/19:28
* achuni tries a bit of force then19:29
marsderyck, so it is this line: representation = Y.JSON.parse(response.responseText);19:34
achunimars: yay, substantiate success, building now. thanks!19:35
marsachuni, np19:35
marsderyck, what is the whole stack of code supposed to return?  A JS Resource object?19:36
lifelessany soyuz folk still here ?19:37
=== jcsackett|afk is now known as jcsackett
deryckmars, insert_comment_HTML expects a string as it's first argument, which should be the xhtml returned in the get response.19:38
marsok19:39
marsderyck, uh, why is the content type application/json then?19:40
deryckmars, not sure.  When I do this with my debugger statement in the middle method trick and wait a beat or two.... the final GET has a content type of application/xhtml+xml and there is no "representation" log line.19:41
marsderyck, let me rephrase that: so the content type is application/json - are you getting back a JSON object holding XHTML as the response body, or XHTML as the response body?19:41
deryckmars, see above from me19:41
marsweird19:42
deryckmars, maybe this will make it clearer:  http://pastebin.ubuntu.com/502262/19:44
deryckmars, the middle method sets the accept parameter to get xhtml, but this only works with the debugger line set.19:44
marswell, it beats jumping around the file like I've been doing :)19:44
marsderyck, and the Accept header in the request is correct?19:46
marsderyck, with and without the debugger line19:46
* deryck confirms or denies....19:47
deryckmars, yes, accept header is right, with or without debugger statement.19:49
marsk19:49
=== abentley-lunch is now known as abentley
deryckmars, I see no difference in the request headers (debugger or not).  The response headers are different.  With debugger there is a Keep-Alive and Connection header.19:53
marsinteresting19:53
lifelessmatsubara: tudo bem20:00
matsubaralifeless, oi, tudo bem e contigo?20:00
lifelessHah, thats exhausted my pt - whats 'contigo'?20:01
lifelessmatsubara: you were working on feature flag controlled timeouts20:02
lifelessmatsubara: hows that going? do you need a hand?20:02
matsubaralifeless, I'll get back to work on that this week. I put it on hold due to the sprint last week.20:03
matsubaralifeless, "oi tudo bem e contigo?" means "hi, I'm fine, you?"20:03
lifelessmatsubara: no worries; I'll be in sydney tomorrow, so to be sure it gets in before we freeze, if its still pending tomorrow can you please push up your WIP and I'll tag-team with you on it20:04
lifelessmatsubara: thanks [language help :)]20:06
matsubaralifeless, ok. I'll ping you tomorrow20:07
lifelessmatsubara: I'll be starting late because of the plane trip - about 9am sydney time - I wouldn't want to hold you back late @ work20:08
marsderyck, that really sounds like a browser-based issue of some sort, either caching or... getting the wrong response for a request.20:08
marsderyck, for the response with the incorrect information, is there a body?  What happens if you enable the "Show XMLHTTPRequest" in the Console options tab?20:09
deryckmars, I have that enabled.  It gets the JSON representation of the comment in the wrong response (i.e. without debugger statement); otherwise, it gets the xhtml representation.20:10
marsderyck, try shutting that feature off20:10
deryckmars, that works now.20:12
marsderyck, one of these then: http://code.google.com/p/fbug/issues/list?can=1&q=xhr+-lite+show+xmlhttprequests&sort=-id&colspec=ID+Type+Status+Owner+Test+Summary&cells=tiles20:12
deryckmars, but I have the same issue on my phone, in a chrome based browser.20:13
marsderyck, ok, so just to confirm: the bug appears when that Firebug console option is enabled, and the bug disappears when it is not enable?20:14
deryckmars, indeed, that is correct.  And it appears consistently against staging on my phone, and I have no developer options for the browser to toggle on and off.20:15
deryckmars, so I agree it seems Firebug is causing us to get the cached XHR.  Chrome on the phone must do the same.20:15
mars.oO( whaaaa! )20:15
deryckYou're too l33t for me.... is that crying, wailing, or sudden inspiration?20:16
marsthe first two20:17
deryckok20:17
marsI should have written 'whhaaaagggghhh!'20:17
marsderyck, out of curiosity, what does your phone say about this page? http://www.mnot.net/javascript/xmlhttprequest/cache.html20:18
* deryck reaches for phone20:18
lifelessachuni: hi20:19
lifelessachuni: what rev of devel did you land your shipit sourcedeps.conf change on ?20:19
marsderyck, what browser phone?20:19
marsderyck, grammar fail20:19
* achuni checks20:19
marsderyck, what version of the browser do you have on your phone?20:20
achunilifeless: 1164220:20
lifelessachuni: cool, thanks.20:20
achuninp20:20
lifelessachuni: you may not be aware but we're overhauling our code->live story a lot at the moment.20:20
deryckmars, cache control headers are all fail on the phone.20:20
lifelessachuni: so I'm checking that my assumptions about our use cases are right.20:21
deryckmars, it just says "Web version 7" nothing more specific.  It's chrome, obviously, since it's an android phone.20:21
achunilifeless: ah where should we get the updates about that from?20:21
marsderyck, that page I gave you tells you the browser user agent up at the top of the page20:22
deryckah20:22
lifelessachuni: the dev list20:22
marsI have "Testing Mozilla/5.0 (X11; U; Linux x86_64; en-US) AppleWebKit/534.3 (KHTML, like Gecko) Chrome/6.0.472.63 Safari/534.3"20:22
marson the desktop20:22
deryckmars, Version/4.0 Mobile Safari/530.17.20:23
achunik20:23
lifelessachuni: changes that are deployed are in the wiki naturally (e.g. /LEP/ReleaseFeaturesWhenTheyAreDone lists its progress, and the private wiki pages will be changing soon, but they are active not planning/discussion)20:23
lifelessjml: could you package up your difftodo plugin? or get someone in #bzr to do that?20:31
derycka ha.  Now I get why this doesn't fail for the code team.20:31
marsderyck, ?20:32
deryckmars, because they build a new URL when getting the fragment, so they're not susceptible to caching.20:33
rockstarderyck, sorry, went to eat food.20:34
marsyeah20:34
rockstarderyck, did you figure out your issue?20:34
deryckboo-yah!  I have a winner.20:34
marswas wondering that20:34
marsderyck, not that for your phone, "If the browser cache does not pay attention to these directives, it can't be controlled by authors."20:35
mars*note20:35
marsexcept if you rotate the URL20:35
deryckexactly. :-)20:35
deryckmars, rockstar -- and here's the fix:  http://pastebin.ubuntu.com/502284/20:37
marscongrats.  That was a difficult one20:37
rockstarderyck, what. the. hell.20:37
rockstarderyck, it's caching a 404?20:37
marslol20:37
deryckrockstar, firefox with firebug and mobile safari use the cached version of the resource.  Have to fake them out.20:38
lifeless404's are cachable.20:38
rockstarderyck, holy hell.20:38
lifelessin a negative sense20:38
deryckit's not really a 404 :-)20:38
lifelesssquid does this all the time.20:38
rockstarlifeless, yes, we see this negative affect in deryck's bug.20:38
deryckno, there's no 404 there.20:38
deryckit's the same resource.  the query param is ignored.20:38
rockstarderyck, what's at the the end of the resource then?20:38
deryckit's basically -- ?foobarjunk20:39
rockstarderyck, if you just get it without the query param, what would you get?20:39
marsrockstar, two bugs: first, Firebug was caching the 404 because the "Show XMLHTTPRequests" option was enabled in the Console tab - shutting it off fixed it in FF20:39
deryckrockstar, the cached version20:39
rockstarderyck, and that cached version is what?20:39
marsrockstar, second bug: iPhone does not obey any cache headers according to http://www.mnot.net/javascript/xmlhttprequest/cache.html, so deryck had to force it to stop caching using url rotation20:40
rockstarderyck, weren't you seeing this bug in Chrome as well?20:40
deryckrockstar, it's mobile safari, not chrome.  Samsung sluts.20:40
deryck:-)20:40
rockstarderyck, yeah, but I'm pretty sure I've seen this bug since I started using Chromium exclusively.20:41
rockstarmars, have you filed a bug with firebug?20:41
deryckrockstar, it has to be caching issues either way.  I'm pretty confident of the fix after chatting with mars for so long.20:41
rockstarderyck, oh, I don't doubt that this would fix it.  The fact that it occurs at all is craziness.  :)20:42
deryckrockstar, this is an argument in favor of code team way of appending +fragment to a resource url to fetch the fragment new.20:42
deryckrockstar, yeah, it's silly.20:42
marsrockstar, ugh, no.  I'm too burned after this to do so, and that tab is known to have issues. FB 1.6b1+ should fix it though20:42
rockstarderyck, yeah, normally, we do ++fragment.  The double plusses indicated visually that it's a fragment.20:42
lifelessGotta love mnot. The man is a god.20:43
rockstarmars, okay, I'll file the bug.  I was futzing with Firebug source the other night, so I may be able to provide some more details.20:43
marsrockstar, ok.  Apparently they also really like to look at bugs with test cases, but that means you'd have to write something with web.py (or cgi) to recreate the 40420:44
marsrockstar, or we could ask deryck to test in firebug 1.6b120:44
_mup_Bug #1: Microsoft has a majority market share <iso-testing> <ubuntu> <Clubdistro:Confirmed> <Computer Science Ubuntu:Invalid by compscibuntu-bugs> <EasyPeasy Overview:Invalid by ramvi> <GNOME Screensaver:Won't Fix> <Ichthux:Invalid by raphink> <JAK LINUX:Invalid> <The Linux OS Project:In Progress> <OpenOffice:In Progress by lh-maviya> <Tabuntu:Invalid by tinarussell> <Tivion:Invalid by shakaran> <Tv-Player:New> <Ubuntu:In Progress by sabdfl> <20:44
deryckrockstar, they have a few that hint at the issue.  but they seem to lack a single case of it, as mars notes.20:44
deryckb1?  really mup?20:44
rockstarmars, deryck, yeah, I think writing the test case will indicate exactly what the problem is.20:45
deryck6b120:45
deryckbug 1.6b120:45
_mup_Bug #1: Microsoft has a majority market share <iso-testing> <ubuntu> <Clubdistro:Confirmed> <Computer Science Ubuntu:Invalid by compscibuntu-bugs> <EasyPeasy Overview:Invalid by ramvi> <GNOME Screensaver:Won't Fix> <Ichthux:Invalid by raphink> <JAK LINUX:Invalid> <The Linux OS Project:In Progress> <OpenOffice:In Progress by lh-maviya> <Tabuntu:Invalid by tinarussell> <Tivion:Invalid by shakaran> <Tv-Player:New> <Ubuntu:In Progress by sabdfl> <20:45
deryckheh20:45
marsfirebug 6000.120:45
_mup_Bug #6000: vice 1.16-4 FTBFS <vice (Ubuntu):Fix Released by motu> <https://launchpad.net/bugs/6000>20:45
rockstarderyck, mup is short for muppet, which, AIUI, is not a term of endearment, especially when coming from elmo.20:45
derycksorry, I'm punching after this afternoon.20:46
rockstarderyck, :)20:46
deryckGlad to have a fix I can use, though.20:46
rockstarderyck, you'll be happy to know I'm currently massaging lazr.jstools into lazr-js.20:46
derycknice!  I am happy.20:47
deryckI'm out.  Later on, everyone.21:01
abentleyrockstar: but elmo is a muppet on Sesame Street!21:02
rockstarabentley, don't tell HIM that.  :)21:03
rockstarMight as well tell the dude he's adopted.21:03
lifeless\o/ /tmp directory leak in the test suite found :)21:04
flacostelifeless: is the token-based private librarian deployed?21:22
flacostethumper: hi, since my call with gary isn't happening, i'm available earlier21:23
lifelessflacoste: no, losa in progress21:23
thumperflacoste: ok21:23
lifelessflacoste: we're bringing it up on staging first, obviously. Once its qa'd and we've checked we don't (for instance) blow out the session db size, we'll configure it in prod.21:24
lifelessflacoste: and after that flick the switch.21:24
flacostelifeless: ok21:24
lifelessflacoste: there is, as far as we know, no code to write.21:24
lifelessflacoste: and the code is in all branches; its totally deployment & config.21:25
bdmurraysinzui: here is a diff of what I had to do to get continue to redirect to +subscriptions - https://pastebin.canonical.com/37799/.  Does that seem reasonable to you?21:30
sinzuibac: branch-listing.pt may render faster if we used "sprite branch" instead to using an <img> element 75 times21:34
bacsinzui: good point21:35
sinzuibdmurray, that looks good21:44
bdmurraysinzui: in line 33 there is a change to display the bug number as it would be weird to say "this bug" on +subscriptions that seems okay too?21:44
sinzuibdmurray, yes21:45
bdmurraysinzui: great, I'll go see if there are other tests I need to fix up and push it21:45
rockstarmars, does jslint REALLY require bzrlib?21:53
rockstarmars, actually, I should say, "could we accomplish the same thing without bzrlib?"21:54
cr3hi folks, what's the lazr-js/build directory used for? I see it created in the jsbuild_lazr Makefile target, but not used afterwards21:58
lifeless_sinzui: so, memcache and efficiency21:58
=== lifeless_ is now known as lifeless
lifelessthere's a design tension in our use of the DB and out use of memcache.21:58
lifelesswe try to do a few very efficient queries to the DB to get data.21:58
lifelessand then we do memcache interception of the iteration in the page template.21:59
lifelessBut the DB work is already done.21:59
cr3nevermind, found it: lib/canonical/launchpad/icing/lazr -> ../../../../lazr-js21:59
lifelessSo the only saving memcache offers is over the tal rendering.21:59
sinzuiI expected to save cost on renders a lot of bugs decorated with badges and users/teams links that also have icons22:00
sinzuis/renders/rendering/22:00
lifelesssinzui: it beggars the imagination that an RPC to get 30 bytes of data could be faster than generating those bytes from the live objects we've already retrieved from the database.22:01
lifelesssinzui: I mean, if its true we have serious efficiency issues in the rendering stage that we -have- to fix to have fast memcache-misses.22:01
lifelesssinzui: grabbing a whole rendered table in one hit could well be faster than rendering.22:02
lifelesssinzui: grabbing a single row would be highly questionable, grabbing a single cell implausible.22:02
wallyworld___morning22:03
lifelesswin 6622:05
bachi lifeless got a minute?22:06
lifelesssure22:06
sinzuilifeless, I see two cases of cache:private in registry still. the one I intended to get rid of caches a milestone in a table row when shown on a series or +milestones page. I intended to cache the entire listing for anon only.22:06
lifelesssinzui: caching the entire listing is ok, but we cache anon *pages* in squid anyway.22:06
lifelesssinzui: so I wonder what incremental benefit memcache will have there.22:06
sinzuiha.22:06
lifelessbac: whats up?22:07
rockstarabentley, make-super-duper-clean-no-srsly is really effective when using buildout.22:10
abentleyrockstar: this is "rm * -R; bzr revert"?22:11
rockstarabentley, yes.22:11
abentleyrockstar: hehe.22:11
rockstarcr3, hi22:11
cr3rockstar: hi there22:15
rockstarcr3, I see you are futzing with lazr-js.22:17
rockstarcr3, I'm making some changes to pull the build-type code out into a separate package.  Will that cause problems for you?22:19
cr3rockstar: probably, but I could follow the evolution in the launchpad build scripts22:20
cr3rockstar: thanks for the heads up though, at least I won't be too surprised when something suddenly fails to build :)22:21
rockstarcr3, okay.  Yeah, the launchpad build script stuff is the last place that's going to change.  I'm currently massaging lazr.jstools back into lazr-js.22:21
=== salgado is now known as salgado-afk
cr3rockstar: while you have your hands in that code, might you happen to know why SRC_DIR seems to be set to src-py/lazrjs instead of src-js/lazrjs in build.py?22:27
rockstarcr3, setuptools, I think.22:27
rockstarcr3, this oddity is one of the reasons I'm abstracting these tools.22:28
cr3rockstar: setuptools indeed, setting the wrong directory for some reason... lets see how I can workaround that22:29
rockstarcr3, you'll also notice __init__.py in src-js/lazrjs22:29
rockstarcr3, why do you need to work around it?22:29
cr3rockstar: or make setuptools behave to have the proper path22:30
rockstarcr3, everything is hairy right now, but it should all work.  If it's not working, I'd be curious to know why not (and maybe a pastebin of the error)22:31
cr3rockstar: there's no error message really, I buildout lazr-js from trunk (called toolchain) which results in the path build/source-dependencies/lazr-js/trunk/src-py in the build/parts/scripts/site.py22:32
cr3rockstar: note that this is not in the launchpad codebase though, just using lazr stuff in another project22:32
rockstarcr3, ah, use make.22:32
rockstarcr3, ah, okay.22:32
cr3I'll give the beta lazr-js tarball a try instead of building from the trunk, one moment...22:33
rockstarcr3, yeah, uh, I guess my work would make it easier for you, but I'm still massaging it all together.22:33
rockstarcr3, there is only trunk.22:33
rockstarcr3, ignore any other branches.22:33
rockstarOtherwise, you will be misled.22:33
rockstarAt some point, I will clean that up.22:33
cr3rockstar: this is the branch I'm using: https://code.edge.launchpad.net/~launchpad-pqm/lazr-js/toolchain22:34
rockstarcr3, yeah, that's right.22:36
* cr3 builds with tarball and crosses fingers22:36
lifelessargh, stab stab stab layers.22:38
lifelessand woo22:40
lifelessI've finally figured out why we get multiple librarians running22:40
cr3rockstar: tarball works fine, problem solved :)22:41
rockstarcr3, yay!22:41
cr3rockstar: another advantage is that I can relax when your changes kick in since I now have a working snapshot of lazr-js22:41
rockstarcr3, yup.  You can easily upgrade lazr-js without having to worry about the python dependencies as well.22:42
bachi james_w, you still around?22:47
james_whi bac22:47
bacjames_w: you've got quite a few approved branches that need landing.  is there something blocking you?22:48
lifelessthumper: ping22:49
lifelessthumper: nvm22:49
james_wbac: nothing except my lack of time22:52
bacjames_w: i understand.  you've done a lot of really good work that it would be nice to get landed.  let me know if i can help.22:53
james_wbac: I count three, are there more than that somewhere?22:54
=== matsubara is now known as matsubara-afk
bacjames_w: yes, just those three22:55
james_wbac: ok, I'll merge them up and try and land one now22:55
bacthanks james_w22:55
=== Ursinha is now known as Ursinha-afk
lifelessmwhudson: hey23:10
mwhudsonlifeless: hi23:10
lifelessmwhudson: so I found more nasty nasty dirt landing this patch you reviewed monday23:10
lifelessI'd like a casual eyeball over the incremental23:10
mwhudsonlifeless: ok23:11
mwhudsonlifeless: link?23:11
lifelesshttp://bazaar.launchpad.net/~lifeless/launchpad/test/revision/1164423:11
lifelessis the only non-obvious commit23:11
mwhudsonlifeless: unnique is a typo23:15
mwhudsonlifeless: "so store a valid path temporarily" -- i think you mean invalid path?23:17
lifelessvalid - its a string23:17
lifelessas opposed to correct23:18
mwhudsonah23:18
lifelessclearly confusing, will rephrase23:19
mwhudsonthanks23:19
lifelesss/valid/plausible23:19
lifelessmwhudson: that was all ?23:33
mwhudsonlifeless: yes23:33
lifelessthanks23:33
lifelessyou can see the hair I'm uncovering23:33
mwhudsonyeah, it's awesome that you're doing this23:34
lifelessI'm struggling to decide whether to fix layers23:34
lifelessor just bring testresources in.23:34
mwhudsonlifeless: i think i said to jml when you got the TA position that one of the reasons I was glad was that you were much less likely to get discouraged by this sort of thing than a typical human being :-)23:35
lifelessI am the hulk in this respect.23:35
lifelessfueled-by-anger23:35
jmllifeless: jkakar & I have discussed rage-driven development23:39
lifelessnice23:39
mwhudsoni occasionally find code that i wrote and remember how extremely angry i was when i wrote it23:40
lifelessso what I actually meant was that my motivation increases the more problematic stuff I run into.23:41
lifelessnot that I feel /angry/ as such.23:41
mwhudsonright, that's a more useful effect23:43
=== lifeless changed the topic of #launchpad-dev to: Launchpad Development Channel | Week 3 of 10.10 | PQM is open for business | firefighting: - | https:/​/​dev.launchpad.net/​ | Get the code: https:/​/​dev.launchpad.net/​Getting
pooliehello jml, mwhudson23:57
jmlhi everyone. I'm not really here.23:58
pooliesuits you :-P23:59

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