/srv/irclogs.ubuntu.com/2011/06/08/#launchpad-dev.txt

sinzuiwallyworld: wgrant, I am back00:12
* wallyworld opens mumble00:12
lifelesswin - 1567  OOPS-1983AS138  Bug:EntryResource00:13
lifelesswgrant: guess what00:19
wgrantlifeless: What?00:19
lifeless http://pastebin.com/ZpWvaAgr00:20
wgrantlifeless: Heh. Yay00:20
lifelessthats why list() was around official bug tags before00:20
lifelessnot because it wasn't a list00:21
lifelesscan you suggeset any improvements ?00:21
wgrantlifeless: Not really :/00:22
lifelessare we coming out of rc now ?00:22
wgrantWe can't QA on prod any more. But I guess so.00:23
lifelessprod ?00:23
wgrantWell, prod worked well as a QA environment yesterday... ahem.00:23
lifeless*blink*00:23
wgrantlifeless: It found a bug that would have really screwed us over on Thursday.00:24
wgrantBecause we wouldn't have been able to roll back.00:24
lifelessright00:24
lifelessbut we don't have a branch with that rolled back and without db changes00:25
wgrantNo.00:25
lifelessand we aren't aware of any damage in rev 1316800:25
lifelessthat we haven't already agreed to00:25
wgrantCorrect.00:26
lifelessso, unless we have some more testing we want to do00:26
lifelesswe should un-rc00:26
wgrantIndeed.00:26
wgrantBut we said that yesterday too.00:26
wgrantAnd then the world melted.00:26
lifelessyes00:26
lifelessunknown unknowns, they suck.00:26
lifelessstill00:27
lifelessI've very glad I have been conservative about moving the freeze time closer to the downtime00:27
wgrantYes...00:37
wgrantOnce we have a faster test suite and no stupid feature deadlines, we can improve.00:38
LPCIBotProject windmill-db-devel build #371: STILL FAILING in 1 hr 8 min: https://lpci.wedontsleep.org/job/windmill-db-devel/371/00:46
lifelessallenap: are you still trying to get rabbit stable ?00:50
wgrantlifeless: I don't think so.00:52
wgrantStevenK might know.00:52
StevenKHe is not, no.00:52
=== wgrant changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs:212 - 0:[######=_]:256
=== StevenK changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: StevenK | Critical bugs:212 - 0:[######=_]:256
StevenKsinzui: I've picked bug 307620 off that list01:59
_mup_Bug #307620: Confusing message "There is a no package named 'xserver-xorg' in Debian" when filing a bug <confusing-ui> <filebug-package> <lp-bugs> <lp-soyuz> <trivial> <Launchpad itself:Triaged> < https://launchpad.net/bugs/307620 >01:59
abentleylifeless: ah.  Hysterical raisins.01:59
StevenKIt's so lightly tested it's scary01:59
wgrantStevenK: How do you propose to fix that?02:01
wgrantlifeless, abentley: Do we know why PQM is silent about that?02:02
StevenKwgrant: By doing what sinzui suggested in comment 1802:02
abentleywgrant: I do not.02:02
wgrantStevenK: Ah, heh.02:02
StevenKwgrant: You think that's a good idea or a bad one?02:02
wgrantStevenK: Mmm. We will have a proper solution to this soon.02:02
wgrantStevenK: Ensemble needs it.02:02
wgrant(hi lifeless)02:03
wgrantStevenK: https://code.launchpad.net/~wgrant/launchpad/fix-sprite-rebuild-rules/+merge/6379102:03
StevenKBut Ensemble is only concerned about SPNs02:03
wgrantStevenK: It's a similar issue.02:04
wgrantBut true.02:04
StevenKwgrant: r=me, awesome work02:04
wgrantThankyou sir.02:04
LPCIBotProject windmill-devel build #179: STILL FAILING in 1 hr 9 min: https://lpci.wedontsleep.org/job/windmill-devel/179/02:07
wgrantHmm. The OOPSes are creeping back up.02:10
lifelesswgrant: it blows an exception through to cron02:10
lifelesscomment 18 ?02:10
wgrantThe Internet hasn't ended yet?02:25
wgrantWhat with World IPv6 Day and all that.02:25
StevenKDoesn't seem to have02:25
wgrantTomboy needs bzr integration.02:27
LPCIBotProject windmill-devel build #180: STILL FAILING in 44 min: https://lpci.wedontsleep.org/job/windmill-devel/180/02:51
StevenKCan I set a distribution that I've just created to use LP as a bug tracker?02:53
wgrantStevenK: As a mortal? Probably not.02:54
wgrantAlthough +edit may work...02:55
wgrantSome distro stuff is only accessible to admins.02:55
wgrantYeah, it's on +edit still.02:55
StevenKwgrant: In a test case02:55
wgrantStevenK: Set official_malone = True02:56
=== Ursula is now known as Ursinha
wgrantGrar sampledata.02:58
StevenKwgrant: Bah, setting offical_malone to True gives me the same message03:10
wgrantStevenK: Which message?03:10
StevenKwgrant: u"Distribution-774925 doesn't use Launchpad as its bug tracker."03:10
wgrantgrep may help.03:10
StevenKwgrant: Spelling correctly would also help. :-(03:15
wgrantStevenK: Heh.03:25
LPCIBotProject windmill-devel build #181: STILL FAILING in 44 min: https://lpci.wedontsleep.org/job/windmill-devel/181/03:35
jtvGood day gentlebeings.03:43
=== jtv changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: StevenK, jtv | Critical bugs:212 - 0:[######=_]:256
wgrantGreeting jtv.03:44
jtvgreeting back03:44
=== lifeless changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: StevenK, jtv | Critical bugs:214 - 0:[######=_]:256
lifeless(yes, its going the wrong way)03:55
wgrantThe graphs are quite depressing.03:56
lifelessjml: I would like to catch up with you this week; my tonight is doable for me if it works for you.04:18
* wgrant stabs SQLObject04:35
lifelessoh04:39
=== almaisan-away is now known as al-maisan
wgrantOh?04:39
lifelesswhat provoked the stabbing ?04:39
wgrantThe old cls.select thingy doesn't seem to behave just like Storm, particularly around using SQL(..., params=...) in orderby.04:40
lifelessthats a SQLObject result set, it is a little different04:41
wgrantYeah.04:41
wgrantI'm notting stabbing SQLObject for being buggy and inconsistent -- merely for existing at all.04:42
wgrantEr.04:42
wgrants/notting/not/04:42
lifelesspoolie: in canonical wikis 'Bug:1234' will link to lp automatically04:58
pooliethat's good to know04:59
pooliei guess you realized my edit was fixing a typo, not just inserting the pad bit05:00
wgrantChanging person vocab sorting is fuuuuun.05:03
StevenKwgrant: The type of fun that is spelt with no n, and an extra c, k, e and d?05:03
wgrantSomething like that.05:03
StevenKLike Help in CS is spelt with no p and an extra l05:04
StevenKjtv: Are you free to review one of my branches?05:08
jtvStevenK: yes, just finished the last one.05:08
jtvStevenK:  the also-affects one?05:09
StevenKjtv: Yes.05:10
StevenKjtv: I'm in the middle of allenap's MP.05:14
StevenKrvb's MP looks okay to me, but I'm comfortable about reviewing a JS-only branch05:16
StevenKEr. Not comfortable05:16
* StevenK goes to inject tea05:16
lifelesspoolie: I didn't realise that,no.05:18
LPCIBotProject windmill-devel build #182: STILL FAILING in 1 hr 6 min: https://lpci.wedontsleep.org/job/windmill-devel/182/05:49
wgrantTests normally run as the 'launchpad' DB user, right?05:59
StevenKYes, I think so.06:04
StevenKjtv: No news is good news?06:04
jtvStevenK: sorry for the delays — lots of distractions so threw in a spot of lunch as well06:33
lifelessjtv: do you know anything about the storage-and-performance of arrays vs related tables in pg ?06:40
lifelessjtv: I'm wondering if we should make subscriptions into an array (or duplicate them into one) on (perhaps just) private bugs06:41
lifelessjtv: specifically, every time we access a private bug, we want to check the condition (private is false or has-subscription)06:42
jtvlifeless: I know very little except what's obvious.  This sounds like a good idea; I've been quietly wishing for arrays in several places but not daring to speak out.06:42
jtvHowever front-end library support is not a given.06:43
jtvGeneralized array parsing is an annoying little job that I decided not to tackle in libpqxx because it was coming in libpq, and AFAIK it never came.06:43
lifelessah06:43
lifelessso I believe we do array processing in some (limited) places already06:43
jtvNice06:44
lifelessstorm etc support is a good question though06:44
lifelessthis may be done via 'raw' sql today.06:44
jtvI did crib a bit of Storm support from somewhere and put it in the codebase IIRC… let me dig it up06:44
lifelessno need, I'm not hacking on this just now06:44
jtvok06:44
lifelesswas curious about the performance implications more than higher level stuff06:45
jtvI think you can index and search arrays for specific elements.06:45
jtvBut duplicating into arrays as you say would give us the best of both, at the cost of writing a bit more data.06:46
lifelesswe're massively read heavy06:46
jtvThere you go.06:46
lifelessother than crazy things like bug heat, I've no issue with us writing more to read more efficiently06:46
lifelesswell06:46
lifelessonce we get the DB server disk upgrades done.06:46
jtvAlthough (advocate o/t devil) we've also got scaling headroom for reads that we don't have for writes06:46
lifelessuntil then we need to be juidicious about it ;)06:46
LPCIBotProject windmill-db-devel build #372: STILL FAILING in 1 hr 17 min: https://lpci.wedontsleep.org/job/windmill-db-devel/372/06:49
* lifeless makes a 800K row temp table06:50
lifelessoh -wow-06:51
lifelesswe have a slightly brain dead privacy check for assignee06:51
wgrantThe new one?06:51
lifelessyes06:51
pooliewell, https://code.launchpad.net/~mbp/launchpad/790902-mail-librarian/+merge/63816 makes it a uuid06:52
lifelessgoes from bugtask -> bug -> bugtask.assignee -> teamparticipation06:52
pooliethe lp typo test to make the initial patch seems fairly consistent at about 45m for me06:52
lifelessthis is accurate but fiee.06:52
lifelessso, denorming 3 fields onto bugtask and drop the assignee visibility -> 2 second table scan query.06:56
lifelessstill an OOM slower than bugsummary06:57
lifelesspoolie: is that friction, familiarity, not knowing where to find things?06:58
poolieStevenK, jtv, could you have a look at https://code.launchpad.net/~mbp/launchpad/790902-mail-librarian/+merge/63816 for me please?06:58
Peng/1/106:58
jtvpoolie: I'm just reviewing StevenK but shouldn't take long, so I can take it after that06:58
Pengerk, damn. I hadn't done that all day!06:58
poolieabout 5m getting the environment up to date, eg updating lp-sourcedeps, make schema etc06:58
poolieah, recently i've had a run of things where there is redundant code that makes the fix more complicated06:59
poolielike the "decoy" mail sending code in the ppa notification stuff06:59
=== al-maisan is now known as almaisan-away
poolieperhaps none of them are truly typo-level fixes07:03
jtvStevenK: review done — I'm recommending some changes though07:40
jtvpoolie: looking at yours now… why the trans.begin() in incoming.py?07:43
StevenKjtv: structured() is smart enough to not escape things that are themselves an instance of structured() -- since I wrote that bit07:44
pooliejtv: rather than the other07:44
jtvStevenK: ahhh!  But then where does that displayname get escaped?07:44
poolieit seemed to me only incoming.py really has an opinion about when things hould be committed07:44
StevenKjtv: So, there are two displayname, both are inside a structured() of some form07:44
wgrantStevenK: You fail.07:46
wgrant20+                binary_tracking = structured(07:46
wgrant21+                    ' Launchpad does not track binary package names '07:46
wgrant22+                    'in %s.' % distribution.displayname)07:46
wgrants/ %/,/07:46
jtvpoolie: I've bumped my head into this myself… turns out a transaction is started automatically whenever we access the database while not in a transaction and not in autocommit mode.  So for the general case (and I don't know whether that includes this of course) all that begin() really does for us is increase the length of the running transaction.07:47
jtvwgrant: see my review and our ongoing discussion.07:47
StevenKwgrant: Sigh, so I do.07:47
jtvpoolie: I may be misunderstanding you though because I'm trying to carry two conversations at once.  :)07:48
poolieok07:48
pooliei didn't add that line, i just moved it07:48
poolieyour logic makes sense07:49
jtvThat's a fine answer AFAIC.07:49
pooliedoes "start if not already started" actually take much time?07:49
jtvIf you don't feel comfortable changing it, leaving it as-is is valid.07:49
jtvNo, that's really really quick.07:49
pooliethat's good to know for the future07:49
poolielater i may try to clean up incoming.py more07:49
jtvGood call keeping that separate.07:49
StevenKjtv: I have another one, if you're free.08:05
jtvStevenK: that wasn't enough to put you off?  :)  Sure, I'm almost done with Martin's.08:06
StevenKjtv: This is one is 1: Much smaller, and 2: Needs more thought, but this is quick solution to the problem.08:07
jtvStevenK: being talked at from 5 directions; will be with you shortly.08:08
jtvpoolie: you're done08:10
jtvStevenK: wait… the vocab currently only returns descriptions, and you're changing it not to return descriptions?08:12
StevenKjtv: How useful do you think it is for people to pick out a source or binary package purely on their description only?08:14
StevenKIt's utterly utterly pointless08:14
jtvI don't think I've ever knowingly read a package description.  What's in them, in practice?08:14
jtv(Just out of interest)08:15
StevenKlibc6's description is: Embedded GNU C Library: Shared libraries08:15
lifelesshmm, 150ms stats portlets appear possible08:15
wgrantStevenK: That's the summar.08:15
wgrantStevenK: Not the description.08:15
StevenKOh, in which case the picker will show "Contains the standard libraries that are used by nearly all programs on"08:16
wgrantRight.08:16
StevenKjtv: ^08:16
jtvWow, that _does_ sound very helpful.08:16
wgrantAnd that's one of the most useful descriptions.08:16
jtv(irony there)08:16
wgrant This package contains debugging files used to investigate problems with08:17
wgrantThat's another example.08:17
jtvStevenK: I can see how you'd want to think about the proper solution some more… is it still worth setting a title though, or testing for it?08:17
jtvYou can just leave out the third arg to SimpleTerm()08:17
jtv…and cut it out of the doctest.08:18
jtvIf you're going to replace it very soon with something more sensible, it makes sense to keep it.  Or maybe something in the picker requires it?  Otherwise, I'd just drop it.08:18
StevenKjtv: The picker does not seem to use the term, only the title, so we need to return it twice08:19
lifelesshmm, where is the stubster08:20
jtvI see08:20
jtvStevenK: approved08:23
StevenKjtv: Thanks!08:25
jtvrvba: I see you have a review waiting.  I may get to that soon.08:27
jtv(There's one more in the queue before you)08:27
rvbajtv: great, thanks (it's a js fix).08:27
=== StevenK changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: jtv | Critical bugs:214 - 0:[######=_]:256
jtvrvba: that's a nasty little bug you're tackling there.  As they say, only two things are hard in software engineering: naming things and cache invalidation.08:46
jtvAnd off-by-one errors.08:46
adeuringgood morning08:48
jtvhi adeuring!08:51
jtvneed refreshment, brb08:51
=== jtv is now known as jtv-afk
pooliethanks jtv08:52
poolieit would be cool if lp did ipv6 day next year08:52
wgrantHahahah08:52
wgrantindeed, but...08:53
pooliein all your spare time :)08:53
wgrantIt's got nothing to do with LP :)08:53
jtv-afkAnd then someone in China pops up and says "here's a version of IP that just uses 64-bit addresses, and we NAT it into a hole in the IPv4 space, and we already talked to the equipment manufacturers" and then all that effort is going to be wasted.  :)08:54
wgrantI think there's like two significant Australian ISPs that provide native v6 :/08:55
pooliei'm all right jack :)08:55
pooliewgrant: meaning it's mostly a canonical-network thing?08:56
wgrantpoolie: Entirely.08:56
wgrantWell. Unless you call the frontends LP.08:56
wgrantWhich I guess you almost could.08:56
lifelesspoolie: I thought we chatted about this on the phone09:00
lifelesspoolie: when I closed that bug09:00
poolieoh about ipv6?09:00
poolieyes, we did09:00
lifelessstub: hola!09:01
stubYo09:01
lifelessstub: I want to add 3 columns to bugsummary :>09:01
stubOh joy :)09:02
lifelesshttps://bugs.launchpad.net/launchpad/+bug/793848/comments/409:02
_mup_Bug #793848: Distribution:+bugtarget-portlet-bugfilters-stats timeouts <dba> <timeout> <Launchpad itself:Triaged> < https://launchpad.net/bugs/793848 >09:02
stublifeless: You are quadrupling the number of rows. Not sure if the distro queries are going to survive with their tag counts.09:03
lifelessstub: https://bugs.launchpad.net/launchpad/+bug/793848/comments/509:04
lifeless:P09:05
_mup_Bug #793848: Distribution:+bugtarget-portlet-bugfilters-stats timeouts <dba> <timeout> <Launchpad itself:Triaged> < https://launchpad.net/bugs/793848 >09:05
lifelessstub: its about 50ms slower on the tag counting case09:05
=== jtv-afk is now known as jtv
stublifeless: Will it be exploded by tags and milestones, or can we add CHECK (has_patch IS NULL != tag IS NULL) etc.09:07
mrevellHello devers09:07
lifelessstub: its more dimensions09:07
lifelessstub: so more cross products09:07
stubRight. So we have to be careful, as every addition could put us over the top with this model09:08
lifelesswe do:09:08
lifeless select count(*) from bugsummary2;09:08
lifeless count09:08
lifeless--------09:08
lifeless 75853309:08
lifeless\dt+ bugsummary2;09:09
lifeless                       List of relations09:09
lifeless  Schema   |    Name     | Type  | Owner | Size  | Description09:09
lifeless-----------+-------------+-------+-------+-------+-------------09:09
lifeless pg_temp_1 | bugsummary2 | table | ro    | 54 MB |09:09
stubDid you check the existing queries for distribution and distroseries use cases?09:09
lifelessdistribution yes, haven't checked distroseries09:09
stubI think we will be ok too, this time....09:09
lifelessI'd expect distribution to be worst, and its 200ms09:09
lifelessstub: we could make the booleans and importance nullable and have two separate summaries - one for use in this query, one for the tags one09:11
lifelessbut I don't think the complexity is worth it - this seems pretty straight forward and the performance (hot) is still extremely shiny09:12
stublifeless: If we took that approach, I'd just stick them in a separate table.09:13
lifelessyeah09:16
lifelessso, whats the right way forward to apply this change09:21
=== almaisan-away is now known as al-maisan
stublifeless: The usual. db patch to add the new columns and extend all the triggers, test on staging...09:23
stublifeless: Probably one for me.09:23
lifelessstub: would you?09:23
stubalthough it will likely be cut & paste work with the existing code as a template.09:24
stubsure09:24
lifelessyah09:24
lifelessI have a test script in that bug, which is an adapted version of the original patch (but no triggers)09:24
lifelessoh btw09:25
lifelessstub: were you aware that copying a template db locks the source ?09:25
lifelessexclusive-locks09:25
lifelessanyhow, I put a spinlock-with-random-backoff into the db layer when I found this some months ago09:25
stubYour template db can't be in use, so not surprising.09:25
lifelessI'm thinking of making a test-run-specific template09:25
stubYou get an error if there are any open connections to the template, or at least you used to.09:26
lifelessso launchpad_ftest_template -> launchpad_ftest_template_$PID -> launchpad_ftest_$PID09:26
lifelessdo you see any problem with such a double-indirection ?09:26
stubThis is to avoid contention I guess? No problem except twice as many databases to clean up on a cancelled run. We should probably automatically do that somehow... might need to maintain shared state in some well known location, such as a dedicated PG database for lp test run metadata.09:27
stublifeless: Is db setup time worth optimizing yet though? Last I checked, teardown and setup was only 10-15 minutes or so of our total test run time.09:28
lifelessstub: parallel testing contention...09:28
lifelessstub: I have no solid figures, but I'd like to be at least theoretically interaction-free.09:29
stubYer, it will be better. Just wondering if there is other low hanging fruit that should be tackled first.09:29
lifelessstub: possibly. Feel free to try parallel testing anytime you like :)09:30
lifelessStevenK: which reminds me, does jenkins parallel test devel nowadays ?09:30
stubThere used to be some backoff time required *anyway*, because it took a short while after you closed your connection before PG had cleaned up the backend and the connection was really dead.09:30
stubI think that is better now under 8.4, where it just blocks until the db is available. Might be possible to pull out the retry code (?)09:31
lifelessdefinitely isn't possible :)09:31
lifelessrunning 8 test threads at once, they all blew up on template copying until I added the random backoff09:32
stubI mean after a separate template per thread.09:32
lifelessoh right09:32
lifelessup09:32
lifelessuhm09:32
stubI guess if it isn't needed, the retry will never happen so no need to pull it out yet.09:32
lifelessif we're using the same helper to copy from l-f-t to l-f-t-$pid and l-f-t-$pid to l-f-$pid then it needs to be in for the first copy09:33
stubright09:33
stubmark had the idea of a background task that created fresh databases for tests to consume, but I never chased it once we saw db teardown/setup was not as significant as we thought.09:34
lifeless*blink*09:34
lifelessthat would create IO and CPU contention09:34
lifelessunless you had less test runners than the machines concurrency could support09:34
lifelessgrr 14492 tests09:35
lifeless14491 passed09:35
stubthis was singlethreaded tests, so building the db would chew io while the test was chewing cpu09:35
lifelesswhats the bet I failed to push09:35
stuband most tests don't need new dbs, so it would be idle a lot of the time anyway.09:35
lifelessyeah09:36
lifelessI wouldn't pursue the idea :)09:36
StevenKlifeless: What do you mean?09:37
lifelessStevenK: there was a jenkins job doing parallel test runs09:37
StevenKThere still is09:38
lifelesswhat branch does it run09:38
StevenKhttp://bazaar.launchpad.net/~lifeless/launchpad/librarian09:39
lifelessStevenK: can we switch that to running stable ?09:39
lifelessand sorry for breaking trunk, I had not pushed :(09:40
StevenKDone09:40
lifelessStevenK: thanks!09:42
stublifeless: Although extending BugSummary will fix counts, I think there will still be problems elsewhere discovering bugs that have been fixed upstream. If people are interested in how many, they are also interested in a set of links. Is this search also problematic? Perhaps being able to flag a bugtask as 'fixed upstream' will make both the counts and search acceptable. And if the counts still are not acceptable, make the triggers much easier.09:59
lifelessstub: I'd be fine with denormalising 'fixed_upstream' onto bugtask10:00
stubgarbo task or checkwatches could do that10:01
lifelessstub: or a trigger could10:01
stubyer.10:01
lifelessstub: I did an experiment with a wider bugtask10:02
pooliethanks for the kind words jtv10:02
lifelessstub: it can get down to 2 seconds if we can drop the join onto bug10:02
stubbut checkwatches is the only thing that updates the relevant rows I think (?), so there might be simplest.10:02
lifelesshttps://bugs.launchpad.net/launchpad/+bug/793848/comments/110:02
_mup_Bug #793848: Distribution:+bugtarget-portlet-bugfilters-stats timeouts <dba> <timeout> <Launchpad itself:Triaged by stub> < https://launchpad.net/bugs/793848 >10:02
jtvpoolie: you know me — you earned them.  :)10:02
lifelessstub: there are 2 cases to fixed upstream, a) bugwatch, b) a product task10:03
lifelessstub: b) is changed by users.10:03
stubk10:05
poolielifeless: so just briefly i'm merging those two mail->librarian things into just one, that uses a uuid10:06
lifelesspoolie: cool, I saw. Looks good.10:07
lifelessstub: comment 3 gets a 2 second query with reflexive-join to find fixed_upstream10:08
lifelessstub: by denormalising duplicateof, latest_patch_uploaded and private onto bugtask10:09
=== al-maisan is now known as almaisan-away
pooliethanks10:09
lifelessstub: but we have to join to bug to get assignee10:09
lifelessstub: so we're still looking at 4.5 seconds minimum10:09
lifelessstub: -> 3.5 seconds too slow10:09
=== almaisan-away is now known as al-maisan
stubUnless we use triggers to mush together bug and bugtask into one flat BugSearch table...10:10
stubmaybe too fat for sanity... but I guess fat for a reason.10:11
lifelessstub: I doubt it would get down to the 100ms that bugsummary does10:11
stubright, but useful for stuff besides counts10:11
lifelessstub: the thing about the portlets is that they want multiple criteria shown at once10:11
stubor is this only a problem with counts and I'm fixing a problem we don't have?10:11
lifelessstub: indeed, and I'm totally happy to have a bugsearch table too, but its a different scenario10:12
lifelessstub: so these counts link to searches10:12
lifelessand bug search is also slow10:12
lifelessbut the one portlet shows 9 different searches summarised10:12
lifelessso an individual search has rather more headroom than the portlet10:13
=== al-maisan is now known as almaisan-away
stubRight, so we will need bugsummary for this sort of things in every case, unless we can make bug search super fast (10x more than we are currently aiming at)10:13
stubOr something similar... we already know BugSummary isn't going to scale to too many more dimensions10:14
stubBut there are a finite number of possibilities that I can't recall of the top of my head.10:14
RawChidHey, from Python I try to load a pot from LP (staging). The code should work and I should have the right permission, nevertheless I get HTTP Error 401: Unauthorized  (Unknown access token). If I paste the URL in my browser I DO get the correct response. Any ideas?10:15
lifelessyour python code hasn't logged in via either oauth or openid10:16
wgrantOr anonymously.10:16
RawChidIt does launchpadlib.login_with()10:22
RawChidHow can I check if it's done right10:22
=== almaisan-away is now known as al-maisan
RawChidlifeless, this is the output: http://pastebin.com/kZ9wr6BL10:25
adeuringjtv: could you please have a look at this MP: https://code.launchpad.net/~adeuring/launchpad/bug-735979/+merge/63832 ?10:45
poolieRawChid: can you paste the code too?10:45
jtvadeuring: ok, but that's the last one for today.  :)10:45
=== jtv changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs:214 - 0:[######=_]:256
adeuringjtv: thanks!10:46
poolieRawChid: one issue is that the url you're printing is on lpnet, but you say you're trying to load from staging10:47
pooliei wonder if you are only authenticated on one of them?10:47
RawChidpoolie, I just doscovered I can load the pot from production without a problem.10:49
RawChidYou're right! I authenticate to staging, but the URL is production. Thanks a lot10:49
poolieyou're very welcome10:49
lifelessadeuring: hi10:52
lifelessadeuring: you know about ++profile++ right ?10:52
adeuringhi lifeless10:52
adeuringlifeless: argh, yeah, right!10:52
adeuringthanks for the reminder10:52
lifelessno probs!10:52
lifelessI was debugging a CPU case the other week10:53
lifelesswith code like:10:53
lifelessfoo = list(resultset)10:53
lifelessfor quux in bar:10:53
lifeless    if quux in foo:10:53
lifeless        ....10:53
lifelessthat triggered O(N^2) storm object comparisons10:53
lifelessand __eq__ on storm objects is -slow-10:53
=== al-maisan is now known as almaisan-away
lifelessshowed up very clearly on qastaging with ++profile++show10:54
jtvadeuring: done10:59
adeuringjtv: thanks!10:59
adeuringjtv: thanks for the reminders of the "usual suspects" for "mysterious delays" :) Though GIL contention for more than a second sounds unlikely... or, well, it could be a kind of accumulated shorter delays11:02
jtvadeuring: you'd be amazed.  I was.11:02
wgrantThe GIL isn't so much of a problem these days.11:03
wgrantThanks to lifeless' ruthless campaign.11:03
jtvHe optimized it in the interpreter?11:03
wgrantHe minimised multithreading.11:04
* adeuring wonders if we could record the time a thread waits for the GIL11:04
jtvwgrant: if you're talking about *in Launchpad*, then see the context: the starting point is "I asked for non-threaded app servers because of the GIL."11:04
jtvadeuring: someone-or-other (I should have bookmarked!) did really extensive research.11:05
jtvThe results were really stunning.11:05
wgrantjtv: Sure, but that means that the GIL is not a major concern for our code any more.11:05
jtvwgrant: see the context.  :)  We were talking about how _now that we have nonthreaded appservers_, we have a better base for evaluating python-side time sinks.11:06
wgrantjtv: Ahhh, I see.11:06
wgrantI'm not actually sure where the context is.11:06
wgrantI guess a review somewhere in backscroll.11:06
wgrantAnyway, sorry.11:06
jtvYes, it's a review.  Hard to follow without that, I know.  :-)11:07
jtvBut since you are aware of the issue, you may want to help me convince abel that there were (are, I guess) serious problems with the GIL in general.  :-)11:07
lifelessjtv: wgrant: note that we're still 2-threaded11:08
lifelessxmlrpc-internal is the second thread11:08
adeuringjtv: well, I know about these problems in general...11:08
wgrantlifeless: Yeah, but I pretend XML-RPC doesn't exit.11:08
wgrant+s11:08
jtvAnnnnd there goes my good mood, thanks.  :-)11:08
lifelessthis is a tolerable compromise11:08
wgrantadeuring: We had 8-second gaps sometimes, and they magically vanished once we went single-threaded.11:08
wgrant:/11:08
jtvadeuring: sorry, just meant to point out the part where it's really ridiculously bad sometimes.11:08
jtvWow, 8 seconds?11:09
wgrantThere were lots of 5-6. But I saw at least a few 8s.11:09
wgrantPossibly it was bad code on both sides, I guess.11:09
poolieis there anyone who specially cares for lazr.restful these days?11:09
wgrantNo.11:09
poolieand could answer questions11:09
pooliehm11:09
lifelesss/specially//11:09
lifelessjtv: the internal xmlrpc calls are (today) relatively low frequency; if we see more than 1-timeout-a-day its not going to be GIL (and thus we get the better analysis environment as you say)11:11
jtvlifeless: yeah I figured you wouldn't have done it if it were a likely source of problems.  :)11:11
LPCIBotProject windmill-devel build #183: STILL FAILING in 1 hr 19 min: https://lpci.wedontsleep.org/job/windmill-devel/183/11:19
poolielifeless: i wonder if it would be worth trying 0mq just within a machine or something11:31
pooliehm11:31
LPCIBotProject parallel-test build #19: STILL FAILING in 1 hr 20 min: https://lpci.wedontsleep.org/job/parallel-test/19/11:32
jtvsuite == series-pocket?11:36
jtv(I always forget this after being out of soyuz for a while)11:36
wgrantjtv: Yes.11:36
bigjoolsjtv: yes11:36
jtvThanks11:37
wgrantstub: Can we turn off notifications for parallel-test?11:37
wgrantEr./11:37
wgrantStevenK: ^^11:37
bigjoolsanyone else who's built an image for ec2 get an email from Amazon saying it's been made private?11:50
bigjoolsthey don't like having our SSH keys in it11:50
wgrantThere are SSH keys in it? :/11:52
bigjoolsyeah, your public key if you built it11:52
bigjoolswhich means you can log into anyone's instance11:52
wgrantOh, right, in authorized_keys?11:52
bigjoolsthey don't like that :)11:52
wgrantYeah, that is less than ideal.11:52
bigjoolsit means if they do this with all our ec2 images then we can't use ec2  any more11:53
bigjoolsso we'd better prod a maintenance dude to fix this asap11:53
wgrantDoes it affect current images too?11:53
wgrantsome bug about SSH keys was fixed a year or so ago.11:53
bigjoolsthey only emailed about one that I built recently-ish but I expect so11:54
wgrant:/11:55
jtvbigjools: what architecture do you want to show for PCJ uploads?11:56
bigjoolsjtv: Source11:57
jtvthx11:57
bigjoolswe're not syncing binaries11:57
LPCIBotProject devel build #786: FAILURE in 5 hr 39 min: https://lpci.wedontsleep.org/job/devel/786/12:14
jtvallenap: this baffles.  I create a PlainPackageCopyJob, and its id is None.12:35
jtvMaybe I still need to add it to the store.12:35
jtvYup, that does it12:38
jtvHow unspeakably frustrating.12:38
=== mrevell is now known as mrevell-lunch
stubSo we could do that automatically if we created a subclass of Storm that added the object to the correct store automatically in its __init__, and used that instead.12:44
jtvSounds good.12:45
jtvoh what is it _now_?  I'm still getting None ids in one place.12:45
stubIts not done automatically so projects like Landscape can do sharding. Or Launchpad either, since we have sharding support even if we are no longer using it.12:45
wgrantjtv: Have you flushed?12:45
jtvNo.  I figured that was implicit when I read the attribute!12:46
wgrantNo.12:46
StevenKEr, so who broke devel? I had two branches fail ec2 with errors in xx-official-bug-tags.txt12:46
wgrantStevenK: lifeless12:46
=== almaisan-away is now known as al-maisan
stubAdding it to the store should flag the id column to be refreshed from the db12:46
wgrantStevenK: Fix is landed already.12:46
stubI thought12:46
jtvThat's what I expected, yes.12:46
jtvOr that it would happen somewhere.12:46
wgrantjtv, stub: I don't think so...12:46
wgrantThat could cause a very early flush.12:47
stubone of these objects is not like the other. Perhaps not everything got added to the store?12:47
jtvwgrant: it could, but if the alternative is merrily reading a meaningless value from the attribute..?12:47
stubwgrant: It delays as late as possible - the id column is set to a magic value, and when you attempt to access a magic value the flush happens.12:47
wgranthttps://storm.canonical.com/Tutorial#References%20and%20subclassing12:48
wgrant   1 >>> ben = store.add(Employee(u"Ben Bill"))12:48
wgrant   212:48
wgrant   3 >>> print "%r, %r, %r" % (ben.id, ben.name, ben.company_id)12:48
wgrant   4 None, u'Ben Bill', None12:48
jtvGrrr12:49
wgrantIf whatever is pending is flushed to the database (implicitly or explicitly), objects will get their ids, and any references are updated as well (before being flushed!).12:49
* stub wonders what he is thinking of12:50
jtvbigjools: will a PackageUpload with a PCJ have a Component?12:50
bigjoolsyes12:51
bigjoolsjtv: it'll be the same as any other source12:51
bigjoolsjtv: with the exception that there's no changes file12:51
jtvI guess we'll have to look up the SPR then.12:51
bigjoolsjtv: so component, section will come from the job metadata12:52
bigjoolsdon't use the SPR12:52
jtvWhen I looked (yesterday I think) the metadata did not contain component and section yet; I think there's something like an addOverride() that you'd need to call first.12:52
bigjoolsjtv: there's an addSourceOverride and getSourceOverride on the PCJ12:52
bigjoolsjtv: when the job creates the PU it will guarantee that an override is present12:53
jtvThat's it.  When I looked, we weren't calling addSourceOverride yet.12:53
bigjoolsyeah it's not landed yet it's in my branch :)12:53
jtvSo I'm testing for the presence of something that's absent.12:53
bigjoolsjtv: if you want you can merge my branch and use it as a pre-req12:53
bigjoolswe can land both at the same time12:54
jtvI suppose I'll want that then.12:54
jtvBTW I'm off db-devel.12:54
bigjoolsjtv: use devel12:54
jtvBit late!12:54
wgrantnot late.12:54
bigjoolseverything you need is in devel12:54
wgrantdevel has all of db-devel.12:54
wgrantExcept for a couple of automerges.12:54
bigjoolsjtv: lp:~julian-edwards/launchpad/copies-must-use-queue-bug-78950212:54
bigjoolsthat branch has one TODO left, which I am landing some pre-req stuff for separately12:55
jtvOK, will have to look further tomorrow.12:55
bigjoolsnamely, letting IDistroSeries.createQueueItem() work without a changesfile12:55
* jtv is away, away!13:02
jtvgood night people13:02
=== danilos changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: danilos | Critical bugs:214 - 0:[######=_]:256
bigjoolsI wish diff was clever enough to show stuff that was indented or moved13:27
=== matsubara-afk is now known as matsubara
danilosbigjools, how about "diff -b" (though it's the opposite of what you are asking about)13:43
bigjoolsyeah13:43
bigjoolskdiff3 does it nicely13:44
bigjoolsnot sure that's in the distro any more though :/13:44
=== Ursula is now known as Ursinha
flacostebigjools: bzr qdiff is your friend14:07
flacostebigjools: install qbzr14:07
deryckMorning, everyone.14:11
bigjoolsflacoste: I already had that installed, had no idea it had improved this much!  Now, can we do the same colouring on the MP diff page? :)14:25
bigjoolsmorning deryck14:25
flacostebigjools: qt plugin for mozilla ;-)14:28
cr3is there a way to use launchpadlib in a cron and handle openid/oauth automatically somehow?14:29
bigjoolsflacoste: I can't tell if you're joking!14:30
flacostelol14:30
flacostei was14:30
flacostecr3: yes, you need to run the script one interactively and save the credentials to a file14:30
flacostecr3: you can ask pitti how he does it for apport-retracer14:31
cr3flacoste: cheers!14:31
* bigjools wonders if the derived distros work on package copy jobs has fixed all the PPA copying timeouts14:57
henningeHey deryck! I am back.15:10
deryckhenninge, ok, coming.15:13
henningederyck: otp15:14
deryckok15:14
bigjoolsdo we have a revno for the release yet?15:22
rvbabigjools: https://dev.launchpad.net/DowntimeDeploymentSchedule15:30
flacostebigjools: we should have, PQM Is open15:32
bigjools\o/15:32
bigjoolsthought it was closed still15:32
flacostebigjools: 13168 is the one15:33
=== flacoste changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | PQM is open for business | 13168 is rolling out at 22:00UTC | On call reviewer: danilos | Critical bugs:214 - 0:[######=_]:256
LPCIBotProject windmill-db-devel build #373: STILL FAILING in 1 hr 6 min: https://lpci.wedontsleep.org/job/windmill-db-devel/373/15:37
=== danilos changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | PQM is open for business | 13168 is rolling out at 22:00UTC | On call reviewer: - | Critical bugs:214 - 0:[######=_]:256
=== al-maisan is now known as almaisan-away
LPCIBotProject parallel-test build #20: STILL FAILING in 1 hr 28 min: https://lpci.wedontsleep.org/job/parallel-test/20/15:50
lifelessman, this is waaay to early to be awake16:26
bigjoolslifeless: !16:29
bigjoolsnobody, ever, has had a better nick than you16:29
sinzuideryck_: Can you review https://code.launchpad.net/~sinzui/launchpad/webkit-yuitest-love-1/+merge/63884 so that we can discuss the future of JS testing16:31
deryck_indeed16:32
deryck_sinzui, looking now....16:32
lifelessbigjools: IRC nicks, you gotta own them :)16:33
abentleylifeless: or else pwn them using sniffed credentials :-)16:35
lifelessbac: if you can qa rev 13170 we can get it deployed today16:40
deryck_sinzui, I like this very much.  No concerns or comments really.  r=me.16:41
baclifeless: looking16:42
=== deryck_ is now known as deryck
sinzuideryck_: thanks. I will make my first attempt to land. I may need to tune html5browser for lucid because the dependencies are different.16:42
gary_posterabentley, could you kick https://code.launchpad.net/~chromium-team/chromium-browser/channels , per https://answers.launchpad.net/launchpad/+question/160629 ?  I'm assuming this is related to bug 648075, per your comment in https://answers.launchpad.net/launchpad/+question/15985716:43
_mup_Bug #648075: Automatic translations export fails intermittently <branch-scanner> <lp-translations> <oops> <qa-untestable> <Launchpad itself:Fix Committed by abentley> < https://launchpad.net/bugs/648075 >16:43
derycksinzui, Once it lands, it would be nice to move the test_yuitests files out of the windmill dir, just to make it clear this is separate...16:44
derycksinzui, but that's easy and not a huge issue either.16:44
LPCIBotProject windmill-devel build #184: STILL FAILING in 1 hr 6 min: https://lpci.wedontsleep.org/job/windmill-devel/184/16:44
sinzuideryck: agreed.16:44
abentleygary_poster: kicked.16:45
gary_posterthanks abentley!16:45
jcsackettsinzui, could you look at https://code.launchpad.net/~jcsackett/launchpad/oh-oh-pick-me-pick-me-3/+merge/63885 for me?16:59
sinzuiokay17:00
=== matsubara is now known as matsubara-lunch
LPCIBotProject windmill-devel build #185: STILL FAILING in 44 min: https://lpci.wedontsleep.org/job/windmill-devel/185/17:29
LPCIBotProject devel build #787: STILL FAILING in 5 hr 40 min: https://lpci.wedontsleep.org/job/devel/787/17:54
henningesinzui: Hi! Do you have a minute?17:57
lifelessI recall there being an existing bug asking for a strike-out style on closed bugs18:19
lifeless(not bug 109113)18:19
_mup_Bug #109113: closed bugs are not clearly marked in the recently filed/touched lists <lp-bugs> <ui> <Launchpad itself:Triaged> < https://launchpad.net/bugs/109113 >18:19
lifelessI cannot find it18:19
sinzuijcsackett: I replied with a question. I hope you can reassure me that the comment is wrong18:21
lifelessfound it, it had become a dupe18:28
LPCIBotProject windmill-devel build #186: STILL FAILING in 45 min: https://lpci.wedontsleep.org/job/windmill-devel/186/18:31
lifelesssinzui: hi18:42
sinzuihi lifeless18:42
lifelesslib/lp/bugs/templates/bugtarget-portlet-tags-content.pt to remove memcache I just need to delete the <tal:tags content="cache:public noparam, 60 minutes"> line (and its closing line) ?18:42
sinzuiyes18:43
=== matsubara-lunch is now known as matsubara
lifelesslike so - http://pastebin.com/UseELrCv ?18:44
sinzuilifeless: exactly so18:47
lifelessgreat18:49
* lifeless does it18:49
lifeless(we don't need memcache for a 150ms page :)18:49
lifelessnot a 60 minute one anyhow18:50
jcsackettsinzui: i see your comment on my MP. do you want confirmation that it's not possible period, or not possible for someone who doesn't own/moderate said private team?18:53
sinzuijcsackett: register a private team, then try to set the team as the driver of /firefox18:55
jcsackettsinzui: so, if i do that, as say admin, i can assign the private team. if i log in as name12 afterwards i cannot.18:55
jcsackettthis is, i take it, not ideal.18:55
sinzuijcsackett: No admin can do this. the picker should not suggest you can18:56
jcsackettok.18:57
sinzuijcsackett:  I believe is mispoke. Please read Brad's private-team-roles.txt doctest that clearly states our expectation.19:12
jcsackettsinzui: ok.19:13
jcsackettsinzui: so it looks like provided you can see the private team, you should be able to pick it as maintainer?19:16
sinzuiyes19:16
sinzuiThis is actually good news because lifeless and I agree that you should be able to place a private team in a pubic role (and we will tell users who the team is) This check the bug assignee example to ensure nothing odd happens19:18
jcsackettokay, i'm looking at that now.19:19
jcsackettsinzui: it's a little weird when a product has a private team assigned. the display if you can't see the team is "Maintainer: <hidden>"19:20
lifelessbigjools: package copy19:20
bigjoolslifeless: you're like a rabid dog :)19:20
lifelessbigjools: does it count the user-ticked-boxes (e.g. sources) or expand to source + binary count and use that ?19:20
lifelessbigjools: woof!19:20
bigjoolslifeless: I asked for source+bin but let me check.  Although ideally we need *file* count as that's the badly scaling bit19:21
lifelessbigjools: so if its source + bin can I suggest a threshold of 40 ?19:21
bigjoolslifeless: it's set in a FF so you can suggest wth you like :)19:22
lifeless:P19:22
lifelessI mean, do you think that that would be too low?19:22
bigjoolsgah, it's only # of sources19:23
bigjoolseasy enough to fix19:24
lifelessI'll leave it with you :)19:24
sinzuijcsackett: That is correct for the code in the current state19:24
bigjoolslifeless: it was done with syncing in mind for DDs but DDs will always use PCJs now so I am going to leave this for a maintenance team19:24
bigjoolsmaybe that will still be me :)19:24
jcsackettsinzui: right, didn't think it was wrong. just peculiar. :-)19:24
lifelessbigjools: ok, so we can set the threshold to 0 for now to fix unembargo of linux19:25
bigjoolslifeless: yes but I'd like to see that tested on staging first19:25
lifelessindeed!19:25
bigjools:)19:25
bigjoolslifeless: the other thing is, most people expect the copies to complete immediately, this will be a culture shock and possibly even break api scripts19:26
lifelesswe can socialise it a little first19:26
bigjoolsgive it a few beers?19:27
lifelesstake it out to dinner!19:27
bigjoolsfnar19:27
=== almaisan-away is now known as al-maisan
jcsackettsinzui: bug assignee stuff is working on my branch as well.19:38
sinzuiokay. r=me19:38
sinzuiwith the fix of the comment19:38
jcsackettsinzui: dig.19:39
jcsackettmaking that fix now.19:39
LPCIBotProject windmill-db-devel build #374: STILL FAILING in 42 min: https://lpci.wedontsleep.org/job/windmill-db-devel/374/19:43
henningesinzui: Hi!19:46
henningesinzui: can you please review this branch?19:49
henningehttps://code.launchpad.net/~henninge/launchpad/bug-410864-undefined-in-picker/+merge/6391119:49
henningesinzui: It is fixing a bug in the picker widget which I heard your squad is working on, too.19:50
henningesinzui: So I hope you can check if this is colliding with any work that is going on19:51
sinzuihenninge: thank you very much19:51
lifelessgary_poster: while you're here, is there anything you need from me / that I can do for you ?19:51
henningesinzui: but it is only a small fix.19:51
lifelessbigjools: ditto^19:51
gary_posterlifeless, hi, thanks for offer.  thinking...19:52
gary_posterlifeless, nothing offhand, but I will keep in mind that you are here unusually early :-)19:52
lifeless:)19:53
LPCIBotProject parallel-test build #21: STILL FAILING in 53 min: https://lpci.wedontsleep.org/job/parallel-test/21/20:07
sinzuihenninge: r=me , but your branch conflicts with jcsackett's current branch that is landing20:12
henningesinzui: thanks, I'll have a look20:12
sinzuihenninge: jcsacket moved modules and code so it may not be obvious. You may need to paste line 8 from the diff into the new code20:13
LPCIBotProject windmill-devel build #187: STILL FAILING in 42 min: https://lpci.wedontsleep.org/job/windmill-devel/187/20:25
henningesinzui: I'll EOD now but I will look into it in the morning. Thanks for your review and comments.20:26
LPCIBotProject db-devel build #621: FAILURE in 6 hr 29 min: https://lpci.wedontsleep.org/job/db-devel/621/20:42
=== al-maisan is now known as almaisan-away
bachi lifeless, you around and have a minute?21:08
lifelesssure21:08
lifelesshow can I help ?21:08
baclifeless: great.  i'm trying to QA the branch for bug 788874 -- the too big email oops21:08
_mup_Bug #788874: mail handling stalls when a large message is received and not deliverable <canonical-losa-lp> <qa-needstesting> <Launchpad itself:Fix Committed by bac> < https://launchpad.net/bugs/788874 >21:08
bacon qastaging i've seen the log message written, and an OOPS report generated but i cannot find the outbound OOPS email to verify it got truncated as intended21:09
lifelessok21:09
baci triggered it by sending a bug message to qastaging with an 11MB attachment21:10
bacand had cronscripts/process-mail and send-bug-nofications run on demand21:10
baclifeless: so, can you think of something i'm missing?21:10
lifeless2011-02-26 06:20:56 ERROR   No mail box is configured. Please see mailbox.txt for info on how to configure one.21:11
lifelessthe logs for qastaging are in carob:/srv/launchpad.net-logs/qastaging/asuka21:11
lifelessprocess-mail is logging that output21:11
bacright, and if you look at 16:10 from today it has the log message i referred to21:11
lifelessI think this means there is a config issue of some sort in the way its being run21:11
lifelessoh, thats feb21:12
lifelessnvm21:12
lifelessso, I thought that when process-mail generates an oops21:12
lifelessit reported it to the log21:12
lifelessso, if thats not happening21:12
baclifeless: this is the generated OOPS: https://lp-oops.canonical.com/oops.py/?oopsid=OOPS-1985QASTAGING4021:13
lifelessah, I wasn't looking at the right point in th elog21:13
lifeless*now* I'm more together21:13
lifelessand you've looked in the staging mailbox?21:14
bacyes21:14
LPCIBotProject windmill-devel build #188: STILL FAILING in 43 min: https://lpci.wedontsleep.org/job/windmill-devel/188/21:14
baclifeless: but the odd thing abt the staging mbox is it has the same message repeated hundreds of times, unrelated to what i'm doing21:15
lifelessI think paolo is testing a script21:17
lifelessthere are several different bugs with duplicate messages21:17
lifeless718985, 718986, ..21:17
lifelessI've cleaned those out21:18
lifelessso, possibilities are:21:19
lifeless - the NDR isn't getting captured by qastaging mail rules21:19
lifeless   (check the account you sent the big message from)21:19
lifeless - the patch is not sending the mail (and not causing a log message to be sent)21:20
lifeless - something else?21:21
lifelessthe change to delete the email before sending the NDR makes this a bit harder to check21:22
baclifeless: i was wondering if there was some other process that needed to be kicked.  but it doesn't sound like it21:22
lifelessbecause we can't check that its been deleted as a way to see where the code got to21:22
lifelessat least on prod this is definitely in-process21:23
gary_posterlifeless, I was thinking about your perception that all or most of yellow was on the feature well after we switched to maintenance.  FWIW, it is true that danilo and I were the people I expected to be consumed, and we were; but it is also true that gmb and benji each spent a bit of time on the feature.21:40
gary_posterbenji was only about a week in my estimation; gmb is fixing generic critical bugs but one he's tried to fix repeatedly is tied into the whole feature thing.  So I think there's a good explanation for your perception--there's something behind it.21:41
gary_posterIf this clarification means you think it is important to reraise your concern later, I'll be happy to reiterate this (and perhaps get concrete data if you desire).21:41
gary_poster(I personally think we should simply remember this for the future, and if it happens again, raise the concern again.)21:41
lifelessgary_poster: thanks!21:43
gary_posternp21:44
baclifeless: i'm going to try another and ask that process-mail be run with INFO level logging...it won't tell us much more but is worth trying21:44
lifelessgary_poster: I will talk to flacoste about it; I'm not sure I can suggest anything /different/21:44
lifelessgary_poster: estimation is hard21:44
gary_posterack21:44
lifelessgary_poster: did my reply about the account-merge-feedback thing help you?21:45
gary_posterlifeless, ah, sorry!  that was yesterday, and so is no longer relevant. ;-)  I forgot.  How about I bring up the question on -dev and include your reply, to see if we have any comments?  The issue is a small thing, but I expect you can see that it is still relevant in CHR-land (and a bit annoying that we ask for feedback without any particular plan on what to do about it).21:50
gary_posterI generally agree that we should not follow up on each case.  I'd go further and say that we could simply say, in the email, "if you receive many of these, please contact feedback"21:50
gary_posterThat way, if we get a ping on feedback, it's more likely to be actionable21:50
gary_poster(and if it is not actionable, let's not ask for feedback)21:51
lifelessgary_poster: +121:53
LPCIBotProject windmill-devel build #189: STILL FAILING in 41 min: https://lpci.wedontsleep.org/job/windmill-devel/189/21:55
baclifeless: i have this now:  https://pastebin.canonical.com/48325/ with INFO level debugging22:15
baclifeless: followed by the results of send-bug-notifications.py -vv at https://pastebin.canonical.com/48327/22:15
baclifeless: aha!  the mail did show up in the staging mailbox22:17
lifeless\o/22:17
bacand the 11MB attachment is 60KB long22:18
bacwhee22:18
gary_posteryay!!!!22:18
lifelesssweet22:18
lifelessso thats qa-ok22:18
baci was afraid i was going to have to roll-back a branch i really thought was good...22:19
lifelessbac: I'm glad you persevered ! I dunno what went wrong on the first test22:20
bacdunno.  thanks for your help, though.22:23
lifelessno probs, anytime22:26
=== salgado is now known as salgado-afk
persiaGood day.  I just noticed that I had a workitem from UDS to "rocketfuel setup - dev recommendation in a chroot - http://dev.launchpad.net/Running/Schroot".  Does anyone happen to know what this means?22:46
persiaAm I to clean up the page, with recommendations for automated means to create schroots?  Just test the procedure and file bugs?22:46
lifelessboth of those things sound good22:46
lifelessyou know what would be super awesome22:46
persiaWhat?22:46
lifelessinstructions to get lp dev environment going with lxc22:47
lifelesswith the container natty/oni and the contained thing lucid22:47
=== matsubara is now known as matsubara-afk
persiaI agree that would be super-awesome.  If I work on that, I'll spend the next three months yak shaving, take care of some of the precedents, and get distracted.22:47
persiaMy recommendation there is to wait for LXC support to be added to libvirt and the ubuntu-security-tools stuff (both planned), and then ask someone to document how to do rocketfuel-setup therein at that point.22:49
lifelessoohhh lixc libvirt sounds shiny22:50
persiaIt's getting really close.  Some architectures don't have the necessary HW support for KVM, and qemu is *slow*.22:51
persiaUnless I misread my tea leaves, I suspect we should have nice automation for LXC in oneiric, making the super awesome procedural documentation something that should be able to happen sometime next Ubuntu cycle (which ought make it easier to cross-test as LP migrates to new LTS)22:53
lifelesswe're unlikely (due to sheer manpower constraints) to migrate to the next LTS for 6-12 months after its release22:55
lifelesswe'll have the dev environment move22:55
lifelessbut moving to the next LTS means:22:55
lifeless - moving to python2.7 on lucid22:55
lifeless - then moving LTS22:55
lifelessneither are trivial22:55
persiaIndeed.22:55
lifelessand we have no manpower to do them for their own sake; so stakeholder requests || dealing with criticals have to be sacrificed to do them ahead of 'must do them now'22:56
LPCIBotProject windmill-devel build #190: STILL FAILING in 41 min: https://lpci.wedontsleep.org/job/windmill-devel/190/22:57
persiaLucid will have another ~36 months of support when oneiric+1 is released, so it's not precisely a critical transition.22:58

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