/srv/irclogs.ubuntu.com/2012/10/15/#launchpad-dev.txt

wgranthttps://oops.canonical.com/oops.py/?oopsid=OOPS-493eb7067f568cde87767956e4f8ce24 is impressive01:49
wgrant1061 repetitions of a query to check if the current user is affected by a bug01:50
StevenKIt wants to be REALLY sure01:51
wgrant        # Loop over dupes.01:51
wgrant        for dupe in self.duplicates:01:51
wgrant            if dupe._getAffectedUser(user) is not None:01:51
wgrant                dupe.markUserAffected(user, affected)01:51
StevenKOh01:52
wgrantThat seems pretty pointless...01:52
wgrantI guess it might be helpful to unaffect dupes when unaffecting the master01:53
StevenKwgrant: I've fixed the test failures in destroy-old-bugactivity, I'll be landing it shortly.03:33
wgrantStevenK: Great03:35
wgrantNow go away :)03:35
StevenKHaha03:36
nigelbwhat? haha.03:39
StevenKnigelb: I'm on holidays this week.03:39
StevenKSo wgrant is telling me to stop caring about work from last week. :-)03:39
nigelbStevenK: Aha. yes, go away.03:39
StevenKBut it hasn't landed yet!03:40
nigelbWhere's a freenode staff when you need one.03:40
StevenKOh, don't even joke about that.03:40
nigelbWaitaminute03:40
StevenKThey've k-lined me twice 'by accident'03:40
nigelbI'm sure your SO can arrange that ;)03:40
StevenKHah03:41
wallyworld_wgrant: does it make sense that when auto confirming a bug, any duplicates of that bug should be confirmed also, without the need for affected user checks against each individual dup?04:29
wgrantwallyworld_: No. In fact it's a bug (probably already reported) that duplicates get autoconfirmed at all04:34
wgrantwallyworld_: Launchpad supports autoconfirmation only provisionally and begrudgingly; don't feel like you have to go too far out of your way to make it smooth04:35
wallyworld_wgrant: ok, so if i do a bulk update for affects user, i can ditch the need for any recursive call processing04:35
wgrantRight04:35
wallyworld_what about heat?04:35
wallyworld_can dupe heat be set to master heat?04:35
wgrantNo04:35
wallyworld_i may need to to a stored proc which bulk updates heat04:35
wallyworld_instead of just one bug id at a time04:36
wgrantNah04:36
wgrantSee the garbo job04:36
wallyworld_oh, ok. didn't realise there was one04:36
wgrantYou can do eg. some_result_set_of_bugs.set(heat=SQL('calculate_bug_heat(Bug.id)')04:36
wgrantAnd it'll construct a single UPDATE04:36
wallyworld_ok, nice04:37
wallyworld_thanks04:37
wgrantCalling the function a thousand times isn't a problem, as (particularly after I last took an axe to it) it's quite fast. The problem is making a bazillion roundtrip queries.04:37
wallyworld_yes04:37
wgrantA quick fix to this also wouldn't go near the heat issue at all04:37
wgrantSince it's very unlikely that the user has clicked the affectsme button on more than a couple of dupes04:38
wgrantSo it won't be triggered more than a couple of times a request04:38
wgrantBut batchifying more code is always good, so why not do the comprehensive fix, I guess :)04:38
wallyworld_well, i'm lookin at ditching the recursive call and bulk updating all dupes in the tope level affectsMe all04:38
wgrantNote that it's not quite like that04:38
wgrantIt sets the affectsme status of any dupes that already have an affectsme status04:39
wallyworld_sure, i'm handling that04:39
wgrantGreat04:39
wgrantJust confirming04:39
wallyworld_np :-)04:39
wallyworld_but it means ditching the confirm of dupes, which you say above is ok04:40
wallyworld_and i'll do a single update for heat04:40
wgrantSo yeah, I'd just find all the dupes that have a BugAffectsPerson for the user, set them, set their users_affected_count to AutoReload (or amybe not, it might mean we don't care), and then bulk update the heat04:40
wallyworld_an invalidate and flush will do the same thing?04:40
wallyworld_as setting to AutoReload04:40
wgrantYeah, but it's excessive04:40
wgrantSo it's nice to avoid it04:41
wallyworld_it's used already04:41
wgrantYes04:41
wallyworld_so i'll see if i can ditch it maybe04:41
wgrantIt's already excessive!04:41
wgrantRight04:41
wallyworld_not sure04:41
wgrantTo some extent we really don't care that the dupe counts are off by one04:41
wgrant(for the current transaction)04:41
wallyworld_ok, i may see what ec2 comes back with perhaps04:42
wgrantBut if we do care, then just set the affected columns to AutoReload, as it's much cheaper than invalidating the entire object04:42
wallyworld_not sure if this will help the other bug 92593704:42
_mup_Bug #925937: Does this bug affect you: Timeout error popup <timeout> <Launchpad itself:Triaged> < https://launchpad.net/bugs/925937 >04:42
wallyworld_maybe04:42
wallyworld_since auto confirm for dupes is not going to be dome now04:43
wgrantwallyworld_: No, sadly04:47
wgrantwallyworld_: That's autoconfirming the main bug04:47
wallyworld_oh well04:47
nigelbOh. Now I realize wallyworld_ is Ian Booth.04:54
nigelbThrows me off every time I read your real name :)04:54
wallyworld_i like to be different04:55
nigelbHeh04:55
wallyworld_ianb would be such a boring nick04:55
nigelbboothi sounds more fun ;)04:55
wallyworld_there's a few other words that suit better, but they're not for a family channel04:56
nigelbhahaha04:56
wallyworld_right, off to pick up kid from school04:57
spmwallyworld_: you could go for ixb05:11
wallyworld_spm: i could, but it's too late now05:35
spmit's never too late05:37
spmyou could have ixb_formally_known_as_wallyworld05:37
wgrantwallyworld's his legal name? :)05:38
wallyworld_i'm too lazy to change it05:38
wgrantHmm05:48
wgrantSQLObjectResultSet.__bool__ irks me05:48
wgrantEr, __nonzero__05:51
wgrantThat's the one05:51
wgrantStill evil05:51
StevenKSQLObject needs to be destroyed05:58
nigelbYour internet access needs to be destroyed. Until after vacations.06:02
wgrantYep06:02
StevenKBut I needs it for Steam!06:03
StevenKAnyway, I lose Internets on Wednesday06:03
nigelbYou need to take a vacation on some island with poor internet connectivity. But, you already live in Australia.06:04
StevenKSo yeah, mission accomplished?06:05
adeuringgood morning07:53
czajkowskipurple you guys were busy yesterday08:26
czajkowski*today08:26
StevenKWe're always busy08:26
czajkowskimy inbox says very busy :)08:28
=== almaisan-away is now known as al-maisan
=== gmb_ is now known as gmb
=== al-maisan is now known as almaisan-away
=== benji changed the topic of #launchpad-dev to: http://dev.launchpad.net/ | On call reviewer: benji | Firefighting: - | Critical bugs: ~260
olligm Alice12:11
olliseems you are well informed, hadn't heard about Sam until I saw your mail12:12
olliwrong channel12:16
=== Ursinha-afk is now known as Ursinha
abentleyrick_h_: On https://qastaging.launchpad.net/bzrtools/+edit I see a green flash when I change information type.  I believe that's supposed to mean that the change has been applied to our server.14:07
rick_h_abentley: looking14:18
rick_h_abentley: ah, gotcha. will file a bug/card14:19
abentleyrick_h_: Cool.14:21
rick_h_do we have a tag we're using for privateproject work?14:21
rick_h_ah, see private-projects14:22
rick_h_abentley: I also looked into that bug from friday and filed that bug along side this one14:26
rick_h_where without JS you saw all of the radio buttons for all info types vs the 3 valid options14:26
abentleyrick_h_: Thanks.  I experienced that bug with JS enabled, though.14:27
rick_h_abentley: hmm, well I figured there mus thave been a JS error in your local env since I didn't see it on qastaging but you mentioned you had it with js disabled14:27
rick_h_abentley: I guess if you can repeat it with JS enabled let me know and we can look if something in the JS to build the widget failed since you shouldn't see radio buttons14:28
abentleyrick_h_: We should also fix JS errors that affect local dev environments.14:29
rick_h_abentley: agree, but I don't know what your JS error was which is why I'm saying if you hit it please let me know more details14:29
abentleyrick_h_: Reproduced.14:31
rick_h_abentley: awesome14:31
abentleyrick_h_: The console shows Error: extend failed, verify dependencies14:32
rick_h_ugh...ok so this is on a project/+edit you're getting this in your local dev env?14:32
abentleyrick_h_: Yes, https://launchpad.dev/firefox/+edit14:33
rick_h_abentley: ok, loading up a clean trunk dev env to peek at14:33
abentleyrick_h_: I am using firefox, btw.14:33
rick_h_abentley: ok, checking. Not seeing it in chrome14:34
abentleyrick_h_: I'm seeing the radio buttons in chrome.14:34
rick_h_abentley: ok, trying to see if I can replicate. make clean/make run and such.14:35
rick_h_abentley: the error you hit is generally because there's a missing new SomeObject when creating an instance14:36
rick_h_or a missing dep in the list of requires for some module14:36
abentleyrick_h_: This is on line 10 of https://launchpad.dev/+combo/?yui/yui/yui-min.js&lp/meta.js&yui/loader/loader-min.js14:37
rick_h_abentley: does your line 10 look anything like: https://pastebin.canonical.com/76544/14:38
rick_h_abentley: have you updated your feature flags locally? Are you running yui 3.5?14:39
rick_h_I wonder if it's broken for you since I used Y.View which is yui 3.5 and you might still be set in your dev env for 3.314:39
rick_h_abentley: that would explain why it works in qastaging/production14:39
abentleyrick_h_: No, it looks like https://pastebin.canonical.com/76545/14:39
rick_h_abentley: yea, I bet you're running the old YUI locally still via either lack of make clean/clean-buildout or via forced feature flag setting14:40
abentleyrick_h_: One should never have to run make clean.  I can confirm I'm still running 3.314:41
rick_h_abentley: ok, I guess that's a failing on my end then. I tend to run make clean whenever I bzr switch so didn't realize this14:42
abentleyrick_h_: Yeah, I only run make clean as a last resort.14:43
rick_h_abentley: so the make commands around JS build check for the existing of the build/js/yui and build/js/lp and they existed14:43
abentleyNot when I switch or anything.14:43
rick_h_and only rebuild around them missing so I guess we can look at a more robust or always rebuilding them14:44
abentleyrick_h_: So I guess 3.3 is obsolete now, and we should remove support for it.14:47
rick_h_abentley: yes, it's on the JS clean up todo. SteveK talked about working on some of it, removing some of the jsbuild bits and such14:48
abentleyrick_h_: Now that I've "make clean"ed, I'm seeing the JS widget, not the radio buttons.14:48
rick_h_granduating combo build up to full status and cleaning up the yui-deps.py14:48
rick_h_abentley: cool, good to hear14:48
rick_h_abentley: I'm working on trying to get InformationType to show up for new blueprints UI locally. I've enabled the feature flag, there's nothing in +configure-blueprints about adjusting the information types, but I don't get the field in the list as I do on qastaging/production.15:07
rick_h_abentley: is there another step I'm missing to enable the field?15:07
abentleyrick_h_: OTP15:07
rick_h_abentley: rgr15:07
sinzuijcsackett, do you have time to hangout?15:26
abentleyrick_h_: Have you enabled the blueprint-specific flag?15:30
abentleyrick_h_: i.e. blueprints.information_type.enabled ?15:31
rick_h_abentley: yes15:31
rick_h_blueprints.information_type.enableddefault1on15:31
abentleyrick_h_: Have you enabled private blueprints under +sharing?15:32
rick_h_abentley: ah I think I see. Since this new project is public and doesn't have a commercial subscription it can't immediately set a non-public blueprint?15:36
abentleyrick_h_: Indirectly.  If your specification sharing policy is "Public", you can't set non-public, so you don't get the field.  Non-public policies should only be available if you have a commercial subscription.15:37
rick_h_abentley: got it15:37
rick_h_abentley: yea, had to get a commercial subscription to get the edit UI for the +sharing to change the policy15:37
rick_h_abentley: thanks15:38
abentleyrick_h_: np15:38
adeuringabentley, deryck, rick_h_: sorry, I just saw another EC2 test failure that I missed earlier today; fixed now, but the new EC2 test is starting just now15:40
deryckadeuring, no worries.  thanks for the heads-up.15:41
rick_h_adeuring: cool thanks. Yea I'm just holding off until your stuff hits pqm and I'll merge/submit to ec2 EOD/tomorrow morning15:41
adeuringrick_h_: thanks. I'll ping you once my stuff lands.15:42
rick_h_adeuring: ty much15:42
rick_h_sinzui: ping16:01
sinzuihi rick_h_16:02
jmlwhich squad is doing maintenance at the moment?16:21
czajkowskijml: purple16:22
jmlczajkowski: ta16:22
czajkowskijml: why.. what have you broken :)16:23
jmlczajkowski: time.16:23
lifeless\o/16:24
czajkowskilifeless: :D16:24
sinzuijml, you broke time?16:26
jmlsinzui: time is out of joint.16:27
=== deryck is now known as deryck[lunch]
rick_h_sinzui: wanted to check on if you filed a bug for the JS inline stuff around https://bugs.launchpad.net/launchpad/+bug/1052551 The inline stuff was in the NullChoice side of the widget so wasn't sure if the bug was valid and wanted to check it out16:32
_mup_Bug #1052551: Specification sharing policy is not honored by the edit information_type widget <css> <information-type> <javascript> <private-projects> <specifications> <ui> <Launchpad itself:Triaged> < https://launchpad.net/bugs/1052551 >16:32
sinzuirick_h_, why can't we change the info type of this blueprint. We own it and the project allows public :https://blueprints.qastaging.launchpad.net/launchpad-help-moin-theme/+spec/testing-proprietary-116:34
rick_h_sinzui: yea, there's bug in the JS/css setup in the .pt16:34
rick_h_I've got that fixed, but was looking at the comment you made about the choiceedit.js doing manual style setup on 'inline'16:35
rick_h_sinzui: https://code.launchpad.net/~rharding/launchpad/info_portlet_1052551/+merge/129706 for the .pt and setup issues I'm fixing currently16:35
sinzuiah, I reported that as a separate issue.16:35
rick_h_sinzui: right, so tring to find that separate issue atm to look at it and my search-fu is failing me16:35
sinzuirick_h_,  this is definitely separate: https://bugs.launchpad.net/launchpad/+bug/106455516:36
_mup_Bug #1064555: choicedit assumes icons are inline and tampers with the style.display <disclosure> <information-type> <javascript> <private-projects> <Launchpad itself:Triaged> < https://launchpad.net/bugs/1064555 >16:36
rick_h_wondered if you had it handy and if you had realized the setStule stuff was in the NullChoice widget and if it still applies16:36
sinzuirick_h_, all feature bugs should be tagged private-projects, that will narrow the search16:36
rick_h_sinzui: yea, so the cause was manually adding display:inline to the .pt file16:36
rick_h_not the JS in choiceedit16:36
rick_h_ok cool, I'll reply to this one as well as I wrap things up here16:36
rick_h_sinzui: note line #47 of my diff in my MP I'm working on16:37
rick_h_sinzui: cool thanks for the link that helps16:37
sinzuirick_h_, I would exepct the choicesource bug to appear more frequently. It may affect your feature, but it definitely pre-exists a lot of feature work by about 3 years16:38
rick_h_sinzui: right, but in this case it wasn't a bug in choicesource, but in the JS manually run in specification-index.pt and boostrap html in blueprint-portlet-privacy.pt16:39
sinzuirick_h_, oh, so maybe the error I saw about manipulating style.display is actually from the template...which may mean we have dead code in choice source16:41
rick_h_sinzui: right, the code in choicesource you grepped pertains to a NullChoiceSource widget16:41
rick_h_so maybe there's still a bug there, but that's why we don't see it much as it's not used as often16:42
sinzuirick_h_, yes, I think you have fixed the real bug I experienced16:42
rick_h_sinzui: ok cool. Thanks for the link to the other bug. Want to make sure I catch all the parts here16:43
sinzuirick_h_, if you can edit, and after the edit the text "Edit" does not appear, you have fixed my use case. I will remove the tags from the other bug. I guess it is tech-debt16:44
rick_h_sinzui: yea, the only thing now is that edit always shows even when there's only one value "Public" so I'll probably fix this bug but then file a bug about hiding that all together when there's only the one choice16:45
sinzuiah16:45
sinzuirick_h_, toggleClass('hidden') was the intent then...and choice source does not do it.16:46
rick_h_sinzui: gotcha. Yea, so I'll file a new bug about that then with this as the specific use case16:47
sinzuirick_h_, so maybe the choice source should know to hide EDITICON when the length of choices are 1?16:49
sinzuiHow do proprietary only bugs and branch portlets solve this?16:50
rick_h_sinzui: yea, that's what I would expect.16:51
rick_h_sinzui: I'm going to check out how branches solve this. It's not jumping out at me and I want to get this fix in asap.16:51
sinzuirick_h_, This is not your problem...or at least this is not about blueprints.16:58
sinzuirick_h_, https://code.qastaging.launchpad.net/~launchpad/launchpad-help-moin-theme/moin_launchpad shows a choice of 116:58
rick_h_sinzui: agreed which is why it'll be a new bug for now. I've got to wrap this up and move onto some more private project stuff16:58
rick_h_sinzui: ah, good to know then. Thanks16:59
sinzuiokay16:59
rick_h_benji: https://code.launchpad.net/~rharding/launchpad/info_portlet_1052551/+merge/129706 for your eyeballs if you get a sec please17:07
benjirick_h_: sure17:08
=== matsubara is now known as matsubara-lunch
=== BradCrittenden is now known as bac
=== deryck[lunch] is now known as deryck
=== matsubara-lunch is now known as matsubara
=== vednis is now known as mars
abentleybenji: could you please review https://code.launchpad.net/~abentley/launchpad/workitems-for-private-blueprints/+merge/129736 ?19:00
benjiabentley: sure19:01
abentleybenji: Thanks.19:44
benjimy pleasure19:44
abentleyrick_h_: Are you using my getProductPrivacyFilter for fixing bug #1063272 ?19:51
_mup_Bug #1063272: Cannot view +related-projects because of private-project <403> <private-projects> <Launchpad itself:In Progress by rharding> < https://launchpad.net/bugs/1063272 >19:51
adeuringrick_h_: my branch landed finally19:54
beunowgrant, ping20:53
beunowgrant, looking for a reviewer for a python-oops-tools branch: https://code.launchpad.net/~beuno/python-oops-tools/show-newest-oopses/+merge/12975220:54
czajkowskibeuno: on call reviewer is benji20:59
beunoczajkowski, this may be a tad specific to throw in the general review queue21:00
=== benji changed the topic of #launchpad-dev to: http://dev.launchpad.net/ | On call reviewer: - | Firefighting: - | Critical bugs: ~260
beunobenji, thanks21:19
beunobenji, I'll reply in the merge proposal but the spaces after the comma are pep-8 complaints21:19
benjibeuno: right, but the commas themseleves are what stood out to me21:20
beunobenji, ah, yes, there's a bunch of XXXs warning that it needs refactoring21:21
beunodidn't look into it21:21
benjibeuno: I figured a code formatting tool or search/replace was used and the strange comma-after-a-single-item-list threw it off21:22
beunoright21:23
beunono, all the crazy is hand-crafted!21:23
* benji starts selling t-shirts with "all the crazy is hand-crafted!" on them.21:28
wgrantbeuno: I'm happy to review that, but any Launchpad reviewer can also do it21:45
wgrantAs benji suggests :)21:45
beunowgrant, cool, thanks21:52
wgrantabentley: Do you have a branch in progress to stormify Person.specifications? I have a branch that needs it, so if not then I'll do it today.21:54
abentleywgrant: Yes, I do.21:55
abentleywgrant: ~abentley/launchpad/user-blueprints21:55
wgrantabentley: Thanks21:55
wgrantAlthough it's mysteriously empty21:56
abentleywgrant: I just pushed it now.21:56
wgrantAh21:56
wgrantabentley: Is it likely to land in the next day or so?21:56
abentleywgrant: I'm just in the middle of adding unit tests for the existing behaviour.21:56
wgrantRight, it certainly needed it :/21:57
abentleywgrant: Yes, ideally it will land tomorrow.21:57
wgrantGreat, thanks.21:57
abentleywgrant: What is your branch doing?21:58
wgrantabentley: Fixing the +specworkload timeouts, which needs that query to be reworded and run over multiple people21:58
abentleywgrant: Okay.  So where I'd naively put  "Specification.drafter = user.id", you22:00
abentleywant to do "Specification.drafter.is_in(user_ids)" etc?22:00
beunobenji, addresed and pushed22:00
wgrantabentley: Right, I'll need to extract it out to separate function/method22:01
abentleywgrant: I should have *something* in the next couple of hours, but likely won't finish 'till tomorrow.22:03
james_wbeuno, doesn't the db have the information on newest oopses?22:04
beunojames_w, I don't actually know  :)22:04
wgrantIt does :)22:04
beunowasn't sure if the oopses get processed and stored in PG as they come in22:04
wgrantI haven't actually looked at the branch yet22:04
wgrantYou can find the latest with a simple Django ORM query22:05
beunothat would of been much simpler22:05
james_wbenji, they do22:05
james_wbeuno I mean22:05
james_wand much more efficient :-)22:05
beunoindeed22:05
beunook22:05
beunoso I need to change everything!22:05
wgrantWell, "everything" == "one 10 line method", but yes :)22:06
james_wwell, not everything :-)22:06
beunono, EVERYTHING22:06
beunoor not22:06
beunotest should still pass, so forced TDD!22:07
beunobut, at this stage I22:07
beunoI'll add what I was going to in my follow up branch22:07
beunorelative time since the oops and some data about it22:07
wgrantI want to add a similar thing to show the latest OOPSes for a pageid on a particular instance.22:09
wgrantBut haven't got around to it yet22:09
abentleywgrant: Initial implementation is pushed.  Lots more to go.22:28
wgrantabentley: Lovely. Thanks22:29
rick_h_abentley: didn't get that far before EOD to tell yet23:19
abentleyrick_h_: I expect that it will want to use it, so I was leaving it alone until the other branch lands.23:21
rick_h_abentley: abel's branch?23:21
abentleyrick_h_: No, mine.23:21
rick_h_abentley: I just merge his stuff and going to get my stuff waiting on that to ec2 for the night23:21
rick_h_abentley: ah ok23:21
rick_h_abentley: thanks for the heads up. I'll take a peek then at your stuff you've got in the wings23:22
wgrantwin 4323:52
rick_h_4423:53

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