/srv/irclogs.ubuntu.com/2012/08/28/#launchpad-dev.txt

=== skaet is now known as skaet__
StevenKwallyworld: Oh good god, http://pastebin.ubuntu.com/1170963/ solves the test issues I brought up on the call.01:22
wallyworldyay01:22
StevenKAnd I was the one who added filter_visible ... :-(01:22
wallyworldlol01:23
wallyworldthat sort of thing happens to me too01:23
=== gary_poster|away is now known as gary_poster
StevenKwallyworld, wgrant: https://code.launchpad.net/~stevenk/launchpad/drop-disclosure-feature-flags/+merge/12152301:58
wgrant+271? :(01:58
wallyworldwhat did you expect? it's a net loss of code01:59
wgrantWell, normally I say "+foo? :(" then StevenK goes and reduces it to about 30% of that02:00
wgrantI'm hoping it works here02:00
StevenKHaha02:00
StevenKNot this time02:00
StevenKFar too much reflowing02:00
wgrant:(02:01
wgrantStevenK: I don't quite understand what's going on in bugsubscription.txt02:05
wgrantIs there some broken unsubscription logic?02:05
wallyworldmr ocr - https://code.launchpad.net/~wallyworld/launchpad/branch-infotype-portlet-1040999/+merge/121404 https://code.launchpad.net/~wallyworld/launchpad/branch-infotype-portlet2-1040999/+merge/12152702:06
wallyworldadd to the queue :-)02:06
wgrantSure02:06
wallyworldthanks02:07
wallyworldfood time, me hungry02:08
wgrantI think I'll do the same after StevenK's branch02:08
wallyworldyeah, my branches will be in a huge bb queue anyway02:08
wgrantOh hm02:10
wgrantNo, that doesn't explain it02:10
StevenKwgrant: I tried to explain it in the MP description.02:18
StevenKwgrant: It seems the test subscribes mark, and then sets the bug to private, which boots mark off, and then the rest of test doesn't include him.02:19
StevenKs/off, and/off, sets the bug back to public, and/02:19
wgrantBut why has that changed?02:19
StevenKBecause I removed the section in transitionToInformationType that ripped out the subscriptions if the job feature flag was disabled02:20
StevenKSince RASJ will do it02:20
wgrantStevenK: Right, but shouldn't he have a grant from the sub?02:20
wgrantThe subs were only ripped out if there was no grant02:21
StevenKwgrant: He was subscribed when the bug was public -> no grant02:21
wgrantOh, right02:22
wgrantMakes sense, then02:23
wgrantBut please do dispose of enhanced_picker fully02:23
StevenKEh? I missed something?02:24
wgrant69 @property02:24
wgrant70 def enhanced_picker(self):02:24
StevenKOh, that should get pulled in properly. Right.02:24
rick_h_wallyworld: tossed a side note out to your MP02:30
* wallyworld looks02:30
wallyworldrick_h_: agreed 100%, but this branch is more concerned with extending existing code to deliver what's required rather than fixing the inherit design issues02:31
wallyworldnow that the core banner stuff is out, it can be decoupled later02:32
rick_h_wallyworld: ok, yea just gave it a quick glance and seemed to introduce some new stuff in the information type stuff for code.02:32
rick_h_wallyworld: cool, ok02:32
wallyworldyeah, that was to avoid code duplication with what was there already02:32
wallyworldthanks for looking though02:32
rick_h_with this can you use the BranchInformationTypeWidget without a portlet/banner?02:33
rick_h_e.g. from the actual edit UI for a branch or bug? I guess you'd have to since I've seen the bug UI have it as a normal UI field in edit02:33
wallyworldrick_h_: the banner etc is currently expected to be there since it makes direct calls to the various methods02:35
wallyworldthe portlet is expected to be there and that's what the widget is manipulating02:36
rick_h_wallyworld: ok, I guess I'll be peeking at it soon enough. I was thinking of the case of during bug submission/etc02:36
wallyworldit's not relevant during bug submission02:37
wallyworldit's only for editng the info type via the bug/branch overview pages02:37
rick_h_ok, so the widget for selecting information type during submission is a different widget? /me hasn't gotten down to all the code yet02:37
wallyworldyes - the one during submission is just a popup field, the one on the overview pages is a portlet with extra info rendered02:38
wallyworldextra info = description02:39
rick_h_ah ok. I'll peek at it again in the morning then. Thanks.02:39
wallyworldrick_h_: so with yui 3.5, i notice Y.Lang.substitute is replaced in some places by Y.Lang.sub02:39
rick_h_yea, substitute is on the way to deprecation I think. Those will probably have to be updated.02:40
wallyworldah ok. thanks. i was really happy to see we are on 3.5 \o/02:40
rick_h_there's discussion of a micro template feature added into 3.7 that would replace sub all together and be something less than handlebars, but more than sub02:40
wallyworldand soon 3.6 maybe :-)02:40
wallyworldcool, sounds good02:41
wgrantSpeaking of 3.502:41
rick_h_yea, I already had tests for 3.5.1 and 3.6 was new enough I didn't want to jump that far02:41
wgrantI haven't seen any issues02:41
wgrantShould we deploy it to everyone? :)02:41
rick_h_cool, I'll open it up to beta tests later this week02:41
rick_h_beta usres02:41
rick_h_beta users...gah late here02:41
wallyworldvery late02:41
rick_h_we have to wait for the RT on the squid proxy before we can enable the combo loader for all users and then get everyone on 3.5...hopefully in a month02:41
wgrantOh, we can't do non-comboloaded 3.5?02:42
rick_h_no, we can't02:42
wgrant:(02:42
rick_h_well, not without a lot of extra work02:42
rick_h_and we're one RT from combo loader for all so holding onto that and then it's a non-issue any more02:42
rick_h_should make the upgrade to 3.6 a very easy process02:42
wgrantYep02:44
rick_h_the only big missing part after that is some way of running our JS tests on each version we have running02:44
wallyworldwhat's the rt for? caching?02:44
rick_h_yea, combo loader wsgi traffic caused a 1-2% cpu spike on the app servers it's running on.02:45
rick_h_since the urls never change (they're unique per revid) they can be 100% cached in squid02:45
wallyworldright, sounds logical02:45
rick_h_and should cause no real load for us at that point02:45
rick_h_got an email that someone was oging to work on it after the DC move, but we know how much fnu that's been :)02:46
wgrantwallyworld: Oh right, we can use set literals now, can't we...02:52
wallyworldyeah02:52
wallyworldi just did it as a drive by02:53
wgrantwallyworld: Why do we use a custom form for this widget, rather than the API?02:53
wallyworldso i can re use all the existing back end logic02:53
wallyworldto keep html and ajax back end code the same02:53
wallyworldand for bugs, the form returns the subscribers list. we will ultimately need to do that for branches too02:54
wgrantThe only thing that should be interesting to share is getInformationTypesToShow, right?02:54
wgrantStill, there has to be a better solution to that02:54
wallyworldmaybe. code reuse is good :-)02:55
wgrantYes02:55
wgrantBut doing it through a custom form isn't :)02:55
wallyworldwhy?02:55
wallyworldit is a form submission type operation02:55
wgrantI think this is the only case where we don't use the API02:55
wgrantEverything else does02:55
wgrantEven milestone creation02:55
wallyworldand we get to use all the existing validation hooks, error handling etc02:55
wgrantMilestone creation loads a form from the server, but then submits via the API02:56
wgrantwallyworld: Sure, but we need the validation hooks and error handling through the API too02:56
wgrantWhat does the form need that the API doesn't?02:56
wallyworldbug privacy also works this way02:56
wgrantSure02:56
wgrantThat's the one exception02:56
wgrantIn all of Launchpad02:56
wgrantTo the rule02:56
wgrantI understand that you're cloning bug privacy02:56
wgrantBut I think bug privacy is very wrong02:57
wallyworldi disagree :-)02:57
wgrantEverything else manages to use the API02:57
wgrantThe only possibly valid argument is the custom return value02:57
wgrantValidation/errorhandling are not valid arguments, since the API needs those too02:58
wallyworldthe form infrastructure is what's being used here - why does the transport matter?02:58
wgrantIf the API isn't sufficient, we probably have a problem with our API02:58
wgrantAnd it'd be nice to understand what that problem is :)02:59
wallyworlddoes the api have declarative validation hooks and all the rest of the stuff that the form submisison stuff relies on?02:59
wgrantWe expose this exact transition as an API method03:00
wgrantIf that API method doesn't do the necessary validation, we have a serious bug03:00
wallyworldbugs checks that a bug is being made invisible, and there's a workflow there to manage that with the user03:01
wallyworldyou can't really do that via the api in the same way03:01
wgrantWhy not?03:01
wallyworldso you need some front end to handle that03:01
wgrantYou have the current bug state in the JS03:01
wgrantYou know the new state because the user clicked on it03:01
wallyworldyes, but the api has to communicate the potential issue back to the caller and then process their response03:02
wgrantWell, the API can either do that by accepting a keyword arg for confirmation03:02
wgrantOr, and this would be my preference, the web UI does the check before it gets to the API03:02
wallyworld2 xhr calls = yuck03:03
wgrantHuh?03:03
wgrantHow's that different from now?03:03
wallyworldwell one to check,one to do the work03:03
wgrantYou don't necessarily need one for the check03:03
wallyworldnow, it optimistically assumes it will succeed03:03
wgrantSince you have the old and new information_types03:03
wgrantOn the client03:04
wallyworldthe client can't make the decision03:04
wgrantWhy not?03:04
wallyworldit doesn't have all the information03:04
wallyworlda back end sharing service api call is required03:04
wgrantOh, right, we only warn if there's no APG?03:05
wgrantForgot that detail03:05
wgrantA way to do that with one API call is to have an even_if_there_is_no_apg=False kwarg03:05
wgrantSo the normal case would be a single call03:05
wgrantOn failure, retry setting that to True03:05
wallyworldat the end of the day, both ajax widget and html form are the same thing - submit of data to be processed, so should be handled consistently by the back end03:06
wgrantBut the API needs that too03:07
wallyworldusing common code03:07
wgrantSo the validation code has to be in the model03:07
wgrantNot the view03:07
wallyworldhere it's no so much validation as in a check that's only relevant to the ui at the monent03:07
wallyworldand the check is done using model code03:08
wgrantRight, this is an interesting special case03:08
wgrantBut I don't think it's special enough to warrant not using the API, if this wasn't just a clone of the Bugs code03:08
wallyworldthe view layer is a logical thing to use to solve any impedance mismatch between web and model api03:09
wgrantProbably, yes03:09
wgrantBut not as the application is architected at present03:09
wallyworldespecially with html forms for the exact same editing operation is use03:10
wallyworldwe want to keep the code common03:10
wgrantRight, we need a way to do that03:12
wgrantBut currently we don't do it in many places03:12
wallyworldif no html form was there, then i'd have used the api since all the view code would be in javascript03:12
wgrantAnd when we need to, it involves adding self.request.is_ajax special-cases everywhere03:12
wallyworldthe is_ajax is just used to determine what to return from the actions03:13
wgrantSure03:13
wgrantAnd the fact we have to repeatedly hack this in is a sign that we're Doing it Wrong™03:13
wallyworldideally there would be no html forms, just ajax :-)03:13
wgrantIndeed03:14
wallyworldand then the issue would be moot03:14
wallyworldwgrant: bug 1040989 "For commercial projects we can choose Public or Proprietary as the default...." - this seems to imply just to check for OTHER_PROPRIETARY when registering a project, but surely a commercial subscription is also required to allow proprietary sharing policies?03:18
_mup_Bug #1040989: new project have legacy sharing policies <disclosure> <sharing> <Launchpad itself:In Progress by wallyworld> < https://launchpad.net/bugs/1040989 >03:18
wgrantwallyworld: Projects with Other/Proprietary get a complimentary 30 day commercial subscription.03:19
wgrantI'm not sure at which stage this is applied03:19
wallyworldah ok,thanks03:19
wallyworldi'll look into it03:20
wgrantPersonally I think we might be best to just always default to Public/Public for now03:20
wgrantBut if it looks easy, I guess the Proprietary defaults couldn't hurt03:20
wallyworldi'm doing it because the card was put into the next lane as an item to do to finalise stuff for the beta03:21
wallyworldso i assume it's required03:21
wgrantThe really important bit is that it not default to legacy any more03:21
wgrantSince we want to be migrating existing projects away from legacy without creating new ones03:22
wallyworldyes, true03:22
wgrantWe can't make the columns NOT NULL if new projects have them null03:22
wgrantThat's the main thing03:22
wgrantStevenK: Hah03:42
wgrantStevenK: I just tripped over the makeBug(product=) thing myself03:42
StevenKHahaha03:50
wallyworldwgrant: another one to add to your queue, sorry  https://code.launchpad.net/~wallyworld/launchpad/new-project-sharing-policies-1040989/+merge/12153203:53
wgrantOh, that was easier than expected03:53
wallyworldhope i haven't missed anything03:54
wgrantNope, r=me03:54
wgrantThanks03:54
wallyworldcoo :-)03:54
wallyworldcool03:55
wallyworldluckily createProduct calles setLicence which does the subscription thing03:55
wgrantYup03:55
wgrantNot quite sure how we're going to do the not-null thing03:55
wgrantBut I guess whoever does that can work it out :)03:55
StevenKwgrant: Your comment on the MP pre-dates our discussion about bugsubscription.txt?03:58
wgrantStevenK: It was between me asking and you responding, so yes, that's no longer a concern03:59
StevenKwallyworld: http://pastebin.ubuntu.com/1171109/03:59
StevenKwallyworld: Opinions, have I missed something/looks okay?04:00
* wallyworld looks04:00
StevenKwallyworld, wgrant: Now the deploy is done, any reason I can't toss my branch that ALTER TABLE product/distribution DROP COLUMN security_contact at ec2 to land?04:06
wgrantStevenK: db-devel has enough stuff in it already04:07
wgrantThere's already two things, AFAIK04:07
wgrantLet's not add more04:07
wallyworldStevenK:  99  -  show_create_team=self.enhanced_picker)04:07
wallyworldshould be            show_create_team=self.show_create_team)04:08
StevenKHmmm, I think show_create_team_link in that class can die too04:09
StevenKMmm, maybe not04:10
wallyworldyou need to keep the show_create_team boolean04:10
wallyworldStevenK: also, in test_vocabulary, you can delete tests04:10
wallyworldthe tests without enhanced_picker=True which have matching =True versions can go04:11
wallyworldand maybe rename the tests to remove _enhanced_ fromthe name04:11
wallyworldlooks ok otherwise, but do run it up locally and test project creation and editing of owwner/driver04:12
StevenKwallyworld: Not sure which tests can die, but http://pastebin.ubuntu.com/1171125/04:13
wallyworldStevenK: i'm not sure either, ignore that dumb comment of mine. i think it looks ok04:15
wallyworldwgrant: distributions don't have bug/branch sharing policies yet, right?04:27
StevenKwallyworld: I just tried New Team. It looks *awesome*04:33
wallyworldStevenK: oh, cool, ta :-)04:34
StevenKwallyworld: It needed to be 'show_create_team=self.show_create_team_link' anyway04:34
wallyworldah, right, sorry. i misrembered04:35
StevenKThe tests picked it up04:35
wallyworldso the create team link should only be there for registering new projects and editing owners/drivers04:35
wallyworldyay for tests \o/04:35
StevenKwallyworld: Yeah, I tried assigning a bug and there was no create team link04:36
wallyworldgood!04:36
StevenKRargh04:36
wallyworldoh no, what?04:37
StevenKDamn it, auditor, stop failing on db-devel :-(04:37
StevenKNow wallyworld will yell at me again :-(04:37
wallyworldi didn't yell :-)04:37
wallyworldjust asked politely04:37
StevenKI know, I'm teasing04:37
wallyworldirc is so devoid of emotional clues04:38
StevenKHold on, I'll get in the car and drive 12 hours. Will that help?04:38
wallyworldok, and bring cake04:39
StevenKYou don't deserve any, due to being a large cake tease with spm.04:39
wallyworldi actually made one and sent him a picture :-D04:40
wallyworldit was sooo yummy too04:40
StevenKYes, but he didn't get to eat any!04:40
wallyworldi know! hence the :-D04:40
wallyworldi was trolling him04:40
StevenKAnd then devel fails with test_getAllPermissions_constant_query_count04:48
StevenKSeriously04:48
StevenKThis is why we can't have nice things.04:48
wallyworldi think the query count test was added relatively recently04:51
StevenKwgrant was talking about it yesterday04:52
wallyworldyeah, it's all soyuz fault04:53
StevenKwgrant: Terribly hard review up for you. https://code.launchpad.net/~stevenk/launchpad/clean-up-ibranch/+merge/12153605:29
StevenKOooh, Postgres 9.2 RC105:33
stubyeah, yeah.05:34
StevenKstub: Not a dig at you, just reading the blog post05:35
stubhaha, yeah. Just don't get too excited :)05:35
stubThere is some cool stuff in there though, such as statement profiling that might actually work for us. Nice to have pg spit out our slowest common queries.05:36
StevenK'Fix bugs in pg_trgm' looks relevant too05:36
StevenKwallyworld: Since wgrant appears to have disappeared without a trace, can you review https://code.launchpad.net/~stevenk/launchpad/clean-up-ibranch/+merge/121536 ? A few tears would be okay, too, since it's the last mention of transitively_private in model code.06:03
wallyworldStevenK: sorry, was out buying dinner, looking now06:43
wallyworldStevenK: there's still a update_transitively_private Postgres function? Which updates Branch table transitively_private column.  And there's also a security.cfg entry for said function.06:49
wallyworldi guess these will be killed next06:49
wallyworldr=me06:50
StevenKI thought that was dead06:50
StevenKALTER TABLE Branch DROP COLUMN transitively_private;06:52
StevenKDROP TRIGGER maintain_branch_transitive_privacy_t ON Branch;06:52
StevenKDROP FUNCTION maintain_transitively_private();06:52
StevenKIn 16-606:52
StevenKsteven@undermined:~/launchpad/lp-branches/clean-up-ibranch% grep -c maintain_transitively_private database/schema/security.cfg06:53
StevenK006:53
wallyworldStevenK: in security.cfg, look for public.update_transitively_private(integer, integer, boolean) =07:23
StevenKWith no perms07:29
StevenKBut yeah07:30
adeuringgood morning07:47
=== frankban changed the topic of #launchpad-dev to: http://dev.launchpad.net/ | On call reviewer: frankban | Firefighting: - | Critical bugs: 4.0*10^2
jammgz: morning, /wave jelmer08:03
jelmerhello mgz, jam08:04
jamI'm technically off today, but I'd like to chat with you guys on mumble if you're available.08:04
mgzI'll hop on08:05
=== almaisan-away is now known as al-maisan
=== jamestunnicliff_ is now known as jamestunnicliffe
=== smartboyhw_ is now known as smartboyhw
=== rick_h_ changed the topic of #launchpad-dev to: http://dev.launchpad.net/ | On call reviewer: frankban, rick_h | Firefighting: - | Critical bugs: 4.0*10^2
mgzjelmer: so, I take it this is not the intended plan with the lucid/py27 ppa: <http://pastebin.ubuntu.com/1171529/>10:33
jelmermgz: hehe, no10:34
mgzit also needs the normal launchpad ppas, and to upgrade everything?10:34
mgzor should just leave those packages alone?10:34
jelmermgz: it should leave those packages alone10:35
jelmermgz: are you looking at the bzr 2.5.1 upgrade, or should I ?10:36
mgzI can do that.10:37
jelmermgz: either works for me; I'm a bit stuck with the python upgrade, the bzr 2.5.1 upgrade seems more straightforward10:38
maxbWhich PPA is this? https://launchpad.net/~canonical-bazaar/+archive/py27/+packages ? If so, I'd be quite surprised if you were able to get away with versioning python-defaults as 2.7anything, rather than 2.6something10:38
* maxb has battle scars from backporting Python 2.7 to Debian etch.10:39
maxbYes, etc.10:39
maxbh10:39
jelmermaxb: that sounds painful10:40
maxbIt was... interesting :-)10:40
jelmermgz: why is that?10:40
* mgz reads maxb's mind10:42
stubSo why aren't we just switching to Precise? The machines are all due for that upgrade anyway.10:43
mgzstub: this is what I keep asking.10:44
mgzit's meant to be 'easier' and 'safer' to do all this crazy backport stuff with packages no one else has used or needs10:44
mgzbut seems like it's just introducing yet another environment for things to potentially fail in.10:45
stubI don't see how using untested bespoke packages is considered safer than the versions all the devs have been testing for months.10:45
mgzindeed.10:45
stubEspecially if there do turn out to be problems, the solution would be to upgrade to precise rather than stick with 2.6 forever.10:46
maxbOn a similar topic, why not precise/py26 rather than lucid/py27?10:51
lifelesswe know that we're broken on 2.7 atm AFAIK.10:56
lifelesscalling it tested for months is a massive exaggeration.10:56
lifelessmaxb: because its a lot easier to rollback lucid/py27.10:57
mgzbroken in non-testsuite ways? I'm reasonably sure I got all the test failures.10:57
lifelessyes10:58
maxblifeless: Fair enough - on the other hand, it's probably a lot easier to create a viable precise/py26 PPA than a lucid/py27 one10:58
lifelessmaxb: we depend on very few system packages10:59
maxbhmm, ok, I was just looking at canonical-bazaar/py27 and noticing an awful lot of red Xes10:59
stubIf we are broken under 2.7, we are broken under 2.7. At least with Precise we know it is broken with the real environment, not a bespoke environment.11:01
* lifeless shrugs11:01
lifelesswe had a disasterous time last time we did a lock step upgrade.11:01
stubBut we are switching to 2.7 plus all our packages, which is pretty much a lock step upgrade. Except we are planning on doing it twice.11:03
lifelessstub: how do you figure that ?11:03
stubOnce to a version of 2.7 nobody except staging and buildbot will be using, plus lucid debs. Then again to Precise 2.7.11:04
lifelessmany devs develop on lucid in lxc; so nobody is an exaggeration. But sure.11:04
lifelessThere are two separate transitions.11:04
lifelessThere were three.11:05
lifelesspostgresql11:06
lifelesspython11:06
lifelessbase os11:06
lifelesswe did the same strategy for postgresql.11:07
lifelessand the associated libraries11:08
lifelessand we had small issues and friction11:08
stubpostgresql is unrelated, as that is server migration.11:08
lifelessits entirely related; we had to deal with it in buildbot, we had to upgrade libpq because of (I forget the exact issue)11:09
stubWe *want* things to fail under buildbot and staging. What we are worried about is production failures, and there is unrelated.11:09
lifelessif it was unrelated, we wouldn't have had to upgrade packages on all the production machines :)11:10
stubIt is unrelated because the DB servers are due for upgrade to Precise as soon as webops have bandwidth. It isn't blocked on the clients.11:11
lifelessthey are *now*11:11
lifelessI'm not talking about precise on those servers11:11
lifelessI'm talking about 8.4->9.111:11
lifelesswhich was part of the overall upgrade-to-precise plan11:11
adeuringstub: thanks for the review11:23
wgrantstub: FYI in 9.1 we can now add constraints without too much downtime11:49
wgrantUsing NOT VALID11:49
wgrantThen ALTER TABLE ... VALIDATE CONSTRAINT11:49
wgrantThat may influence your opinion on adeuring's MP11:50
stubOh, hadn't seen that. Ta.11:54
lifelessshiny11:54
stubIts only 100k rows to scan11:55
wgrantTrue11:56
wgrantBut yeah11:56
wgrantthat was a relatively late addition to 9.111:56
wgrantIt was the last common really expensive operation11:56
wgrantthat is now doable without major downtime11:56
wgrantmakes me very happy11:56
lifeless100k rows is probably too many11:59
wgrantYeah12:00
wgrantWell12:00
wgrantIt's only validation12:00
wgrantAnd it's pretty simple12:00
wgrantSo it might be OK12:00
wgrantBut I think you're still probably looking at >5s for that12:00
wgrantBut I haven't thought that through properly12:00
=== gary_poster is now known as gary_poster|away
lifelessI'm fairly sure we would be12:02
lifelessbut data will tell12:02
wgrantI'd sort of expect 5-10s for a single node there12:02
wgrantbut that's mostly a gut feeling12:03
lifelessI see progress from stub on rolling schema patches.12:03
wgrantoh?12:03
lifelesswhich will be awesome12:03
wgrantoh12:03
wgrantyou mean nodowntimefastdowntime?12:03
lifelessnearlynodowntimefastdowntime12:03
wgrantright12:03
wgrantnoreaddowntime12:03
wgrantyeah12:03
wgrantwe discussed that last night12:03
lifelessgreat.12:03
wgranti saw a branch12:03
wgrantlooks ok12:04
lifelessI should spend more time not looking in the channel, you guys get up to good stuff :)12:04
wgrantit will be marvellous :)12:04
lifelessstub: sorry I didn't catch up w/ you last week, was -hectic-.12:04
lifelessstub: this week may be too, for different reasons.12:04
StevenKAnd in Sydney12:04
lifelessstub: if you want to catch up, wed is probably the day, or we can raincheck it - whatever you prefer12:04
lifeless*yawn*, ciao.12:05
stublifeless: whatever :)12:05
stubsee how we go tomorrow12:06
wgrantNight lifeless12:06
stuband from above, just about to push the tests.12:08
=== gary_poster|away is now known as gary_poster
wgrantstub: yeah, i'm glad we have pgbouncer fixtures working so we can actually test that excellently12:11
wgrantthis is not the sort of stuff we want untested12:11
czajkowskimgz: you about?12:31
mgzyup12:35
mgzwill need some lunch shortly though.12:36
czajkowskimgz: can you look at https://bugs.launchpad.net/launchpad/+bug/1042351  when you're free please12:36
_mup_Bug #1042351: Bzr import fails with NotImplementedError in broken_remote_exceptions <Launchpad itself:New> < https://launchpad.net/bugs/1042351 >12:36
czajkowskielse I'll poke jelmer when he gets back12:36
mgzit's an old format, which may upset things, otherwise need to look at logs/code for more info12:41
=== al-maisan is now known as almaisan-away
rick_h_abentley: let me know if there's anything I can do to help ease the JS pain in that stuff.13:48
abentleyrick_h_: Thanks.13:48
=== almaisan-away is now known as al-maisan
=== al-maisan is now known as almaisan-away
=== deryck is now known as deryck[lunch]
=== almaisan-away is now known as al-maisan
=== matsubara is now known as matsubara-lunch
=== deryck[lunch] is now known as deryck
=== matsubara-lunch is now known as matsubara
=== al-maisan is now known as almaisan-away
jcsackettanyone know how up to date the data on staging is?19:29
abentleyrick_h_: Could you please review this? https://code.launchpad.net/~abentley/launchpad/blueprint-info-type-code/+merge/12168319:42
rick_h_abentley: sure thing19:47
=== cr3_ is now known as cr3
=== cr3 is now known as Guest4554
rick_h_abentley: is the diff off or are the other changed files just part of a merge conflict resolve business?19:54
abentleyrick_h_: The changed files listed in the lint?19:54
rick_h_yea, there's many more files as 'changed' but only the one small diff in specification.py19:54
rick_h_the patch, garbo, etc19:55
abentleyrick_h_: The lint is stale.19:55
abentleyrick_h_: It's from before abel duplicated my work.19:55
rick_h_ok cool, just wanted to make sure I wasn't missing things19:55
rick_h_abentley: ok r=me19:55
=== rick_h_ changed the topic of #launchpad-dev to: http://dev.launchpad.net/ | On call reviewer: - | Firefighting: - | Critical bugs: 4.0*10^2
lifelesso/20:08
jelmer_g'morning lifeless20:08
abentleyrick_h_: I think I've got an improvement on the JS_YUI rule: http://pastebin.ubuntu.com/1172484/20:24
abentleylifeless: Hi.  Can you help me with the DB patch for indexing Specification.information_type ?20:27
lifelessabentley: sure thing, how can I help?20:37
abentleylifeless: First thing, I didn't test it on qastaging.  Is that essential?20:37
lifelessthe risk of not testing it is that it triggers poor queries for the table20:38
lifelesswe wouldn't expect a hot patch to fail to apply (as long as its not adding uniqueness that is)20:38
abentleylifeless: Since this column is not used anywhere, I don't think there's a risk of that.20:39
lifelessabentley: its a single column index?20:39
abentleylifeless: Yes.20:39
lifelessI agree.20:40
abentleylifeless: It is r15850.  I can put up a deploy request.20:41
lifelesshot patches are still done by stub20:41
lifelessso the best thing is to email him and ask for it to be applied20:42
abentleylifeless: it says TA does them here: https://wiki.canonical.com/Launchpad/PolicyandProcess/ProductionChange20:42
lifelessI can if it's urgent, but the production environment right now is in a great deal of flux20:43
=== Guest4554 is now known as cr3
lifelesswe're running on temporary servers, have just migrated off of slony etc.20:43
=== cr3 is now known as Guest86189
lifelessI'd rather avoid fragmenting the state about where we are at by applying it myself, until we're back to normal.20:44
abentleylifeless: Okay, just wanted you to know.  If the info's incorrect, we should change it, but it sounds like it's just temporary.20:44
lifelessGetting stuart to do it will add ~8 hours delay - he's asleep at the moment.20:44
lifelessIt is,.20:45
lifelessabentley: so, you'll email stub? Or would you like me to?20:50
abentleylifeless: I've emailed him.  Thanks.20:50
lifelessCool, de nada.20:50
lifelesshttp://lipka.github.com/piecon21:57
wgrantlifeless: Can we convince ops to do hot patches now that slony's gone, or are we still blocking on them not have to transform them to CONCURRENTLY manually?23:24
lifelesswgrant: its a good question, I was considering this earlier.23:25
lifelessThere were two complexities - per-node + concurrently transform.23:25
lifelessWe've halved that.23:25
wgrantRight23:26
lifelessI would like to switch us to lazr-postgresql's patch applier now.23:26
lifelessWhich understands this more or less.23:26
lifelessSo it wouldn't need special handling.23:26
lifelessThat would make the ops discussion real easy.23:26
wgrantops certainly seem to be a lot more comfortable with manual stuff like grants now that it only has to be done on a single node23:26
lifelessjust needs it glued into the FDT scripts.23:27

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