/srv/irclogs.ubuntu.com/2012/03/23/#launchpad-dev.txt

StevenKwgrant: And you end up getting r1500000:16
wgrantStevenK: Indeed.00:16
StevenKwallyworld_: https://code.launchpad.net/~stevenk/launchpad/imports-once-more-with-feeling/+merge/9894400:17
wallyworld_on it00:18
wallyworld_StevenK: r=me. i'm sure you'll find some more next week00:21
StevenKHaha, probably.00:23
wgrantwallyworld_: How do you feel about 650ms for a batch of Ubuntu grantees on dogfood?00:26
wallyworld_wgrant: i think that's ok, no? i have nothing to compare it to though00:26
wallyworld_what does the profiling say take the time?00:27
wgrantI mean in SQL.00:27
wgrantIsn't it taking about 2s on prod atm?00:27
wgrants/prod/qas/00:27
wallyworld_total, not sure about the breakdown00:27
wgrantCan you check?00:28
wgrantExpand the in-page query listing.00:28
wgrantSince oops-tools chokes on these oopses.00:28
wallyworld_i/m sort of in the middle of some coding right atm00:28
wgrantk00:29
lifelesswgrant: wait, what ?00:29
wallyworld_messing with lp form infrastructure00:29
wgrantlifeless: sqlparse crashes when asked to reindent some of wallyworld's SQL00:29
lifelessaieee win00:29
wgrantlifeless: It doesn't like MIN(CASE [...])00:29
lifelesswgrant: you've opened a bug ?00:29
wgrantNo, was too busy trying not to throw buildbot and rosetta into a fire pit.00:30
wallyworld_wgrant: i wasn't going to look too closely at the nimbers till the next branch lands00:30
wgrantwallyworld_: I've tried the new primary DISTINCT query -- it takes 8s on DF.00:31
wgrantRewording it gets it down to 650ms.00:31
wgrantWill see how it is on qas.00:31
wallyworld_8s? what does explain say?00:32
lifelessask again later00:32
wgrantwallyworld_: It does the sort before the unique00:33
wgrantSo it's sorting like 140000 people00:33
wallyworld_well that sucks00:33
wgrantForcing it to do the distinct first (by moving it into a subquery) works nicely, but it'd be nice if it was smarter.00:33
wallyworld_you should land that00:33
lifelessdistinct will always sort before unique unless the data is being generated in-order for selective skipping00:34
lifelessor the output sort is wholly different to the distinct columns, at which point brains assplode00:34
wgrantYeah.00:34
wgrantOh00:35
wgrantIt's the extra parens00:35
wgrant>>> sqlparse.format('SELECT CASE (foo) WHEN 0 THEN 1 END', reindent=True)00:35
wgrantu'SELECT CASE (foo)\n           WHEN 0 THEN 1\n       END'00:35
wgrant>>> sqlparse.format('SELECT CASE(foo) WHEN 0 THEN 1 END', reindent=True)00:35
wgrantTraceback (most recent call last):00:35
wgrantWhen there's (unncessary) parens after CASE without a space, boom.00:35
* wgrant lands a workaround to LP00:36
lifelesswgrant: you will file a bug upstream though?00:36
wgrantlifeless: Yeah00:36
wgrantJust confirming that it still exists.00:36
lifelessthanks00:37
lifelessI hsould have had fairh00:37
wgrantorly?00:37
wgrantOh00:37
wgrantfaith00:37
wgrantlifeless: Fixed upstream, it seems.00:38
wgrant>>> sqlparse.format('SELECT CASE(foo) WHEN 0 THEN 1 END', reindent=True)00:38
wgrantu'SELECT CASE(foo)\n           WHEN 0 THEN 1\n       END'00:38
wgrantOur version's more than a year old.00:39
wgrantBut there's only been one release since.00:40
* wgrant upgrades us to 0.1.3.00:41
wgrantlifeless: Does python-oops-tools do reviews?00:44
lifelesshumans do00:44
wgrantAh, I see there are MPs.00:44
lifelesslp reviewers review them00:44
lifelessor should be00:44
lifelessits in the same group etc etc - /launchpad-project00:45
lifelesse.g. wallyworld as OCR is interruptible00:45
lifelesswgrant: if its a dep bump, self review though00:45
wgrantSure00:45
wgrantStill wants an MP by policy, though.00:45
wallyworld_am i needed?00:45
wgrantNope.00:45
wallyworld_good :-)00:46
wgrantI can self-review an s/2/3/ :)00:46
wgrantOh00:54
wgrantIt's tarmac00:54
wgrantSo I couldn't have committed directly anyway.00:54
StevenKwgrant: Has your -11-4 triggers branch landed?02:12
StevenKGrumble. 917 line branch. Perhaps I will have to split this thing.02:15
wgrantStevenK: No, it was waiting for your information_type NOT NULL branch.02:16
wgrantWhich I believe landed this morning.02:16
StevenKIt did, yes.02:16
wgrantBut we already have two patches in the queue, and it won't clear until Tuesday, so I won't land it yet.02:16
StevenKThis code branch depends on it and -12-302:16
wgrantSo Monday will be FKs, Tuesday will be NOT NULL, Wednesday will probably be my legacy access triggers02:17
wgrantThen what do you have/02:17
StevenKBugSummary triggers02:17
wgrantAh02:18
wgrantwallyworld_: Ah, findGranteePermissionsByPolicy still returns oddly sized batches.03:16
wgrantBecause it's distinct on (person, policy)03:16
* wgrant fixes in the performance branch.03:16
wallyworld_bollocks, thanks03:16
wallyworld_wgrant: if you fix, can you add a test too?03:17
wgrantwallyworld_: It necessitates a reworking of the return type, so I have to rewrite the tests anyway.03:17
wallyworld_ok03:17
wgrant(currently it returns 75 (person, policy, permission) rows, whereas it probably wants to return 75 (person, {policy: permission})03:18
wallyworld_i like the 3-tuple form better03:27
wgrantIndeed, but it doesn't work for slicing by person.03:28
StevenKwgrant: So why does the langpack export take 22 hours? And no fair if you say because translations is horrible.03:28
wgrant'cause you'd slice by :75 and get 93 rows.03:28
wgrantStevenK: Because translations is horrible.03:28
wgrantI filed a bug on it a couple of weeks ago.03:28
StevenKwgrant: No fair.03:28
wgrantThe bug mentions a specific thing that might be a performance problem.03:29
StevenK971 line diff :-(03:51
StevenKwallyworld_: Are you going to hate me if my branch that drops private and security_related from CreateBugParams, IBug._private and IBug._security_related is roughly 1,000 lines?03:59
wallyworld_no04:00
wallyworld_i hte you anyway04:00
StevenK:-(04:00
StevenKwgrant: Turns out bugsummary *and* calculate_bug_heat has to change.04:01
wgrant:D04:01
wallyworld_StevenK: i was joking :-P04:01
StevenK220 database/schema/patch-2209-12-3.sql04:02
StevenKstub is going to hate me too.04:02
wgrant523 ../bugtaskflat-db/database/schema/patch-2209-16-0.sql04:02
StevenKHaha04:04
StevenKOne bug to fix, then I get to re-run -vvm bugs04:05
wgrantHas diff generation been oddly fast or anyone else lately?04:21
wgrantI'm regularly getting diffs within 20 seconds now.04:21
wgrantwallyworld: https://code.launchpad.net/~wgrant/launchpad/sharing-prettier-sql/+merge/9896704:22
wgrantwallyworld_: ^^04:22
wgrantunderscorefail04:22
StevenKHaha04:24
wallyworld_wgrant: r=me. will be good to see how it goes on qas04:35
wgrantMarvellously I hope.04:35
wgrantThen we can set the timeout to 1s and declare victory over the universe.04:36
nigelbI want to setup a qdb just for all the fun quotes in #lp-dev04:36
StevenKYou'll keep adding branch names.04:37
nigelbI'll just have everything StevenK and wgrant says.04:38
nigelbmaybe I should just make it a tumblr. shitlpdevssay.tumblr.com :P04:39
wgrant!!04:39
wgranthttp://validator.w3.org/check?uri=https%3A%2F%2Flaunchpad.net&charset=%28detect+automatically%29&doctype=Inline&group=004:39
wgrantWe are valid!04:39
wgrantFinally.04:39
* wallyworld_ goes away for a bit - bookclub with kid after school04:40
StevenKWith 2 warnings?04:40
huwshimiwgrant: So we've gone LIVE with changing over to html5?!04:40
wgranthuwshimi: Yeah, this morning. I tested the site fairly thoroughly in Firefox/Chromium/Opera/Safari/IE8/IE9/IE10, and it looks good.04:41
huwshimiwgrant: I've clearly missed the discussion about doing that...04:42
wgrantIt was just a doctype change :)04:42
wgrantSo the only rendering change is moving from Almost Standards to Standards.04:42
huwshimiwgrant: Have you tested in ie6?04:46
huwshimi(it's not JUST a doctype change)04:46
wgranthuwshimi: The watermark is slightly broken, but we no longer support IE6.04:46
huwshimiwgrant: When was that decided?04:46
wgrant(only difference is that the logo is on a separate line)04:46
* wgrant finds a reference.04:47
wgrant06:56 < lifeless> rockstar: we just blew IE6 away04:47
wgrant06:56 < lifeless> rockstar: so gnar gnar gnar :P04:47
wgrantAnd various other discussions.04:48
wgrantBut the doctype change makes no visible difference in IE6.04:48
huwshimiwgrant: Have you check that?04:48
huwshimiwgrant: You're going to have to cite something better than that. Last I heard we have significant stakeholders who require IE6. If that's changed it's not been announced publicly.04:49
wgranthuwshimi: That restriction came from OEM a little over two years ago, and is apparently no longer true. https://dev.launchpad.net/GradedBrowserSupport was recently updated to remove any reference to IE.04:52
wgrantAnd it has been stated on IRC that IE6 is no longer required.04:52
wgrantlifeless: ^^ right?04:52
wgrantAnyway, still works fine on IE6, except for the logo and title being on different lines.04:53
wgrant(and the fact that we use PNG transparency for sprites, which makes everything look pretty hideous, but that's been the case for years)04:53
huwshimiwgrant: There needs to at least have been a discussion about migration, ramifications, future implications etc.05:01
wgranthuwshimi: For the doctype change that doesn't change the markup that engineers must write at all, brings the existing HTML5 elements and attributes that we use into validity, and in browsers causes a single rendering change (the removal of the shrinkwrap effect from inline images)?05:05
wgrantIt's not as if we're moving from XHTML to HTML rendering.05:06
wgrantThere was some discussion on our call, however.05:06
huwshimiRight, those are SOME of the implications of changing to HTML5.05:08
wgrantThe only change is the doctype, and the only user-visible difference is the inline img shrinkwrap removal, which has already been fixed everywhere that it was used.05:12
wgrantThere may be implications of using more HTML5-only features.05:12
wgrantBut that wasn't the change here.05:12
wgrantWe've always been polyglot HTML/XHTML out of necessity, so there is no markup difference.05:13
wgrantSo the implications are remarkably close to 0.05:13
huwshimiwgrant: I think you're missing the point.05:17
wgranthuwshimi: Oh?05:20
huwshimiwgrant: "16:01:32 huwshimi: wgrant: There needs to at least have been a discussion about migration, ramifications, future implications etc."05:22
wgrantMigration: the shrinkwrapping change. Ramifications: the shrinkwrapping change, and our existing usage of HTML5 elements is no longer invalid. Future implications: nothing new.05:23
huwshimi(and by discussion I mean on the mailing list)05:23
wgrantParticularly boring.05:23
lifelesswgrant: huwshimi: we are waiting on a final ack from OEM *but*05:25
lifelessstatik has said that us supporting IE6 isn't a good use of time05:25
lifelessand mrevell has said we won't do it - on the stakeholders list05:25
lifelessthe final ack we're waiting on is in case someone comes back and says its part of getting X revenue to make it worth while05:26
wgrantAhh, that's why I couldn't find the discussion.05:26
wgrantThere it is, indeed.05:26
lifelessIE6 is now at most best effort05:26
wgrant"Thanks. Let me explain a little more clearly where we are. We no05:27
wgrantlonger support IE6 and we won't make any effort to ensure a good05:27
wgrantexperience in IE6."05:27
wgrant(from mrevell)05:27
huwshimilifeless: Thanks (clearly I'm not on that list).05:28
huwshimiwe need to at least communicate that to our users if we do go ahead05:29
wgranthuwshimi: We knowingly released dynamic bug listings when they're completely broken in all versions of IE.05:29
huwshimiwgrant: We did!?05:29
huwshimiWho knew?05:29
wgrantI'm pretty sure it was knowingly, but regardless it's clear that nobody tried them even though they were clearly using new JS features unlikely to be supported in IE.05:31
lifelessthe team explicitly put in a check for IE short circuiting the code, because they hadn't tested it05:31
wgrantHm?05:31
wgrantIt's not short-circuited.05:31
wgrantIt runs, and is broken.05:31
lifelesswgrant: there was a new if (...IE) thing you ripped out just this week05:32
lifelessanyhow, I have to run05:32
wgrantNope.05:32
wgrantThose were all old.05:32
lifelessI have no objection to us announcing that we're not caring for IE6 anymore05:32
wgrantI only ripped out things that work in IE>=8.05:32
lifelesswgrant: ah, my misunderstanding05:32
lifelessOTOH I don't think we need to shout it from the rooftop that we don't support a given browser; most sites just track current releases and make no fanfare about changes05:32
wgrantExactly.05:33
wgrantAnd our IE6 and IE7 support has been in a pretty severe state of disrepair since 3.0.05:33
wgrantAnybody using them significantly since then has probably torn their eyes out by now.05:33
wgrantSo they wouldn't be able to read the notification anyway :)05:33
wgrant(functionality critical for OEM *worked*, and still does, but it's always been fugly)05:34
huwshimiWell the fact that we had (or have) stakeholders that we were maintaining support for means we need to be a little polite05:34
wgranthuwshimi: mrevell asked someone in PES if a polite notification was desired, and received no reply AFAICS.05:36
wgrantThis was 6 weeks ago.05:36
wgrantAh, you should be able to see the ML archive.05:36
wgranthttps://lists.launchpad.net/private-canonical-launchpad-stakeholders/msg00658.html05:37
StevenKwgrant: I think I've broken calculate_bug_heat(), can I use 'in' in a plpy block?05:50
wgrantStevenK: In what context?05:51
StevenK    if bug['information_type'] in (3, 4):05:51
StevenK        heat['privacy'] = BugHeatConstants.PRIVACY05:51
wgrantThat should work, but you actually want (3, 4, 5)05:52
wgrantAnd it's possible it's some magical type that doesn't work like that.05:52
StevenKIt's getting pulled out by SELECT05:52
StevenKBut I'm lost how to debug it05:53
wgrantPastebin the whole function05:53
StevenKwgrant: http://pastebin.ubuntu.com/896042/05:54
wgrantStevenK: wut05:56
wgrantThat's prehistoric05:56
wgrantYou need to check patches too :)05:56
wgrantdatabase/schema/patch-2209-07-1.sql05:56
wgrantIt's a little bit simpler.05:57
StevenKA little?05:58
StevenKwgrant: How do I replace CASE private WHEN true -- CASE information_type IN (3, 4, 5) ?05:58
wgrantStevenK: For now I guess CASE information_type WHEN 1 THEN 0 WHEN 2 THEN 250 WHEN 3 THEN 400 ELSE 150 END06:00
wgrantThat will match the current behaviour.06:00
StevenKWHEN 4 THEN 15006:01
StevenKOh, ELSE06:01
StevenKNevermind me06:01
wgrantTo catch USERDATA and PROPRIETARY, yes.06:04
wgrantI think it makes sense.06:04
StevenKwgrant: Indeed. It even works.06:09
StevenKwallyworld: Are you still reviewing?06:20
wallyworldStevenK: when are you expecting your db patches to land?06:31
wallyworldStevenK: yes to your question, i didn;t see it06:32
StevenKwallyworld: https://code.launchpad.net/~stevenk/launchpad/bugs-remove-old-privacy/+merge/9897406:34
wallyworldStevenK: already looking06:35
wallyworldStevenK: 69# Security bugs are always private when filed, but can be disclosed06:35
wallyworldi think that comment needs updating06:35
StevenKIt06:35
StevenKSigh06:35
StevenKIt's current for the moment, it will change when the UI does.06:35
wallyworldhmm. i'd just s/private/embargoed06:36
wallyworldi think that's more accurate given the code change just below it06:36
StevenKwallyworld: -12-3 is in review, -11-4 is reviewed but not landed, but we have Monday and Tuesday for FDTs already so if -11-4 and -12-3 land on Tuesday, it gives us time.06:37
StevenKwallyworld: So I'd expect this branch in ec2 next Friday morning06:37
wallyworldtoo bad we can't do more than one patch per FDT06:37
wallyworldwe have to wait a week to get your branch in ec206:37
StevenKwallyworld: I need the patches in devel (otherwise a large amount of tests go bang), and that doesn't happen after it has been applied to prod.06:39
StevenKwallyworld: I'm tempted to just slam the DB patches I need into this branch and toss it at ec2 test on Tuesday just so I can fix all the other failures.06:40
wgrantThe DB patch branches should be merged into that one; it depends on them.06:41
wallyworldStevenK: you could do that if you run ec2 test06:41
wallyworldStevenK: i don't understand the need for the conditional on line 9506:41
wallyworld95+ if params.information_type is InformationType.PUBLIC:06:41
wallyworld96+ params.information_type = InformationType.USERDATA06:41
StevenKwallyworld: We don't want to clobber EMBARGOEDSECURITY06:42
StevenKWhich may be set higher up06:42
wallyworldok, makes sense06:42
=== almaisan-away is now known as al-maisan
wallyworldStevenK: return "Bug.information_type IN (1, 2)", _nocache_bug_decorator06:53
wallyworldinstead of 1 and 2, should we use InformationType.PUBLIC.value etc06:53
StevenKwallyworld: So, I think that method should be entirely rewritten because it's horrid06:53
StevenKwallyworld: So I did the smallest amount of work to get the method working06:54
wallyworldStevenK: ok. i think you could probably also change transitionToInformationType to not return a tuple06:54
wallyworldit would only be a few extra loc06:54
StevenKtransitionToInformationType doesn't return a tuple :-)06:55
wallyworldsorry, setPrivacyAndSecurityRelated06:55
wallyworldsince the tuple values would always be equal06:55
StevenKRight06:55
=== al-maisan is now known as almaisan-away
wallyworldStevenK: other than that, i think it looks ok. but as with most things lp, i'm sure there will be a few dark corners we have forgotten to look in06:57
StevenKHaha06:58
StevenKYeah06:58
wallyworldlet's hope the test coverage is adequate06:58
StevenKYeah. :-(07:01
wallyworldStevenK: r=me but i had a thought. why don't you just delete setPrivacyAndSecurityRelated entirely?07:01
StevenKBecause it's bloody exported!07:01
wallyworldbut there's only a few places left in the code base so i would remove those at least07:02
wallyworldeg bugimport07:02
wgrantIsn't it new?07:02
wgrantDidn't we decide it could go away because it's not part of 1.0?07:02
wallyworldand yes, i think we did07:02
StevenKHmmm.07:02
StevenKI could kill it ...07:03
wallyworldwhat's a few extra changes? it's already quite large :-)07:03
wallyworldgo on, you know you want to07:03
stubStevenK: Your confident your code was based off the latest versions of those stored procedures? We unfortunately have versions scattered throughout the DB patches and we broke things once before by accidently using old code as a basis for a change.07:04
StevenKstub: I'm confident about calculate_bug_heat(). Would you mind checking for the other three?07:05
stubk. I'll have a trawl too.07:05
stubBut that might end up after lunch :)07:06
wgrantI generally check \df+ just to be sure.07:07
stubyer07:07
wgrantParticularly since this touches bugsummary...07:08
stubHmm... I suspect the best way of doing these changes is to use '\df+' to generate current functions into your db patch. commit. then edit, and we can generate a nice diff.07:09
wgrantBugSummary probably hasn't been touched since the last schema snapshot, so you can likely just pull them straight from launchpad-2209-00-0.sql07:11
wgrantBut yeah.07:11
wgrantThat might be a good way.07:11
wgrantCurrently it's pretty horrible.07:12
stubOh, if it hasn't been touched we don't have to worry about accidentally cargo culting old versions any more.07:13
wgrantYeah07:15
wgrantI think before the last snapshot production had a different version than dev.07:15
wgrantDue to massive confusion around those emergency fixes.07:15
=== wallyworld changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Firefighting: - | Critical bugtasks: 4*10
StevenKwallyworld: Dropping setPrivacyAndSecurityRelated means that branch deletes more code than it adds.07:19
stubStevenK: What are you using the bugsummary_viewers() function for? You might find a VIEW more suitable.08:04
wallyworldStevenK: that's good that we end up with a net code deletion :-)08:20
adeuringgood morning08:41
=== almaisan-away is now known as al-maisan
StevenKstub: I have no idea at all -- it was using private, so I changed it.09:41
stuboh, thought that was something new you were adding :)09:42
StevenKstub: Nope, those are 4 triggers that should already being used and called on prod today -- I'm converting their use of bug.private and bug.security_related to bug.information_type09:45
StevenKstub: Thank you for the approval, I'll toss it at ec2 on Monday.09:46
wgrantwallyworld: Bug #962912 :(10:00
_mup_Bug #962912: StormRangeFactory evaluates DecoratedResultSet slices twice <disclosure> <performance> <Launchpad itself:Triaged> < https://launchpad.net/bugs/962912 >10:00
wallyworldwgrant: yes, i noted that in my mp10:01
wallyworldbut didn;t raise a bug10:01
wallyworldbecause there's a reason for it10:01
wallyworldso we would need to find a work around10:02
wgrantwallyworld: I think it should be pretty easy. Will look at it next week10:06
wgrantwallyworld: Just needs to use a custom version of __iter__ on DRS that returns (base, decorator(base)) rather than just decorator(base)10:07
wallyworldyeah probs. my brain was too full to think about it this week10:10
wallyworldand we can fix the other issue too10:10
wgrantWHich other issue?10:12
wgrantI didn't actually read the text of your MP, just the diff.10:12
* wgrant finds.10:12
wgrantHm, don't see another issue.10:13
wallyworldwgrant: SQL tracing shows that the batching infrastructure executes the core batching query twice due to a decorated result set being used. This is unfortunate.10:17
wallyworldhttps://code.launchpad.net/~wallyworld/launchpad/sharing-view-batching4-957663/+merge/9882010:17
wgrantThat was the first issue, I was looking for the second one that you mentioned.10:18
wallyworldwgrant: ah, that the range factory can't handle person_sort_key10:19
wallyworldbug 96183610:20
_mup_Bug #961836: StormRangeFactory should support functional sort keys <batching> <infrastructure> <Launchpad itself:Triaged> < https://launchpad.net/bugs/961836 >10:20
wgrantwallyworld: ah, right.10:20
wgrantwallyworld: That's a bit harder.10:20
wallyworldyeah10:20
wgrantBut similar indeed.10:20
wallyworldmaybe10:20
rick_hmorning11:00
=== al-maisan is now known as almaisan-away
=== bac changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: bac | Firefighting: - | Critical bugtasks: 4*10
=== matsubara-afk is now known as matsubara
=== almaisan-away is now known as al-maisan
deryckMorning, all.13:13
rick_hparty on13:17
=== al-maisan is now known as almaisan-away
rick_hderyck: https://code.launchpad.net/~rharding/launchpad/yuixhr_combo/+merge/9902313:47
* deryck switches work locations14:30
jcsackettare we applying the new LoC maintenance costs experiment to all code, or just the LP tree? my understanding was the latter, but i'm curious.14:35
macaguahi guys14:40
rick_hjcsackett: hmm, that conversation came up last night. /me checks how that went14:41
adeuringabentley: r=me for the latr.jobrunner mp15:02
abentleyadeuring: Cool.  Thanks.15:03
abentleyadeuring: Merged and pushed.15:06
adeuringabentley: cool. but I can't yet see your other MP -- LP is terribly slow for me at the moment...15:07
abentleyadeuring: I haven't made a proposal because I'm still trying to sort out this configuration issue.15:07
adeuringabentley: ah, ok15:08
abentleyadeuring: So with my branch merged, we have my job.fail fix landed without a test.15:12
adeuringabentley: I know but that does not mean that can't test it ;)15:12
jcsackettrick_h: ctrlp is pretty hot. :-P15:15
rick_hjcsackett: yea, I'm liking it. Not used to starting in the lib directory, but with multiple tmux sessions going I'm getting over it slowly15:15
jcsackettrick_h: i didn't need to start in lib; just added the non-code dirs to the custom filter list.15:16
rick_hbac: can I get this on your list please? https://code.launchpad.net/~rharding/launchpad/yuixhr_combo/+merge/9902315:16
jcsackettwere you having problems with that working, or did you not want that globally set?15:16
rick_hjcsackett: yea, but since I do other projects I didn't want to drop some other dirs15:16
jcsackettrick_h: dig.15:16
bacrick_h: sure15:16
rick_hlib, build, I use on other code projects15:16
rick_hjcsackett: but yea, starting in lib seems like a winner, just have to switch to another tmux window to fire off make/test commands and such15:17
jcsackettyeah; it can run a custom filter command..you could probably rig up something nice with sourcing a command from a .ctrlpignore file.15:17
* jcsackett makes note to do that at some point.15:17
rick_hah, true. or even just a shortcut to set lpmode or something15:17
rick_hI do get when it keeps reloading the cache more often than I'd expect, but not nailed down why yet15:18
rick_hssd ftw on that I guess, pretty fast15:19
* jcsackett nods15:19
rick_hnext up I need to get syntastic running vs my pyflakes plugin, maybe this weekend15:20
jcsackett"vim: the neverending plugin and configuration rabbit hole" :-P15:36
* deryck is afk at accountant15:50
=== deryck is now known as deryck[afk]
=== matsubara is now known as matsubara-lunch
=== matsubara-lunch is now known as matsubara
=== almaisan-away is now known as al-maisan
=== al-maisan is now known as almaisan-away
=== deryck[afk] is now known as deryck
bacrick_h: done.  sorry for the sashimi-induced delay.18:04
rick_hbac: no problems, thanks for the peek18:04
rick_hbac: thanks for the comment catch18:08
czajkowski<---------- EOD nn18:13
rick_hhave fun czajkowski18:13
mhall119does anybody know if there's a Django app that mirrors Launchpad objects?18:39
mhall119Project/Team/Branch, etc18:39
sinzuibac: do you have time to review https://code.launchpad.net/~sinzui/launchpad/project-notify-4/+merge/9909418:54
bacsinzui: yes19:00
bacsinzui: that branch has conflicts, though.  would you resolve them first?19:00
sinzuiokay19:03
sinzuibac: I pushed the resolution of the import conflicts19:06
abentleyderyck: I am especially free to chat now, as I've just put my branch up for review.19:35
deryckabentley, I'm not further along enough to articulate ideas yet. unfortunately, distracted by other work.19:40
abentleyderyck: cool.19:40
deryckabentley, I'll try to knuckle down the rest of the day on it, and then let's chat first thing Monday.19:41
bacsinzui: done.  neat branch and idea.  it's going to be awesome.19:42
deryckabentley, if that's cool with you.19:42
abentleyderyck: sure thing.19:42
deryckabentley, thanks, man!19:42
abentleyderyck: np.19:42
sinzuibac, thanks for the encouragement. That branch was very hard. Reading all the other ways lp.registry sends emails really depressed me19:42
bacno doubt19:43
sinzuibac assertTrue(1) passes, but it is not a boolean. I used assertIs to avoid coercion.19:49
bacsinzui: oh, gotcha.19:50
sinzuibac do you have a few minutes to look at this small branch: https://code.launchpad.net/~sinzui/launchpad/front-page-layout/+merge/9912121:20
sinzuiit has a picture too21:20
bacsinzui: i don't.21:23
sinzuiokay. thanks bac21:23
=== bac changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Firefighting: - | Critical bugtasks: 4*10
wgrantYay22:20
wgrant/ubuntu/+sharing down to 1.2s22:20
wgrantAnd /launchpad/+sharing is faster enough that the AJAX batchnav feels very nice.22:21
lifelessnice22:29
jelmer'evening launchpadders22:45
wgrantMorning jelmer.22:48
* jelmer is liking the new +sharing pages22:57
jelmerI guess it's intentional that they're read-only at the moment?22:57
wallyworld_wgrant: ubuntu/+sharing seems to work well23:44
wgrantwallyworld_: Indeed, 1.2s even with the dupe query23:46
wgrantAnd launchpad/+sharing is about 600ms, 113ms SQL23:46
wgrantBut the AJAX batchnav feels pretty nice, even with 350ms of latency.23:47
wallyworld_wgrant: i think the supe query does not load person objects, so it may not be too bad23:47
wgrantwallyworld_: 25% of the page time is in load_objects23:47
wallyworld_yes, i think it's quite usable23:47
wallyworld_25% but i don't think that's due to the 2nd query being done23:47
wgrantUbuntu should feel nice too once we remove the dupe query.23:47
wgrantIndeed.23:47
wgrantThere's only about 110 load_object calls23:48
wgrantHm23:48
wgrantActually, that could be, then.23:48
wgrantBut we'll see.23:48
wallyworld_so i haven't looked so i'm not sure how much time the dupe query takes23:48
wgrant/launchpad/+sharing's queries are like 15ms23:48
wgrantIt's awesome.23:48
wgrantIn other news, lifeless makes EnumCols slow :(23:48
wallyworld_how?23:48
wallyworld_i like the service stuff because it's easy to tweak things23:49
wgrantIndeed.23:49
wgrantWell, about 5% of the total page time is creating and loading EnumCols.23:49
wgrantI get a 50% speedup on that by reverting EnumCols to take a single DBEnum rather than multiple.23:49
wallyworld_we could change that - just fetch the ids23:50
wgrantSupport for multiple enums in a single col was added for the bug search incomplete thing.23:50
wgrantNah, we should fix this properly.23:50
wgrantWill be a universal speedup.23:50
wallyworld_ok, i'm not across the root cause really. need to grok what's happening23:50
wallyworld_wgrant: i also fixed the register merge thing - we had no support at all for XHR form error handling23:51
wgrantHeh23:51
wgrantYeah, glanced at that vaguely.23:51
wgrantDo you really need to use setContent?23:51
wallyworld_it looks and works nice now23:51
wgrantThat's basically innerHTML23:51
wallyworld_i could use set('text', xxx)23:51
wallyworld_i'll change that23:52
wgrantI know in some circumstances we assume that we can spit HTML out.23:52
wgranteg. if you try to register a spec with a dupe URL23:52
wgrantBut I'm not sure at what level the escaping is normally done.23:52
wgrantHmm23:52
wgrantSo, profiling shows that the total SQL execution time for /launchpad/+sharing is 55ms.23:52
wgrantSo 90% of the time is Python :)23:52
wallyworld_cool, good that the db is not the bottleneck23:53
wgrantFor Ubuntu it is, but everything else should be Python.23:57

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