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

StevenKwgrant: Can you link me that duplicate_of json URL so I can see that the right stuff is still redacted on qas?00:26
wallyworld_StevenK: it's a holiday in victoria today afaik01:00
StevenKwallyworld_: It is, but he was talking earlier. :-)01:01
wallyworld_of course :-)01:01
wgrant$ grep duplicate_of.*json /home/wgrant/irclogs/Freenode/#launchpad-dev.log | head -n 101:05
wgrant15:53 < wgrant> Grab https://bugs.qastaging.launchpad.net/api/devel/bugs/718213/duplicate_of?ws.accept=application/json as anonymous01:05
_mup_Bug #718213: Can't access due to content. <Internet Archive - Tech Support:New> < https://launchpad.net/bugs/718213 >01:05
wgrantStevenK: ^^01:05
StevenKAh ha!01:05
StevenKwgrant: I think 1234 is no longer private ...01:06
wgrantThat can be easily fixed.01:06
StevenKBut no redacted in the JSON. :-(01:08
wgrantNot if you can see the bug, no.01:08
StevenKwget should be anonymous01:09
wgranthttps://api.qastaging.launchpad.net/devel/bugs/718213/duplicate_of?ws.accept=application/json looks thoroughly redacted to me.01:10
_mup_Bug #718213: Can't access due to content. <Internet Archive - Tech Support:New> < https://launchpad.net/bugs/718213 >01:10
* StevenK suspects caching01:10
StevenKwgrant: Okay, if it looks nothing is leaking, I'll mark the bug as qa-ok.01:11
wgrantSounds reasonable.01:11
StevenKBut my JSON here is still non-redacted. :-(01:12
StevenKwallyworld_: You should be fine to put up a NDT in ~ 6 minutes.01:14
wallyworld_ok will do01:14
StevenKJust wait 6 minutes or so first and confirm the deployment report is green01:14
wallyworld_yep, finishing off something first anyway01:16
thumperwallyworld_: who is on holiday in Oz today?01:48
wallyworld_thumper: supposedly wgrant01:48
wallyworld_victoria has a holiday01:49
wallyworld_i think that's all?01:49
thumpersouth australia?01:49
thumpernot perth?01:49
wallyworld_maybe, i'd have to check01:49
thumperwallyworld_: where are you looking?01:50
wallyworld_thumper: vic, act, sa, tas01:50
wallyworld_http://www.publicholidaysaustralia.com.au/01:50
thumperta01:51
wallyworld_np01:51
wallyworld_i ask professor google :-)01:51
thumperEight Hours Day?01:51
thumperreally?01:51
thumperbwahaha01:51
StevenKHow is that funny?01:52
wallyworld_thumper: i can't believe that one either01:52
thumperthe name is funny01:52
wallyworld_stupid if you ask me01:52
* thumper gives StevenK a sense of humour01:52
wallyworld_thumper: has the gtk/qt decision been made? seems gt is the way forward given some of the postings to the mailing list?01:53
wallyworld_qt01:53
thumperit isn't gtk/qt, but nux/qt01:54
thumperand no01:54
wallyworld_ok, thanks01:54
wgrantthumper: Eight Hours Day is only TAS. VIC isn't that insane :)02:03
nigelbwgrant takes holidays?02:12
mwhudsonnot from irc apparently02:25
nigelbheh02:31
* StevenK kicks the qa-tagger03:14
StevenKstaging is running r11434, but the deployment report only shows up to r11432.03:15
StevenKINFO:qa-tagger:Revision 11433 not deployed to LP-staging.03:15
StevenKINFO:qa-tagger:Revision 11433 not deployed to db-stable03:15
StevenKLIES!03:15
* StevenK tries to work out why test_sharingservice breaks with his change.05:14
StevenKwallyworld_: ^ ?05:14
wallyworld_StevenK: what's your change?05:40
StevenKwallyworld_: http://pastebin.ubuntu.com/879931/ -- in the branch that creates APs when a product or a distro is.05:42
wallyworld_StevenK:  looks at at first read. what's the error?05:45
StevenKwallyworld_: The final assert in _test_deletePillarSharee fails with 800 lines of JSON05:47
StevenKIt's expecting USERDATA, but EMBARGOEDSECURITY is there instead.05:48
wallyworld_hmm. not sure. i'll make your change and have a look.05:50
StevenKwallyworld_: You'll need to merge in lp:~stevenk/launchpad/product-distribution-accesspolicy first05:52
wallyworld_ah, yeah. i'm in the middle of a branch. i'll shelve my changes05:53
StevenKwallyworld_: You'll also need to run make schema05:55
wallyworld_ok05:55
wallyworld_StevenK: just doing the merge and mack schema and test_deleteProductShareeAll I get05:58
wallyworld_duplicate key value violates unique constraint "accesspolicy__product__type__key"05:58
wallyworld_i'll have to track that down unless you've seen it before?05:59
wallyworld_ah never mind, i need to add your changes i think05:59
StevenKRight06:00
wallyworld_and i see the json mismatch06:02
StevenKwallyworld_: Good to know it has stumped you too :-)06:12
wallyworld_it's not obvious, look through the code06:12
wallyworld_StevenK: i think i know what it is06:14
wallyworld_the access_polices and information_types lists were previously aligned06:14
wallyworld_in that one was made from the other06:15
StevenKRight06:15
wallyworld_now, access_polices comes from a db query06:15
wallyworld_so this will be wrong06:15
wallyworld_        another_person_data = self._makeShareeData(06:15
wallyworld_            another, information_types[:1])06:15
wallyworld_the test can no longer rely on the first info type being the one to use06:15
wallyworld_make sense?06:16
StevenKYup06:16
StevenKI wonder if information_types = [ap.type for ap in access_policies] will fix it06:16
wallyworld_i may well06:16
wallyworld_it06:16
wallyworld_since the lists would be "aligned" again06:16
StevenKSuccess!06:16
wallyworld_yay06:17
StevenK+3/-9. That's my kind of test fix.06:17
wallyworld_yeah06:17
* StevenK lp-lands this branch, finally06:18
* wallyworld_ unselves06:18
wallyworld_unshelves06:18
StevenKwallyworld_: Thanks for the help06:18
wallyworld_np.06:19
wallyworld_StevenK: there's code in sharePillarInformation() which creates access policies if they don't exist. i guess that can be deleted now too06:23
StevenKwallyworld_: In SharingService itself? No, that's still good for things like PROPRIETARY06:25
wallyworld_makes sense06:26
wgrantStevenK, wallyworld_: that should probably go away06:26
wgrantIt's not yet clear how we'll create PROPRIETARY, but it certainly won't be implicit like that.06:27
StevenKRight, I'll drop it06:27
wallyworld_the code today only provides proprietary as an option if the project is commercial06:27
wallyworld_on the +sharing view i mean06:27
wallyworld_in the sharing picker06:27
wgrantEven so.06:27
wallyworld_sure, i wasn't saying it should be implicit, just reiterating what's there now06:28
wgrantWe'll see how sinzui's entitlement stuff ends up.06:28
wgrantAnd then work out HTF to do this.06:28
wallyworld_yep06:28
StevenKSo, dump it in this branch, or leave it for now?06:28
wgrantKill, crush, destroy.06:29
StevenKWhich may well end up creating more test failures.06:30
wgrantTrue, if it deals with proprietary.06:30
wgrantSo perhaps leave it.06:30
wgrantIf it causes failures.06:30
StevenKI don't know if it will or not06:30
StevenKI was willing to push it out and toss it at ec2 and see what happens06:31
adeuringgood morning08:52
=== adeuring changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Firefighting: - | Critical bugtasks: 4*10
StevenKadeuring: Did you enjoy your OCR duties over the weekend? :-)09:22
adeuringStevenK: ;)09:23
=== almaisan-away is now known as al-maisan
=== matsubara-afk is now known as matsubara
=== al-maisan is now known as almaisan-away
=== benji changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: benji | Firefighting: - | Critical bugtasks: 4*10
StevenKAhh, DST, you heartless bitch.12:07
czajkowskiand hello there to you too StevenK12:07
StevenKHaha12:07
deryckadeuring, abentley -- I completely forgot my audio troubles.13:30
deryckadeuring, abentley -- I do however have everything else working :)13:31
abentleyderyck: That's good.13:31
abentleyderyck: Maybe the conference system?13:31
deryckabentley, yeah, let's do that.13:31
adeuringderyck: sounds good. I got a somewhat enigmatic error when I tried to upgrade to precise...13:31
deryckflacoste, can orange use your conference code for a conference call?13:33
flacostederyck: sure, be my guest13:33
deryckflacoste, audio input not working from my upgrade yet.13:33
deryckflacoste, and thanks!13:33
flacostederyck: did you report it?13:33
deryckabentley, adeuring -- use flacoste's conf number.13:33
deryckflacoste, I did not.  But I will definitely.13:33
adeuringderyck: ok13:33
flacostederyck: asap is best if you want to have sound in precise :-)13:33
deryckflacoste, ok :)  I had other issues with lp and forgot about my audio troubles actually.13:34
adeuringabentley: let's use mumble13:51
abentleyadeuring: okay.13:51
abentleyadeuring: lp:~abentley/lazr.jobrunner/run-via-celery13:54
=== almaisan-away is now known as al-maisan
abentleyadeuring: I think we should start using a wiki page to coordinate.  Cool?14:29
adeuringabentley: sounds good14:29
abentleyderyck, adeuring: I've posted my current notes to a wiki page: https://dev.launchpad.net/CeleryJobRunner15:23
deryckabentley, nice, thanks15:24
deryckadeuring, abentley -- I'm going offline for lunch to run errands here shortly.  But will be back after my lunch.15:29
deryckadeuring, abentley -- and I have a working headset now :)15:29
abentleyderyck: excellent!15:30
adeuringabentley: cool15:34
abentleyadeuring: I forgot to talk about resources with you, but it seems we should stick to 2 worker processes, i.e. one per lane.15:34
adeuringabentley: ok15:35
=== al-maisan is now known as almaisan-away
jcsackettsinzui: do you know if wallyworld_ had to do anything special to get his services work running on launchpad.dev? it's failing on post, but i don't see anything in any of his emails/docs.16:39
=== salgado is now known as salgado-lunch
sinzuijcsackett, We had discussed a feature flag, but decided it was not needed now16:43
jcsackettok, so i may be encountering a bug.16:49
jcsacketti'll investigate--it's blocking creating sample data. i can always use the factory if i don't find a solution soon.16:49
jcsackettsinzui ^16:50
sinzui:(16:50
=== almaisan-away is now known as al-maisan
=== al-maisan is now known as almaisan-away
=== beuno is now known as beuno-lunch
=== beuno-lunch is now known as beuno
timrcWhat needs to happen to subscribe a private team to a code branch? Do I need to be a member of that team?17:55
sinzuibenji, do you have time to review https://code.launchpad.net/~sinzui/launchpad/entitlement-2/+merge/9707418:13
benjisinzui: sure18:13
sinzuibenji, one moment. I for got the dependent branch18:15
* sinzui makes diff smaller18:15
sinzuibenji, https://code.launchpad.net/~sinzui/launchpad/entitlement-2/+merge/97078 will show a smaller diff18:17
benjisinzui: ok18:17
czajkowskiIs a package in a persons  ppa a valid dependency for a package being daily-built by launchpad?18:20
sinzuiczajkowski, yes, but that relationship is managed via a different mechanism.18:21
sinzuiczajkowski, The owner of the PPA can specify that the PPS depends on another using +edit-dependencies18:22
czajkowskiahh18:22
czajkowskisinzui: thank you18:23
sinzuiczajkowski, recipes just create a source package from a branch, after that, the PPA rules that you are building into come into play...18:23
sinzuiif two years are using the same recipe to build a branch, one might fail because they are building into different PPAs18:24
czajkowskiok think I'll be able to answer the question now18:24
czajkowskisinzui: any advice when people keep changing the status of a bug after you've already changed it once and left a comment and they keep reopening it18:32
sinzuiczajkowski, I threated suspension.18:37
sinzuiczajkowski, is this bug 945503 that we are talking about18:38
_mup_Bug #945503: gcc-4.7 branch imports fails (timeouts) <Linaro GCC:Fix Released> <Launchpad itself:New> < https://launchpad.net/bugs/945503 >18:38
czajkowskiyes it's rally annoying the way the person keeps changing it after I went to find out the info from you andothers18:41
czajkowski:/18:41
czajkowskiand it's a co-worker as well18:42
sinzuiczajkowski, doko is an canonical employee. I deleted the Lp from the bug18:43
czajkowskisinzui: ahh didnt know I could do that18:44
czajkowskithanks18:44
sinzuiczajkowski, you can delete an affects line for your projects if there will still be another effects line in the table.18:45
sinzuiI do not think there is a bug in the code in either projects for that bug. The bug is being misused18:45
czajkowskinods18:46
benjisinzui: I'm done with https://code.launchpad.net/~sinzui/launchpad/entitlement-2/+merge/9707818:48
sinzuithank you benji18:49
benjimy pleasure18:49
lifelessflacoste: I'm crook today18:52
deryckyay!  I survived the small town equivalent of the DMV!18:52
sinzuideryck, Did you notice that all the pictures/frames on the wall were crooked?19:01
sinzuideryck, They want to keep you off balance so that you will sign away your soul.19:01
salgadobenji, hi there.  if you have a couple minutes, I have a trivial branch up for review at https://code.launchpad.net/~salgado/launchpad/do-not-migrate-ubuntu-work-items/+merge/97088 :)19:07
benjisalgado: sure19:07
derycksinzui, ha! No, I didn't notice that. Just that seemed to be clocks that hadn't been rolled forward for DST were actually clocks that never moved.19:18
flacostelifeless: i have a dr appointment now, but i'll be online later this evening to catch up with bigjools, we could talk then otherwise tomorrow is also fine19:18
sinzuideryck, indeed19:19
benjisalgado: your branch looks good, I had one small suggestion you might like19:23
salgadobenji, oh, sqlvalues()!  I'd completely forgotten about that. will make the change you suggest, thanks!19:24
benjisalgado: cool19:25
salgadobenji, would you mind landing it for me as well? I've just set the commit message19:29
benjisalgado: I would love to, but my VM for LP dev is currently horribly broken. :\19:30
* benji moves fixing that up on his todo list.19:30
salgadobenji, hmm, ok, will see if I find somebody.  thanks for the review, though :)19:31
benjimy pleasure19:31
salgadosinzui, would you mind ec2-landing https://code.launchpad.net/~salgado/launchpad/do-not-migrate-ubuntu-work-items/+merge/97088 for me?19:32
sinzuiI will do that now19:33
salgadothanks sinzui!19:36
abentleylifeless: Do you know anything about the amqp "immediate" flag?  I think it's what I want, but it's not behaving like I'd expect.19:46
sinzuiabentley, Can you advise me about this. I ec2 land does not work for me as of today: https://pastebin.canonical.com/62167/20:13
sinzuimaybe I can run test and land via PQM manulary20:13
sinzuimanually20:14
benjisinzui: that looks somewhat like a failure that bit me because I wasn't running on Precise20:14
sinzuibenji, I have been running precise for 3 months20:15
benjisinzui: then you deserve not to have this problem ;P20:15
abentleysinzui: It looks like the wrong kind of config object is being passed to SMTPConnection(); it now expect a config stack.  I'll look into why that's happening.20:23
sinzuiabentley, I saw some bzr updates. do I need to get more maybe?20:24
* sinzui runs update to see20:24
abentleysinzui: hmm, maybe.20:24
abentleysinzui: potentially a new bzr is now available on remote instances?20:25
sinzuibugger I see new bzr and bzrlib, but I cannot install them20:25
* sinzui forces them to install20:27
lifelessflacoste: I've taken sick leave for today, lets catch up when I'm back on deck20:33
abentleysinzui: Here is an untested patch that may fix you: https://pastebin.canonical.com/62168/20:33
abentleysinzui: (It's for lp-dev-utils)20:34
lifelessabentley: what do you want to achieve?20:34
sinzuiabentley, thank you very much20:34
lifelessabentley: (as in why are you using immediate?)20:34
abentleylifeless: I want to have two queues, and use one queue as an overflow when the other cannot consume tasks.20:35
abentleylifeless: i.e. tasks go to the slow queue unless it's full, in which case they go to the fast queue.20:35
lifelessthe typical pattern for that in amqp is a topic exchange with different binds20:36
abentleylifeless: "full" meaning all worker processes are occupied.20:36
lifelessmm20:36
lifelessactually, I think you're probably over specifying the behaviour20:36
lifelessa key thing with message systems is that you don't - and shouldn't - know whats on the other end20:37
lifelessabentley: what problem are you trying to solve?20:37
abentleylifeless: I want to implement a fast lane and a slow lane, so that fast tasks complete with low latency and slow tasks complete eventually.20:37
lifelessabentley: is the work queue itself stored in the DB still, or in rabbit ?20:38
abentleylifeless: the job details are stored in the database, the jobs are dispatched, by id, using rabbit.20:39
lifelessabentley: if it is, then I'd suggest just using either a topic exchange, or two exchanges; have everything submitted for fast initially and the timeout mechanism resubmits to the other (topic|exchange)20:39
lifelessprobably two exchanges makes the most sense here I suspect, as you may need topics to route to consumers on different machines20:40
abentleylifeless: At this point, the plan is to use the same machine.20:40
lifelessabentley: e.g. one exchange 'jobs-slow' one 'jobs-fast'20:40
lifelessabentley: The big picture vision should permit scaling to N machines, even if the first iteration won't, so selecting something with a decent growth path is relevant.20:41
lifelessbind all your slow works to jobs-slow, all your fast workers to jobs-fast20:41
abentleylifeless: trying fast first means you have to timeout slow jobs every time.  Trying slow first means you only have to timeout slow jobs if you get a slow job while another slow job is running.20:41
lifelessabentley: if you know it is slow, queue it to jobs-slow20:42
abentleylifeless: I don't know it is slow and I would prefer to operate with zero knowledge.20:42
lifelessI think then that this is a case of square peg, round hole. Your description now sounds more like 'I want N homogeneous workers and only M of them are allowed to run past the timeout at any one point in time'20:43
lifelessthis is quite different to checking whether a slow queue is in use, because you might have your workers disconnected, which in your described model does not mean 'these things are fast'20:44
abentleylifeless: That is a reasonable summary.  I'd add that if a task does time out, it is only rescheduled such that it is permitted to run past the timeout next time it runs.20:45
lifelessah, good point20:45
lifelessI really need to crawl back into bed and try and shake this illness20:45
lifelessuhm20:45
abentleylifeless: Sure.  I didn't realize you were sick when I asked.20:46
lifelesswhat will the timeout be?20:46
lifelesslike20:46
lifelessif its 60 seconds20:46
lifelessor even 5 minutes20:46
abentleylifeless: it looks like 3 minutes.20:46
lifelessif we have a reasonable number of workers, and most jobs are fast, then queuing to slow first becomes an optimisation rather than a necessity20:46
abentleylifeless: 3 minutes lets 99% of BranchScanJobs and MergeProposalJobs complete without timing out.20:46
lifelessso20:47
lifelessmy suggestion is to queue to fast first, and on timeout queue to slow, and revisit queueing-slow-first if the timeout setting needed to have 99% past-first-time grows unacceptably in the future20:47
abentleylifeless: Per Friday's discussion, we want to avoid using more than 2 cores on ackee.20:47
lifelessabentley: why is that ?20:47
lifeless(I only saw a minute or so of chatter)20:48
abentleylifeless: https://pastebin.canonical.com/62113/20:48
lifelessah20:49
lifelessso jjo missed that you are not adding new work20:49
lifelessyou are migrating work20:49
lifelessthe question then is 'how much work on ackee is from "jobs"' not 'how much spare capacity does it have'20:49
abentleylifeless: We are migrating work and adding work.20:50
lifeless(and loganberry - we have two boxes servicing our jobs)20:50
lifelessabentley: what work is being added ?20:50
abentleylifeless: The added work is the slow lane.20:50
abentleylifeless: right now, we simply timeout at 5 minutes.20:50
lifelessabentley: that is 1% of the total by frequency, and you have an intentional concurrency cap on it20:50
lifelessabentley: so even if its huge, we can cap that at one core initially20:51
lifelessabentley: also jjo was concisdering ackee to have 4 cores, not the 8 that we effectively get20:51
lifelessabentley: so, I think you're completely safe allocating 4 cores to the new runner, migrating across and reevaluating20:52
lifelessabentley: a 1% increase in the fast work won't matter from this perspective, and the slow lane you can cap at one worker initially as a safety net20:53
lifelessabentley: how does that sound? Does it make requeuing less urgent in your opinion?20:53
abentleylifeless: IOW, giving everything a long timeout as we were planning to do with the slow lane?20:54
abentleylifeless: Actually, I don't understand.20:55
abentleylifeless: Do you mean just having a slow lane?20:55
lifelessI mean:20:56
lifelessallocate 3 workers to the fast lane, with a 3 minute timeout20:56
lifeless1 worker to the slow lane20:56
lifelessqueue to the fast lane initially, and on timeout requeue to the slow lane20:56
abentleylifeless: How do we implent fast lane/slow lane without requeueing?20:56
lifelessonce we migrate across the existing jobs, reevaluate and possibly give the slow lane another core, a nd the fast lane another 220:57
abentleylifeless: I think this would be an improvement over status quo.20:58
lifelessyou were saying that the optimisation of queueing to slow first was needed due to a resource constraint on ackee; I believe the resources are substantially larger, once you consider: twice the number of effective cores and that the only *new* work is (fix cores of slow lanes + 1% of fast lane jobs timing out at 3 minutes)20:59
lifelessSo I'm suggesting that queuing to slow first is future work we may not need21:00
abentleylifeless: they seem to be similar effort, and slow first appears to give better behaviour.21:02
=== benji changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Firefighting: - | Critical bugtasks: 4*10
lifelessslow first depends on interrogating the status of the workers21:02
lifelessand would still require requeing when slow is saturated21:03
lifelessso AFAICT its purely additional development, and will have more corner cases.21:03
abentleylifeless: if the immediate flag worked, RabbitMQ would handle determining whether the message could be consumed immediately.21:04
lifelessthis is an example of 'more corner cases'21:04
lifelessthe immediate flag should return the message to you if there is no consumer available21:05
lifelessok, I really have to crash; I really think queuing fast first is a better use of development time today - its a simpler system, doesn't have issues when dealing with upgrades and migrations, and can be transparently enhanced to do slow-first in the future if needed21:06
lifelesswe have way to many frills in LP where we have complexity that doesn't justify itself, this *really* sounds like a case of that to me.21:07
lifelessso, I'm going to vamoose; please discuss this further with deryck / abel, or I'll be on deck in a couple days I hope.21:08
abentleylifeless: sure.21:10
cr3is there a different meaning between methods that start with search, like searchTasks, and those that start with find, like findPerson?21:29
salgadocr3, nope, this is just because (AFAIK) there's never been a naming standard for search method names21:32
=== matsubara is now known as matsubara-afk
abentleysinzui: did that patch work?21:41
sinzuiabentley, yes it did21:58
abentleysinzui: great.  I'll land a properly-generalized fix tomorrow.21:58
bigjoolsmorning23:00
StevenKlifeless: O HAI23:56

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