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

StevenKlifeless: So, sinzui told me about another table that I had forgotten about on the call this morning.01:24
StevenKlaunchpad_dogfood=> SELECT sourcepackagename from distributionsourcepackage as dsp join sourcepackagename as spn on dsp.sourcepackagename = spn.id where dsp.distribution = 1 and spn.name like '%linux%';01:24
StevenKTime: 37.420 ms01:24
lifelessis that populated now ?01:24
StevenKSeems to be01:24
StevenK30k rows, a whole bunch for Ubuntu and Debian01:24
StevenKlifeless: Try that query on staging for me?01:25
lifeless53ms01:25
lifeless136 rows01:25
lifelesswhich suggests it includes stale packages.01:25
lifelessis linux 2.6.8 still valid, for instance ?01:26
lifelessStevenK: spn was never a problem anyhow ;)01:26
StevenKIt's a published source package, at least01:27
StevenKlifeless: Well, no, but if we can fetch a good list of spns in 50 ms, it gives us a bit more time for the binary side01:27
wgrantStevenK: You can't use DSP.01:29
StevenK:-(01:29
wgrantStevenK: It's used for storing bug reporting guidelines.01:29
wgrantThat is its only meaning.01:29
wgrantSome uploads and gina create them.01:29
wgrantBut you cannot derive any meaning from them.01:29
StevenKCurtis was of the opinion that it was used for upstream linking too01:30
lifelessit is01:30
lifelessit could be used, if you extend it to know active/inactive01:30
lifelessand make sure its kept up to date01:31
StevenKTBH, if wgrant says the data in it is not trustworthy I'm inclined to not use it01:31
lifelessStevenK: oh, and for the vocab, don't forget to also look for published source package branches with no SPR01:31
StevenKlifeless: Right, and that 26 minute query can take even longer :-P01:32
lifelessStevenK: there is a escalated bug for ensemble requesting this01:33
StevenKlifeless: Curtis and I have discussed it a few times. I want to get to the vocab working and then work on extending it01:33
lifelesssure01:33
wgrantAha!01:36
wgrantUnity has taken minimalism a step further.01:36
wgrantIt is now Nautilus.01:36
wgrantThe launcher and dash and indicators are gone... all there is is the Nautilus root window and its menu bar.01:37
wallyworld_does anyone know how to create a project or distro with an icon for testing purposes?01:50
lifelessset the branding01:51
lifelessclick on 'edit details' scroll to the bottom then 'edit branding', I think01:51
lifelessits a very clunky bit of ui01:51
wallyworld_lifeless: i mean in code01:51
lifelessnot offhand - does the factory have an option ?01:52
wallyworld_not that i can see :-(01:52
StevenKfactory.makeDistribution() and then you probably have to twiddle something in it01:52
StevenKLet's see01:52
lifelesslook for tests for branding to see how01:52
wallyworld_ok, thanks. my other searches have failed to find anything01:53
StevenKwallyworld_: Create an LFA and then set IDistribution.icon to it01:53
StevenKYou also have IDistribution.logo01:53
wallyworld_LFA?01:53
StevenKLibraryFileAlias01:53
wallyworld_ok, there is a factory or something for that?01:54
StevenKfactory.makeLibraryFileAlias(content=<foo>) ; transaction.commit()01:54
wallyworld_excellent, thanks01:54
wallyworld_wgrant: StevenK: want a small review (one line change plus tests)? https://code.launchpad.net/~wallyworld/launchpad/person-affiliation-breakage-823644/+merge/7098102:59
StevenKwallyworld_: It will cost you. What do you have?03:00
StevenKOh, right. You're married with kids, so nothing.03:00
wallyworld_my eternal gratitude?03:00
wallyworld_hah03:00
wallyworld_i keep photos in my wallet where my money used to be :-/03:00
j-johan-edwards> from lazr.restful.interfaces import IRepresentationCache03:02
j-johan-edwardsImportError: cannot import name IRepresentationCache03:02
j-johan-edwardsAny idea what might be going on? (I have lucid's python-lazr.restful installed)03:03
StevenKwallyworld_: r=me with a comment03:04
wallyworld_StevenK: thanks03:04
wallyworld_StevenK: with the commit, there's a number of other usages of LFA in tests without a commit. modt of them seem to not have one03:06
StevenKj-johan-edwards: The version of python-lazr.restful in lucid is about 18 months old03:07
StevenKwallyworld_: Right, so I'm not saying thou must add thy commit, or no +1 from me03:07
StevenKwallyworld_: I'm just saying it's something to watch for03:08
wallyworld_StevenK: np. thanks03:08
j-johan-edwardsStevenK: Ah. The wiki Running page said Lucid was the only support version03:08
StevenKj-johan-edwards: What are you trying to do with lazr.restful?03:08
j-johan-edwardsTrying to make heads or tails of the source tree. Imported lp.soyuz.model.binarypackagerelease, which asks for that module.03:10
StevenKj-johan-edwards: I would strongly suggest you use rocketfuel-setup to check out LP's tree03:11
j-johan-edwardsI did. It claimed everything was okay, so I ran `make schema`, which also worked03:11
j-johan-edwards`make run` also works, oddly03:11
j-johan-edwardsI actually tried building on Natty too, but had a similar import error for lazr.config03:12
StevenKOh! Are you running 'python' and trying to import stuff?03:12
j-johan-edwardsYup03:13
StevenKYes, that won't work03:13
StevenKUse 'bin/py' in the source tree, or 'make iharness'03:13
j-johan-edwardsThanks a ton! Just tried it again, and that works great.03:14
wgrantj-johan-edwards: LP uses lots of dependencies that aren't in Lucid. You can find them in eggs/ within the LP branch.03:22
lifelessnesting project groups would be mega useful.03:24
wgrantlifeless: No.03:25
wgrantlifeless: Nesting projects :)03:25
lifelesswgrant: well, if project groups died, sure03:30
wgrantThey are going to die before they get any significant changes.03:30
LPCIBotProject devel build #960: FAILURE in 5 hr 42 min: https://lpci.wedontsleep.org/job/devel/960/03:57
lifelessis it intentional that LP shows a /!\ in the involvement portlet when you select 'N/A' for translations ?04:18
StevenKIt's probably supposed to be an icon04:19
lifelesswell it is an icon04:20
lifelessI'm just confused04:20
lifelessif you say 'unknown', a warning with 'lp needs to know' is sensible04:20
lifelessbut its set to N/A04:20
lifelessshouldn't that just hide the line ?04:20
j-johan-edwardsHello, sorry to come crying for help again so soon04:29
j-johan-edwardsEvery getUtility(Iwhatever) call I make results in a zope.component.interfaces.ComponentLookupError04:29
wgrantj-johan-edwards: bin/py doesn't set up utilities -- use bin/harness for that.04:30
j-johan-edwardsthanks!04:30
j-johan-edwardsIs there some piece of documentation I'm missing on the wiki? Or are some sections of the Hacking page (eg #Storm) just incomplete?04:32
* j-johan-edwards ignores the possibility he simply fails to grasp the obvious04:32
lifelessj-johan-edwards: theres a vast learning curve around lp development04:32
lifelesswe want to improve that04:32
lifeless(by lowering the curve, not documenting the curve :P)04:32
wgrantj-johan-edwards: Well, Hacking doesn't say it should be run in bin/py.04:33
StevenKIt isn't a curve, it's a bleeding cliff!04:33
j-johan-edwardshaha04:34
lifelessj-johan-edwards: so what are you hacking on ?04:35
j-johan-edwardslp:archive-index (I might give up if I can't hack in though)04:37
lifelessj-johan-edwards: integration with LP ?04:38
j-johan-edwardslifeless: yeah, for the past few months I've been working on an archive crawler for mvo04:38
j-johan-edwardsbut it's becoming obvious it won't scale, so an automated solution is important04:39
lifelesswhat sort of data does it extract?04:39
j-johan-edwardsapp-install-data-ubuntu, basically04:39
StevenKRight, so it's as I feared. You'd like an easier way to get at contents rather than parsing Contents-<arch>.gz?04:40
j-johan-edwardsYup, I saw your populate-bprc branch, which boosted my hopes of making that possible04:41
* StevenK had no idea he had a stalker ... :-P04:41
j-johan-edwardshaha, lifeless actually directed me to you, so you've got two04:42
StevenKlifeless just stalks all LP devs, so that's nothing new04:42
lifelessStevenK: and now its my job!04:43
* StevenK waits for "And I'm watching you ..."04:43
stubStevenK: that will arrive by a postcard slipped under your door.04:44
StevenKHaha04:45
wgrantNo, he'll find it in his pocket.04:45
lifeless... of his pyjamas04:45
StevenKAlong with a video called "The Branch" ?04:45
StevenKj-johan-edwards: Keep in mind the BPRC work is in my spare time, and I'm not really pushing it with any priority04:46
nigelbStevenK: "It isn't a curve, it's a bleeding cliff!" +!04:46
nigelb+104:46
wgrantIt's not that bad!04:46
wgrantI submitted my first branch after like a day.04:47
StevenKwgrant: Yes, but 1) You're insane. 2) You already knew Zope.04:47
wgrantAnd it even changed tests.04:47
nigelbhaha04:47
nigelbI wsa about tos ay that.04:47
nigelbI wrote a one line patch.04:47
nigelbThen I realized I had to write 25 lines of tests :)04:47
nigelbso, for someone starting out, you open the code. and you need to grep to find what you're looking for. Then you a *lot* xml files.04:48
StevenKMy first branch for LP changed 2 lines. Sadly, it then broke 200 tests04:49
nigelbfun!04:49
nigelbI redid a branch 2 times I think.04:49
StevenKnigelb: Why? You can get away with ignoring the ZCML04:50
StevenKAnd bzr grep is *love*04:50
nigelbStevenK: of course you can. but its scary to see a lot of xml :)04:50
StevenKnigelb: Lots of XML is solved by shovelling more XML at the problem04:50
StevenKAfter a while you forget what you were trying to solve.04:51
nigelbis that like regular expresssions?04:52
nigelb;)04:52
StevenKOh hey, I wrote one of those yesterday04:52
* ajmitch is suddenly scared04:52
StevenKAnd then ran it over devel ...04:52
nigelb"if you have a problem and you use regular expressions to solve it, then you have 2 problems"04:52
StevenK% bzr di -r submit: | wc -l04:53
StevenKUsing submit branch /home/steven/launchpad/lp-branches/devel04:53
StevenK650104:53
nigelbalso of note, now I'm more comfortable with lp.04:54
StevenKnigelb: You need to submit more branches!04:55
nigelbStevenK: working on one, need more hours in a day.04:55
StevenKMake a branch for that too?04:55
nigelbagainst what project?04:56
StevenKlp:universe04:56
nigelbaha04:57
* StevenK ponders how to write a db patch, given this whole FDT thing05:00
nigelbI'm going through rtfd that jml set up some time back.05:00
nigelbI wonder if lp will ever get a feature like rtfd/github pages05:01
lifelessif someone does it well, sure05:01
lifelessthough there is merit in just integrating with rtfd well, particularly if that site is open source (is it?)05:02
nigelbit is05:02
nigelbits django based05:02
lifelessnigelb: and its source is available ?05:02
nigelbhttps://github.com/rtfd/readthedocs.org05:02
lifelesscool05:03
lifelessnow just need to get them hosted on an open site05:03
nigelbso, out of the box, rtfd already can scan bzr branches.05:04
StevenKThat is one thing that annoys me. How much flak did LP cop for not being open, and you don't see people complaining about github05:04
nigelbheh05:04
wgrantNobody is going to clamour for GitHub to be open, because GitHub is not crap.05:04
lifelessthat seems spurious :)05:04
wgrantOh?05:04
wgrantPeople wanted LP to be open partly because LP was a piece of shit :)05:05
lifelessI would expect the reverse correlatio05:05
lifelessmore good -> more desire for it to be open05:05
nigelbeveryone seems to have a github.05:05
=== StevenK is now known as wgrant_
wgrant_jtv: QA!05:05
=== wgrant_ is now known as StevenK
nigelbhaha05:06
wgrantThat was a real WTF moment for a while there.05:06
jtvwgrant: FO!05:06
nigelblol05:06
nigelbWIN05:06
nigelbStevenK: That was awesome.05:06
wgrantI must need to crank up the protection on wgrant_...05:06
StevenKNow to look up my Nickserv password again05:07
nigelbcan't protect it for these less that 30 sec bursts.05:07
nigelbunless you're signed into it.05:07
nigelbin which case, StevenK can still d wgrant__05:07
nigelbor wgrant`05:07
StevenKIt was for comedic value only05:08
nigelband it was sucessfull run!05:08
wgrantYeah, I only have wgrant and wgrant_, and ENFORCE only works after a certain time.05:08
wgrantSad.05:08
StevenKI told jtv he had QA to do and he told me I could have been better at impersonating wgrant.05:08
StevenKSo I was.05:08
nigelbSo, hacking on Lp can still be counted as rest when I'm sick right? :)05:23
wgrantI hope so, or I'm a bad person.05:23
lifelessif it counts as rest, thats proof you are sick ?05:23
nigelbhah05:24
lifelesspop quiz05:30
* wgrant blames python-oops.05:31
lifelessWould defining an oops report as a 'dict suitable for bson serialisation' be problematic ?05:31
lifelesswgrant: :P05:31
wgrantlifeless: That's what has always made a lot of sense to me.05:31
=== wgrant changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs: 237 - 0:[#######=]:256
j-johan-edwardsI just retrieved a record from a table05:35
j-johan-edwardsMost beautiful moment of my life...05:35
* wallyworld__ doing qa, and finds an interesting user on qas:05:37
wallyworld__Cost Of Viagra - Online Pharmacy - No Prescription Drugs, Health and Beauty, plus more in Launchpad in Launchpad (dalefyoboardinghouse)05:37
wallyworld__<email address hidden>05:37
wallyworld__Member since 2009-12-1705:37
wgrantHah.05:37
nigelblol05:37
wallyworld__i'm too young for viagra05:38
wgrantWe get a lot of them, sadly.05:38
wallyworld__just05:38
wallyworld__do we have permission to deactivate such users ourselves?05:38
wgrantAdminister account05:39
wgrantSet status to suspended.05:39
wgrantDeclare victory.05:39
wgrantThere are instructions on the wiki.05:39
wgrantOn dealing with spam.05:39
wallyworld__np. was just wondering out loud if we had permission to do that05:39
lifelessoh wow06:02
lifelessthis is going to break LP :P06:02
lifelesswe've been parsing iso8601 timestamps as TZ unaware.06:02
wgrantPython's good at that.06:02
lifelessah well, extracted code can be good.06:04
lifelessLP can deal.06:04
lifelesswoot06:05
nigelbextracted? abstracted?06:05
lifelessextracted06:06
nigelbwhat does that mean?06:06
lifelessto take out of06:09
lifelesswell, 'taken out of' 'removed'06:09
nigelbah06:10
lifelesslp:python-oops06:10
lifelesscan has review? https://code.launchpad.net/~lifeless/python-oops/extraction/+merge/7099306:19
StevenKSuppose06:21
lifelessoriginal code is in lib/canonical/launchpad/webapp/errorlog (and tests/test_errorlog)06:22
lifelessStevenK: thanks!06:45
lifelessstub: how long does the 'ALTER TABLE BugMessage ALTER COLUMN owner SET NOT NULL;' take to apply ?06:51
lifelessstub: (I'm wondering if an index could do it instead, and be done CONCURRENTLY06:52
nigelbwho's the postgres expert?06:58
* nigelb points them to https://schemaverse.com06:58
lifelesscan has review? https://code.launchpad.net/~lifeless/launchpad/useoops/+merge/7099507:01
lifelessnigelb: thats evil07:01
nigelbheh07:04
rvbalifeless: Hi, I'd be happy to move all the js files used to ~lpqateam but I'm afraid you will have to tell me how to do that (if I can do it myself) because I don't seem to have the right permissions.07:05
lifelessI can probably do that later tonight; or losa could;07:06
lifelessor francis or the qa team :)07:06
rvbalifeless: ok thanks, if you don't have to do it before you EOD, I'll grab a losa later today then.07:11
jtvThanks for the review, StevenK07:13
rvbadon't have *time* even07:15
jtvStevenK: The extra check you're asking for is not under the purview of the method that the test is for; it's DSD.update's job and presumably you tested for it!07:17
jtvThe fact that update() is called on the DSD is also already tested.07:17
adeuringgood morning07:39
stublifeless: as long as it takes to do a full table scan of bugmessage07:39
stublifeless: You can't duplicate that constraint with an index.07:39
stublifeless: it might use the index on the column to avoid the scan, but I wouldn't count on it. Staging timing is what we want to see.07:40
stubfull scan is < 10 secs07:41
lifelessstub: cool07:51
lifelessstub: we're going to need to think up ways to handle big tables ;)07:52
stublifeless: Apart from bypassing PG's protections and attacking the data dictionary directly, you can't. Theoretically CONCURRENTLY could be added to this stuff, but I doubt anyone will bother.08:06
stublifeless: Best way of handling big tables is to not have them :-)08:06
allenapThanks for the review StevenK :)08:06
lifelessheh :P08:06
lifelesscan has review? https://code.launchpad.net/~lifeless/launchpad/useoops/+merge/7099508:07
stublifeless: Not totally joking. Archiving old data, partitioning08:07
lifelessstub: yeah, I know08:07
stublifeless: reviewed08:09
lifelessthanks!08:09
StevenKallenap: I'm not so happy with JS-only reviews, but it looked pretty good.08:10
allenapStevenK: Didn't you hear? The SOA is going to be based on node.js.08:11
lifelessallenap: you can troll so much better if you want to08:12
allenapStevenK: Didn't you hear? The SOA is going to be based on Drupal.08:14
StevenKallenap: Are you just working down a list? Is PHP the next item? :-P08:15
wgrantDrupal *is* PHP.08:15
allenapStevenK: I thought I'd gone past PHP with Drupal.08:15
lifelessstub: so poking at the internals and reindexing seems plausible as a future recipe08:18
stublifeless: I'd consider not adding the constraint before considering internal hacking. That could screw us, and we not know for quite a while.08:20
lifelesssure08:20
lifelessnot something to do lightly08:20
stubYay standardization. Landscape just got pgbouncer installed on port 5434 - assume 5433 was already taken ;)08:22
lifeless\o/08:23
wgrantstub: Your slony1-2 packages didn't burn down your machine?08:25
mrevellMorning08:33
stubwgrant: Working fine. And all the staging stuff worked out of the box like you said - thought I would have to rewrite parts of the automation but looks unnecessary!08:38
wgrantstub: Yeah, I was a bit wary about trying it when I did, thinking I was going down a bit of a rabbit hole... but nope.08:38
wgrantAll worked.08:38
wgrantPython exceptions are slow :(08:41
jtvYes.08:43
wgrantFor dicts, it seems that these relations hold: LBYL with 'in' < get() < catching KeyError08:46
wgrantI would not have expected get() to be slower than a manual check.08:46
lifelessmmm08:46
lifeless'in' + get will be slower than just get, if you know you want the item08:47
lifelessin itself is fast, yes08:47
wgrantNope.08:47
lifelessreally?08:47
lifeless!cite08:47
wgrantWell, if there are lots of misses then checking 'in' first is faster.08:48
wgrantSaves 50ms in privilege delta generation.08:48
wgrantNot significant, but rather odd.08:48
lifelessstrange:08:52
lifelesshttp://paste.ubuntu.com/662462/08:52
wgrantOdd.08:52
lifelessget on hit or miss is ~constant08:53
lifelessin is also approx constant, and 1/3 a get08:53
jtvhow sensitive are they to what's in the dict?08:54
lifelessthe hash() call on the object is crucial08:54
jtvThis is a pretty big difference already.08:55
lifelessbeyond that, its dict size - and they scale very well08:55
jtvbtree, right?08:56
jtvJust curious about irregularities w.r.t. how deep in the tree the element is, and how branch prediction factors in.08:56
lifelessits a hash08:58
jtvOpen or closed?08:58
lifelessopen08:58
lifelesshttp://permalink.gmane.org/gmane.comp.python.devel/2996008:59
lifelessmrevell: hey09:00
lifelessmrevell: I'd like to catch up with you sometime; when would be good?09:00
jtvNo linear probing?  I would've expected that to work pretty well with good access predictors.09:01
mrevelllifeless, Howdy. How does after the TL call sound?09:01
lifelessmrevell: sweet09:02
wgrantstub: So, I have table privilege resetting down from 5.5s to 60ms.09:35
wgrantWhich should shave 40s off the production outage time.09:35
wgrantWhich is possibly handy.09:35
stubwgrant: \o/09:36
=== matsubara-afk is now known as matsubara
wgrantThe whole thing still takes 450ms per DB, but the first 400ms is as-yet unoptimised and probably small enough that we don't care too much.09:36
LPCIBotProject db-devel build #797: STILL FAILING in 5 hr 41 min: https://lpci.wedontsleep.org/job/db-devel/797/09:38
stubwgrant: Yup. We are in the good enough zone for now. We need to test this on staging first of course - if we land it now on db-devel it should get a run before the first possible fastdowntime deploy.09:38
stubwgrant: or we can leave it until after and have synced db-devel->devel etc.09:39
rvbamatsubara: Hi Diogo, may I bother you with a small "moving files around" problem? I'd like your help to put a few files in https://devpad.canonical.com/~lpqateam/.09:39
rvbamatsubara: Here is the whole story https://code.launchpad.net/~rvb/launchpad/trace-report/+merge/7083909:39
matsubarahi rvba. sure thing. let me take a look09:39
matsubararvba, I need to figure out how the ppr is deployed. I'll do that today and let you know what's needed09:42
rvbamatsubara: Ok great. (It's just a matter of moving the 3 or 4 Javascript file that are needed by reports like https://devpad.canonical.com/~lpqateam/ppr/lpnet/latest-monthly-pageids.html but I'll obviously have to change the paths in the python code that generates the reports once you've decided where to put them)09:45
rvbafiles*09:46
allenapOkay, who removed check-db-revision.py?!10:05
StevenKallenap: "Come on, own up! I can wait all night ..."10:06
matsubararvba, I put all the js files here: https://devpad.canonical.com/~lpqateam/ppr/js/10:07
matsubarawould that work for you?10:07
rvbamatsubara: absolutely. Thanks a lot. I'll modify the script.10:07
matsubararvba, cool. you're welcome. let me know when that lands so I can update the launchpad branch on devpad10:08
rvbamatsubara: I'll make the changes right away and throw that at ec2.10:10
=== danilos changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: danilos | Critical bugs: 237 - 0:[#######=]:256
danilosallenap, re check-db-revision, could it be related to our hot/cold db patches stuff? iow, 2208-*-0 patches are checked, and all the others aren't (at least that's how I understood it)10:26
wgrantdanilos, allenap`: We needed a way to have optional patches.10:28
wgrantdanilos, allenap`: And it was decided to just remove the checks entirely.10:28
=== allenap` is now known as allenap
allenapwgrant: The problem is that check_schema in Makefile is broken. I wondered if anyone had noticed. If not, I'll kill it.10:28
wgrantHm, why didn't that hit anyone earlier, I wonder.10:30
wgrantAnyway, yeah, should be killed.10:30
jmlis there a syntax highlighting mode for build failures, or something?10:36
wgrantjml: For binary package builds? No.10:39
wgrantGiven that they are in whatever format the package chooses, that would be... non-trivial.10:39
jmlwell10:39
jmlI guess I don't really know enough about what canonical.buildd does, but I could imagine it inserting some kind of markup to make failures easier to read.10:40
jmlor, you know, *find*10:40
wgrantjml: We have no control over the output between the lines starting 'dpkg-buildpackage: ' and the '************************************************' right before the 'FAILED [dpkg-buildpackage died]'10:42
wgrantWe like to treat everything between 'RUN: /usr/share/launchpad-buildd/slavebin/sbuild-package' and 'RUN: /usr/share/launchpad-buildd/slavebin/scan-for-processes' as not ours, too, since that would bring us further away from real sbuild, when we hope to use the package soon.10:43
jmlfor my build failure, those are lines 524-597 out of 72010:44
jmlwhich is a pretty small fraction10:44
* jml looks again10:44
jmland would probably be interesting to call out in some way10:45
jmlstarting from sbuild-package expands it quite a lot.10:45
jmlwgrant: are there plans to switch to real sbuild?10:46
wgrantjml: There's even a branch.10:46
jmlzowie10:46
wgrantBut it's not quite landable.10:46
wgrantIt's been dormant for around a year.10:46
wgrantMay get to it when I'm on maintenance again.10:46
wgrantBut it needs to be done this year some time.10:46
wgrantOr Ubuntu will explode.10:46
jmlwell more advanced than 'stop using commercial admin' plans10:46
jmlubuntu has already exploded a little10:46
wgrantHeh.10:46
jmlapt-file doesn't work any more. Debian has its Contents files in different places now.10:47
wgrantThey seem to be in the same place as usual...10:48
wgranthttp://ftp.debian.org/debian/dists/sid/Contents-i386.gz10:48
wgrantHuh.10:48
wgrantlaunchpad_main holds only DELETE on packagebuild.10:49
wgrantNot SELECT or anything.10:49
jmlwgrant: apt-file is looking for them under the component dirs.10:50
jmle.g. http://ftp.debian.org/debian/dists/sid/main/10:50
wgrantjml: They're there too (Ubuntu doesn't have component-specific ones, though)10:51
jmlyeah, so apt-file is broken on Ubuntu.10:51
wgrantOhh, I see what you mean.10:51
wgrantRight.10:51
wgrantI thought you meant our apt-file was broken for Debian.10:52
wgrantRight.10:52
wgrantWe'll be writing out Contents files natively soon (StevenK has a branch for big bits of that), so it will be easier.10:52
wgrantWe still use apt-ftparchive to do it, which Debian stopped doing a year or so ago.10:53
jmlwhat does Debian use now?10:53
wgrantThey write it out directly from dak's DB.10:54
elmowait what?10:55
elmothey put package file listings into the DB?10:55
wgrantYes.10:55
elmowow, that's insane10:55
wgrantHowso?10:55
wgranta-f is not precisely fast.10:55
elmothe answer is not to bloat out the DB with something that's you don't use in any sort of relational way10:55
elmoI mean if it works for Debian, all power to them10:56
elmobut for us, it would be crazy10:56
wgrantIt should ideally be in some separate database, yes.10:56
elmoit's a cache, not a DB10:56
wgrantA DB cache.10:57
elmo*shrug* sure - putting that into launchpad_prod would be, IMNSHO, worse than silly10:57
elmo(and that's me trying very hard to be polite)10:57
wgrantThe hottest part of the table would be ~300MB that is accessed hourly, or possibly only once a day.10:59
wgrantIt's not *that* terrible.10:59
elmoa single Contents file for a single architecture/series is 300Mb11:00
elmoso I question your maths11:00
wgrantYou have a good point there.11:00
elmoand quite frankly, even if it only ends up adding tens of gigabytes, it's still completely the wrong thing to do11:00
wgrantI'd forgotten about the whole multiple archs thing there for a moment.11:00
wgrantMaybe in a few years we'll have multiple DBs.11:01
elmoand until then we'll keep adding stuff to the single one we have that we don't need to?11:01
=== henninge is now known as henninge-lunch
allenapdanilos: Do you fancy reviewing a 1910 line diff? 90% of it is mechanical change that you can skip. https://code.launchpad.net/~allenap/launchpad/lazr-anim-stuff/+merge/7101612:35
danilosallenap, "fancy" is the wrong word, but sure :)12:36
allenapdanilos: Thanks :)12:36
danilosallenap, ok, mostly good, I wonder if a check Y.Lang.isValue(to) would work better for the "to" variable (line 248 of the diff)12:47
allenapdanilos: Yeah, that would keep in spirit with the rest of the changes.12:48
danilosallenap, right, that's all I could find to complain about, so r=me :)12:48
allenapdanilos: Thanks!12:49
=== henninge-lunch is now known as henninge
deryckMorning, all.13:00
allenapMorning deryck :)13:01
* danilos -> food13:03
allenapdanilos: Got time for a *much* shorter JavaScript branch? https://code.launchpad.net/~allenap/launchpad/phantom-overlay-bug-820828/+merge/7104413:45
danilosallenap, you've got a bunch of conflicts there13:49
danilosallenap, though, that seems to be from the anim branch13:51
allenapdanilos: Yeah. I'm working on them now.13:52
danilosallenap, r=me, but I wonder about the var declaration and assignment split-up: is there a reason to prefer one over the other? or is that just your coding style that you hope becomes LP JS style?13:52
allenapdanilos: Ah, that's to silence lint as much as anything. It complains that PersonPicker is not fully defined in PersonPicker.13:54
allenapI have no preference for that style, but I don't mind it either.13:55
=== abentley changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: danilos, abentley | Critical bugs: 237 - 0:[#######=]:256
bacmatsubara: great job on the dashboard!13:55
allenapdanilos: Thanks for the review :)13:55
matsubarathanks bac :-)13:59
=== danilos changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: abentley | Critical bugs: 237 - 0:[#######=]:256
=== jam1 is now known as jam
=== Ursinha` is now known as Ursinha
gary_posterabentley, are you up for answering an importd question from spm, or should I try to get an answer from thumper or mwhudson?  https://answers.launchpad.net/launchpad/+question/16747115:07
=== Ursinha is now known as Guest8410
abentleygary_poster: best to ask thumper or mwhudson.15:08
=== Guest8410 is now known as Ursula
gary_posterabentley, ack will do thanks15:08
=== Ursula is now known as Ursinha
gary_posterbigjools, would you be willing to field https://answers.launchpad.net/launchpad/+question/167457?  If I had to guess, I would guess that this is a "convert question to bug and mark WONTFIX" but it's really well out of my league.15:09
bigjoolsgary_poster: I'l answer it.15:10
gary_posterThank you bigjools15:10
bigjoolsgary_poster: answered.  He probably won't like it... I hope you grok what I said15:16
gary_posterbigjools, I read it and understood, thank you (other than not being familiar specifically with quilt).15:17
bigjoolsgary_poster: I am not that familiar with it either :)15:17
gary_posterheh ok :-)15:18
LPCIBotYippie, build fixed!15:26
LPCIBotProject devel build #961: FIXED in 5 hr 47 min: https://lpci.wedontsleep.org/job/devel/961/15:26
allenapabentley: Hi there, got time for a little bug fix in browser code? https://code.launchpad.net/~allenap/launchpad/dsd-batch-position-reset-bug-822781/+merge/7106915:48
abentleyallenap: sure.15:48
allenapThanks.15:48
abentleyallenap: what is the full_url for?15:49
abentleyallenap: I think "The forms should post to themselves, including GET params" is internally inconsistent.15:51
allenapabentley: The full_url is to show that the URL is not just for the action, which it was before. It's just a naming exercise to show that the action_url and next_url are both essentially the URL with query parameters.15:54
allenapabentley: I'll fix the docstring, oops.15:54
abentleyallenap: It would be nice if  BasicLaunchpadRequest.get_url could produce URLs that included the query string.15:59
abentleys/get_url/getURL/15:59
abentleyallenap: r=me.16:00
allenapabentley: I could add a getFullURL or getURLWithQuery method to LaunchpadBrowserRequestMixin, which would then sort out LaunchpadTestRequest at the same time as BasicLaunchpadRequest.16:02
abentleyallenap: Or getURL(include_query=False).  Any of those would be nice.16:02
allenapabentley: Okay, I'll do that, shouldn't take long... <days later>...16:03
abentleyallenap: -)16:03
=== abentley is now known as abentley-lunch
sinzuijcsackett, do you have time to mumble?16:23
jcsackettsinzui: sure.16:24
=== beuno is now known as beuno-lunch
=== matsubara is now known as matsubara-lunch
allenapabentley-lunch: I've made that change to getURL. Would you be able to take another look at the mp? It's still reasonably short. The only problem is that I have to go now, but I can check back in ~2 hours.17:03
abentley-lunchallenap: sure.17:03
allenapThanks!17:03
=== abentley-lunch is now known as abentley
abentleyallenap: is it actually true that the form is POSTed to a URL with GET parameters?17:07
abentleyallenap: it is pretty unusual to post to a URL with a query string, although I'm not clear whether it violates the spec.17:24
henningeabentley: Hi! Can you please review my branch? https://code.launchpad.net/~henninge/launchpad/bug-823164-remove-translations-by/+merge/7096117:26
abentleyhenninge: sure.17:27
henningeabentley: cool, thanks17:27
=== beuno-lunch is now known as beuno
abentleyhenninge: r=me17:41
henningeabentley: thank you! ;-)17:44
=== matsubara-lunch is now known as matsubara
=== matsubara is now known as matsubara-afk
lifelessmorning18:46
nigelbGood morning.18:48
allenapabentley: I don't think there is anything against POSTing to a URL with a query string. I think the earlier docstring was misleading: a query string is part of the URL, but we've become accustomed to thinking of them as GET parameters.19:13
abentleyallenap: I guess that makes sense.19:15
abentleyallenap: thanks for making the change.19:16
allenapabentley: It was a good idea.19:17
sixstringI'm digging into the canonical-identity-provider code. I know I'm going to need some help plugging my stuff into it. Is this the right IRC channel for asking for help with canonical-identity-provider?19:20
sixstringbots?19:22
allenapsixstring: I don't think many of us hack on the central SSO parts, but I can't find a better place for it. sinzui, do you know any more?19:28
allenapsixstring: Email https://launchpad.net/~stuartmetcalfe; if anyone will know where the best place to hang out for c-i-p is, it's him.19:31
sixstringallenap: Thanks. Will do.19:33
allenapabentley: I forgot to say, thanks for the (double) review.19:35
abentleyallenap: no problem.19:35
sinzuisixstring, allenap SSO is 100% ISD. We did not write any of the code19:39
sixstringISD?19:39
sixstringSorry, I don't know that abbrev, sinzui.19:39
sinzuisixstring, https://launchpad.net/canonical-identity-provider The team that maintain the app19:40
sixstringOK, sinzui. That makes sense now.19:41
* sixstring is still figuring out how Canonical works.19:41
nigelbsinzui: hey19:55
sixstringsinzui, allenap: stuart pointed me to #canonical-isd.20:00
nigelbsinzui: was my post unclear that sso is a separate service?20:04
sinzuinigelb, I did not see your post. I know very well it is a separate service20:05
nigelbhm, wonder who commented then.20:05
sinzuiI advocate turning of login.launchpad.net to stop confusing people about what Lp knows about users20:05
nigelbwell, except there are other comlications.20:06
nigelblogin.u.c is more stricter in config than login.l.c20:06
nigelband there's some slight schema change20:06
nigelbbut, yeah. Eventually, we'll all switch.20:06
bdmurraygary_poster: do you have any plans to follow up with the reporter of bug 823367?20:07
_mup_Bug #823367: Natty installation failed <installer-crash> <natty> <ubiquity-2.6.10> <ubiquity (Ubuntu):New> < https://launchpad.net/bugs/823367 >20:07
gary_posterbdmurray, I did not, but I can if desired.  I think I can get her email again20:12
bdmurraygary_poster: well its a common error if installing behind a proxy server with a specific behavior so working around it may be complicated for her.  I'll just set to invalid rather than finding the master bug.20:14
gary_posterbdmurray, ok.  If you had a page that might help her, I'd certainly be happy to pass it along.20:14
bdmurraygary_poster: I don't think we have a really good workaround documented20:17
gary_posterfair enough bdmurray.  OK thanks for heads up.20:17
=== abentley changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs: 237 - 0:[#######=]:256
=== lifeless changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs: 236 - 0:[#######=]:256
LPCIBotYippie, build fixed!21:09
LPCIBotProject db-devel build #798: FIXED in 5 hr 43 min: https://lpci.wedontsleep.org/job/db-devel/798/21:09
=== lifeless changed the topic of #launchpad-dev to: https://dev.launchpad.net/ | On call reviewer: - | Critical bugs: 234 - 0:[#######=]:256
wgrantnigelb: There are no schema differences (they're the same DB), and I believe both are equally unstrict now.22:54
nigelboh. WIN.22:54
wgrantlifeless: Bug #820796 didn't make it to coco, did it?22:57
_mup_Bug #820796: Lock before publishing <derivation> <qa-ok> <Launchpad itself:Fix Released by jtv> < https://launchpad.net/bugs/820796 >22:57
lifelesswgrant: blah22:58
lifelessdeploy request is still up for it22:58
wgrantThe logical response is to create a new Fix Release Requested status.'22:58
lifelesswgrant: !cite22:59
wgrant:(22:59
lifelessor we could have different code bases for different services22:59
lifelessI know thats heretical and all23:00
wgrantYou are a horrible person.23:00
lifelessI'm shocked!23:03
lifelesshere, let me delete more code from LP for us.23:03
wgrantYou used ... though.23:03
wgrantThat increases your evil rank significantly.23:04
lifelesswhere? oh in the bug ?23:04
wgrantfrom ...oops import23:05
lifelessoh yeah23:06
lifelesswell, thats cause of absolute imports needing __future__23:07
wgrantYeah.23:07
wgrantNot sure why implicit relative imports ever existed.23:07
lifelesspython123:08
wgrantBefore my time.23:13
lifelessyeah23:14
lifelesspython started without packages :)23:14
sinzuiwallyworld, http://pastebin.ubuntu.com/663028/23:16
wallyworldsinzui: awesome. thank you!23:17
sinzuisorry about the surprise in there23:17
wallyworldyea, np :-(23:17
lifelesswgrant: I thought bug 824227 wasn't needed with the rendering improvements ?23:24
_mup_Bug #824227: Prevent changing bugtask pillars to/from a distribution with series tasks <Launchpad itself:In Progress by wgrant> < https://launchpad.net/bugs/824227 >23:24
wgrantlifeless: For project it's fine... for distributions it renders fine, but everything past that is more complicated.23:29
wgrantlifeless: If you approve a new distroseries nomination, all distribution/distributionsourcepackage tasks get a new task.23:29
wgrantIf you then create a new distribution/distributionsourcepackage task, it also creates a task for all approved nominations.23:30
wgrantThis gets amusing if you retarget to/from a DSP task, as you'll have partial sets of tasks which are unable to be fixed.23:30
lifelessthose seem like bugs23:30
wgrantIt requires entirely reworking how distroseries nominations work.23:30
lifelesswhich reminds me23:31
lifelessI was going to mail -users and u-devel about that23:31
lifelessI'd like to drop the table23:31
wgrantOh?23:31
lifelessreplace with a 'nominated' status23:31
wgrantYeah, probably.23:32
lifelessuse 'invalid' for rejected; the separate issue with making invalid be hidden would take care of hiding rejected ones23:32
wgrantParticularly since nominations are restricted now, they're pretty pointless.23:32
lifelesswell, they have the same scope as tasks23:32
lifeless(once all the known bugs are fixed I mean)23:32
lifelessI also need to write up a perf tuesday this week; I'm thinking concurrency/taskswitching modelling.23:33
wgrantOh?23:33
lifelesswhich line are you ohing?23:34
wgrantWhere does concurrency/taskswitching come in?23:34
lifelesscouple of places23:35
lifelesssome other canonical projects are having significant perf issues, and running hundreds of concurrent queries on single pg instances23:35
lifelessnot deliberately - starts with thousands of clients, mostly idle, and then stats kicks in when a spike comes through the system23:36
wgrantErm.23:37
wgranthttps://code.launchpad.net/~gary/launchpad/bug724025/+merge/7107623:37
wgrantDoesn't that make large bugs just about uneditable?23:38
wgrantRather than simply non-AJAX.23:38
lifelessheh, yes. So perhaps not good enough23:39

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