/srv/irclogs.ubuntu.com/2012/07/09/#launchpad-dev.txt

huwshimiI had an ec2 test failure on Friday, but didn't receive an email with the details. Any ideas why not?00:02
wallyworldhuwshimi: sometimes that happens if the attachment is too big (too many errors). a while back, there was also a config change for bzr. is this your first landing in a while?01:02
huwshimiwallyworld: Yeah, in ages01:02
wallyworldhuwshimi: so let me see if i can recall the config change01:03
huwshimiwallyworld: Thank mate!01:05
wallyworldhuwshimi: back in march there was an issue where the email settings in your .bazaar config file needed to be under a section header, but i believe ec2 land was fixed01:06
huwshimiwallyworld: Hmmm01:08
huwshimiwallyworld: So my current config should still work then?01:08
wallyworldi believe so01:08
wallyworldmine has the smtp server settings at the top, not under a section header01:09
huwshimiwallyworld: Mine are under [DEFAULT]01:09
wallyworldmy email address and lp user name is under [DEFAULT] but the smtp settings are above that01:10
wallyworldbut i think either way works01:10
wallyworldso i'm not sure what else to suggest of the top of my head01:11
huwshimiwallyworld: All good, thanks anyway. I'm going to resubmit it and see if it was a once off01:12
wallyworldhuwshimi: there's options you can pass to keep the session open after testing has finished01:13
wallyworldso you can ssh in and look around01:13
huwshimiwallyworld: Oh, I've already submitted this...01:13
huwshimi(22 minutes ago)01:14
wallyworldsee how it goes then. you can ssh in or point your browser at the logged web address while the tests run01:14
wallyworldor you can run ec2 ls every so ofter01:14
wallyworldit will tell youif any tests have failed01:15
huwshimiwallyworld: Yeah, that's what I've been doing :)01:18
huwshimiwallyworld: Thanks mate, I'll see how I go01:18
wallyworldgood luck!01:19
cineramahey guys, i have a launchpadlib question01:26
cineramais there a way i can get the openid identifier for a user?01:27
wgrantcinerama: No -- that doesn't make sense.01:28
wgrantcinerama: It makes sense to go from an OpenID identifier to a user01:28
wgrantBut not vice-versa01:28
cineramawgrant: for my case, it does :) but i can understand why it might not more generally01:29
wgrantWhat is your case?01:29
wgrantIt's probably not actually what you think it is :)01:29
cineramawgrant: we need to provide openid urls to HR01:29
cineramawgrant: when the new users sign up01:29
wgrantAh, $HIDEOUS_HR_TOOL, my old nemesis.01:30
cineramai have a bit of shell i can use but i was hoping to do it in a tidier way. maybe that's still the go though01:30
wgrantAre you using the undocumented illegal interface on https://launchpad/~username?01:31
wgrantPeople can have more than one OpenID identifier, so that's not reliable.01:31
cineramamm01:31
cineramait might have to be good enough for the particular application to assume 101:32
wgrantLots of applications have thought that, and then they send users after us when it doesn't work.01:33
wgrantDespite the fact that we told them not to do that.01:33
cineramai know it's awful, but given the fairly limited application of what i'm doing, i think it will be OK01:40
wgrantPotentially. Just don't send them after us when it breaks :)01:40
lifelesscinerama: what does HR want with open id urls ?01:57
cineramalifeless: it's for one of the HR systems02:02
cineramalifeless: doing a bit of work on gathering information for new hires02:02
lifelesssure02:15
lifelessbut, to what purpose - I mean, can we define something to cross check to identify *which* openid they need?02:15
wgrantI suspect it actually has nothing to do with Launchpad.02:18
wgrantIt's just that SSO doesn't provide a way for a user to see their identity.02:19
wgrantSo they key off LP username instead for setup.02:19
wgrantSo they ask for LP username when they should really ask for SSO ID02:19
StevenKwallyworld: Can haz QA for r15567?02:29
wallyworldStevenK: i did that first thing this morning, i must have messed up settign the tag02:30
wallyworldfixed now02:30
StevenKExcept the QA tagger won't update for ten minutes02:31
StevenKWhich gives me that long to figure how the heck I'm going to QA my IBranch.visibleByUser() change02:31
wgrantStevenK: We need to QA danilo's stuff too.02:32
wgrantI don't want to deploy the visibleByUser stuff without my two testfixes.02:32
StevenKThat's a point02:33
StevenKAt least r15577, 15576 can be ignored on prod02:33
wgrantHm?02:34
wgrant<15577 is possibly a memory leak on prod02:34
wgrantIt was Sunday so I didn't dig into it deeply.02:34
StevenKwgrant: That still doesn't answer my concern about how ot QA it :-)02:35
wgrantStevenK: Check that things don't time out too much, and that branches have approximately correct access rules.02:37
wgrantNothing's going to be too broken, since Code's tests are pretty good.02:38
StevenKI've hit a few branch pages on qas already02:38
wgrantListings etc. too02:39
StevenKhttps://code.qastaging.launchpad.net/launchpad seems pretty snappy, but almost all of the branches are public02:41
wgrantLook, a bug!02:42
StevenK:-(02:42
wgrantStevenK: Open up the page's query log02:42
wgrantSearch for branchsubscription02:42
wgrantwtf a bit02:42
StevenKBah02:43
wgrantAlso, the page is hardly snappy, but the core query is like 30x faster than prod, which often times out.02:43
wgrantSo it's qa-not-quite-awesome-but-close-enough-for-now02:43
wgrantEven better if you fix those queries or convince me to02:44
StevenKMy plan for this afternoon was going to staple auditor to packageupload02:44
wgrantI shall fix them :)02:45
wgrantNeed a full rewrite, anyway02:45
wgrantI'm not actually sure where they are...02:45
StevenKwgrant: You can link to bug 933938, I've slammed it back to In Progress02:46
_mup_Bug #933938: Migrate branch visibility rules to project sharing <disclosure> <qa-ok> <sharing> <tech-debt> <Launchpad itself:In Progress by stevenk> < https://launchpad.net/bugs/933938 >02:46
wgrantThanks.02:46
wgrantHmmm03:02
wgrantBMP needs product denormed.03:02
StevenKIt does?03:02
wgrantStevenK: Even without access checks the pending MP query is 220ms for launchpad.03:04
wgrantBecause it has to do a nested loop03:04
wgrantTo find the MPs for each branch.03:04
wgrant(it could potentially do a hash join, but that wouldn't be significantly better)03:04
StevenKwgrant: So, looks like r15572 is bad, it causes an OOPS.03:09
wgrantStevenK: Link?03:09
StevenKhttps://qastaging.launchpad.net/ubuntu/+milestone/ubuntu-12.04-beta-1 and https://oops.canonical.com/oops/?oopsid=OOPS-7ec83b58aab8ad14b1b194bf93116da603:10
wgrantOh03:11
wgrantI didn't think to look in the template03:11
StevenKGuess deploying today was too much to hope for. :-P03:12
wgrantStevenK: Please revert that rev.03:12
StevenKAnd sinzui is *still* landing stuff03:51
StevenKwgrant: r15572 has been rollbacked in r15583.03:52
StevenKwgrant: What does ComponentLookupError: (<InterfaceClass lp.services.webapp.interfaces.IPlacelessAuthUtility>, '') mean?04:56
wgrantStevenK: You're in the wrong layer.05:45
wgrantStevenK: DatabaseLayer rather than DatabaseFunctionalLayer, most probably.05:45
wgrantOr UnitTests rather than DFL05:45
StevenKwgrant: Yeah, AuditorLayer inherited from BaseLayer. I moved it up the stack.05:47
StevenKSigh, I might need a commit() or to move it further up than LFL05:53
wgrantStevenK: Why?05:53
wgrantWhy's it interacting with the auth system at all?05:53
StevenKwgrant: TestCaseWithFactory05:55
wgrantAh05:55
wgrantStevenK: Er05:55
wgrantStevenK: What are you trying to do?05:55
wgrantA test of auditorlayer probably shouldn't be using the factory.05:55
wgrantAnd a test of something using the auditor shouldn't be in AuditorLayer.05:56
wgrantIt should probably be in LaunchpadFunctionalLaye05:56
wgrantr05:56
wgrantWith the minor issue that this screws everything up.05:56
wgrantBecause a lot of actions are going to want to talk to the auditor.05:56
wgrantSo this will make just about every test require LaunchpadFunctionalLayer.05:56
wgrantWhich is slow and stupid.05:56
lifelesswhy does auditor laye rneed lp functional layer ?05:57
wgrantWe don't run other services in DatabaseFunctionalLayer05:57
wgrantSo anything needing the auditor probably has to use LaunchpadFunctionalLayer05:57
lifelessnot what I meant05:58
lifelessthe layer itself should inherit baselayer only, surely?05:58
wgrantRight05:59
wgrantAnd that's fine.05:59
wgrantExcept StevenK apparently needs the factory.05:59
wgrantSo the test probably shouldn't be in AuditorLayer05:59
StevenKwgrant: I'm trying to staple IPackageUpload.acceptFromQueue() to send a POST to a configured auditor instance if a feature flag is set.06:13
wgrantStevenK: Right, that needs DatabaseLayer, FunctionalLayer and AuditorLayer06:15
wgrantWhich probably means LaunchpadFunctionalLayer06:15
StevenKSo I could certainly decouple this, and have a function that only requires auditor and test it with AuditorLayer, and then have a PU test that mocks out that function call06:15
wgrantWe don't have an existing pattern for this.06:16
wgrantWe probably should.06:16
wgrantstub: Hi06:17
StevenKWell, my thought is if everything is going to be throwing data at the auditor (and retrieving it, but meh, details), we should make it easy06:17
stubyo06:18
wgrantStevenK: Certainly06:18
StevenKwgrant: I can hold off if you, lifeless and I want to talk about how to best to do that.06:18
wgrantstub: I have three index patches up for review, if you have time today.06:18
StevenKI've spent a few hours on this, but I can toss it away for a better idea when we have a plan06:19
lifelessStevenK: nothing sounds alarming about what you are describing06:19
StevenKlifeless: Which bit? A function call in acceptFromQueue that is mocked out?06:20
lifelessStevenK: 18:13 < StevenK> wgrant: I'm trying to staple IPackageUpload.acceptFromQueue() to send a POST to a configured auditor instance if a feature flag is set.06:20
lifeless18:15 < wgrant> StevenK: Right, that needs DatabaseLayer, FunctionalLayer and AuditorLayer06:20
lifeless18:15 < wgrant> Which probably means LaunchpadFunctionalLayer06:20
lifelessStevenK: I don't see much point in mocking internally as well06:20
wgrantlifeless: This means basically every Launchpad test will start up the librarian etc.06:21
wgrantWhich is insane.06:21
wgrantBecause that's slow and pointless.06:21
lifelessStevenK: we've made auditor's test environment lightweight precisely to avoid spurious mocking06:21
lifelesswgrant: why does it mean that ?06:21
wgrantBecause LaunchpadFunctionalLayer means that06:21
lifelessand what means LFL here ?06:21
wgrant16:20:45 < lifeless> 18:15 < wgrant> StevenK: Right, that needs DatabaseLayer, FunctionalLayer and AuditorLayer06:21
wgrant16:20:48 < lifeless> 18:15 < wgrant> Which probably means LaunchpadFunctionalLayer06:22
lifelesswgrant: for the test that StevenK is writing.06:22
lifelesswgrant: which is >< 'basically every Launchpad teset'.06:22
lifelesswgrant: you'll need to unpack what you see.06:22
StevenKwgrant is predicting the future06:22
wgrantlifeless: So, I have these methods06:22
wgrantOn model objects06:22
stubI can never find my reviews-to-do page06:22
wgrantThey talk to the auditor service06:22
wgrantThe auditor service is not there, because we don't mock it out :(06:22
wgrantI die.06:22
wgrantstub: http://code.launchpad.net/~stub/launchpad/+activereviews06:23
stubta06:23
wgrant(you could be forgiven for not finding it; there is no link)06:23
lifelesswgrant: same same for Librarian etc.06:23
wgrantlifeless: Except many fewer things talk to the librarian implicitly.06:24
wgrantlifeless: Basically everything will talk to auditor.06:25
wgrantImplicitly.06:25
StevenKlifeless: Yes, but you don't need the librarian for say, merging a person, deleting a team, copying a package ...06:25
stubwgrant: Didn't we already create a trigram index somewhere, and install the extension?06:25
lifelessok, so06:25
lifelessthis relates back to using storm objects vs POP model objects06:25
lifelessetc06:25
lifelessetc06:25
wgrantstub: That's this branch that we discussed but never got reviewed.06:25
stubok06:26
lifelessI've -no- objection to tested fakes06:26
wgrantlifeless: Sure, but it's a big regression from what we have now.06:26
lifelessif you want to write one.06:26
wgrantThis fake can indeed be so fake that it does nothing at all, I suspect.06:26
lifelesswgrant: define big; how many ms to start up the auditor test fixture, how many ms to send the reset POST to it, how many ms to audit an item06:26
wgrantlifeless: +11s to start the librarian and 4s for rabbitmq06:26
wgrantSince we don't have fixtures.06:27
lifelesshowever, if you write one, please make it a tested fake. Do not use a mock06:27
lifelesswhy is the librarian and rabbitmq +times here ?06:28
lifeless- why are they not already being used ?06:28
lifeless- if they aren't being used, why are they being dragged in?06:28
wgrantlifeless: We don't have fixtures, and we probably don't want len(resources)! test layers.06:29
wgrantlibrarian isn't used by much code, fortunately, so it is rarely required unless you're molesting Soyuz or using makeBugAttachment.06:30
lifelessI'm thoroughly lost.06:30
lifelessThis seems simple to me.06:30
lifelessAdd the layer needed with the minimal closure of dependencies, per the existing pattern.06:31
lifelessWhich has problems yes, but works.06:31
wgrantIt's also an excellent path to a 12-hour test suite :/06:31
lifelessYou seem to be saying we should do something different, which we could, but it has the problems you articulate of bringing up unneeded daemons.06:31
lifelessdoing what we currently do of making a tailored combination of layers, is much less of a latency problem for tests.06:31
lifeless-> dinner.06:32
wgrantstub: btw, did you see that qastaging and staging were failing to connect to their respective DBs for >24h over the weekend? staging should have been down, but qastaging should not.06:32
wgrantlifeless: Well06:32
wgrantlifeless: We're going to have one layer for services that are expensive.06:32
stubwgrant: yeah, that was me06:32
wgrantAnd another layer for things like auditor that aren't expensive yet but will probably be in 6 months...06:32
wgrantstub: Ah, good.06:32
wgrantstub: I was a bit worried, since code+logs said it should not have been down.06:32
stubwgrant: THe staging rebuild scripts work fine now apart from controlling pgbouncer, I need to fit that in somewhere06:32
wgrantstub: Yeah. I guess we need to divorce them.06:33
stubyeah06:33
stubalas standard debian startup scripts don't support that, so need to create those and get them blessed06:34
wgrantYeah06:36
stubwgrant: I'm thinking we might want a test helper that confirms a query uses an index.06:42
stubbut there might be false positives since we would need to disable sequential scans.06:43
wgrantstub: The lack of stats makes them pretty difficult to do, even with seqscans disabled.06:59
stubhmm...07:00
stubso maybe a smoke test to run on staging07:00
wgrantPossibly, yeah.07:01
wgrantIt'd be great to have *something* :/07:02
wgrantstub: Yeah, the idx2s will get renamed in the patch that deletes the old ones.07:06
lifelesswgrant: so your conclusion is, that StevenK should add just the services he needs to this test, not all of launchpadfunctionaltestlayer07:09
wgrantlifeless: Well07:11
wgrantlifeless: That solution is neither practical nor ideal.07:11
wgrantSo I would discourage it.07:11
StevenKI've decided to write an AuditorClient so we can abstract out all of the rubbish from say, packageupload.07:14
StevenKOtherwise wgrant *will* murder me.07:14
wgrantConsider it done.07:14
wgrantstub: So, feel like trying to apply the trigram stuff live?07:14
wgrantOh, bah, backups.07:14
stubya, dem backups07:15
wgrantstub: We almost need to move the backup, actually07:16
stubMight more to hot backups one day but they are harder to work with07:16
wgrantstub: It's been finishing dangerously close to fdt lately.07:16
wgrantnightly.sh completed Sun Jul 8 09:48:03 UTC 201207:16
wgrantnightly.sh completed Sat Jul 7 09:56:39 UTC 201207:16
stubwebops can reschedule it. Sounds like moving it forward another few hours would be good.07:17
stubunless we have wrapped around :P07:17
StevenKMoving it forward would completely block FDT07:17
wgrantStevenK: Forward != backward07:17
stubforward as in earlier, the other forward07:17
StevenKTime iz hard, let's go shopping.07:18
lifelesswgrant: ideal involves fixtures, more or less; practical it is though.07:28
wgrantlifeless: It's not particularly practical, because we don't currently have a way to specify a subset of services without drawing arbitrary lines or introducing len(services)! layers07:29
lifelessthere is little consequence of adding addtional layers.07:32
lifelessand we don't need len(services)! layers, thats the pathological case which we are not at.07:32
wgrantWe'll see.07:33
lifelesswgrant: I appreciate you feel strongly about this, but the data I see don't support the conclusion you're pushing.07:33
wgrantlifeless: I want to avoid repeating the problem we have now where you can have this nice fast test.07:33
wgrantThen you realise you need a bugattachment07:33
wgrantAnd now your test takes 20s to start.07:33
lifelessI understand. The general solution is to finish the separation of store and logic layers07:34
lifelessbring in tested doubles across the board, have no ORM involved in logic tests, only in store and fetch tests.07:34
lifelessand treat the orm and other services homogeneously07:35
wgrantRight.07:35
wgrantAlthough s/finish/start/07:35
lifelessian has started it :)07:35
lifelessthough I'm still waiting on the report IIRC.07:35
wgrantIn other news, I think I might try to deploy my BugSummary patch tonight.07:35
lifelessmy point though, is that holding new work hostage to the general solution just slows down the new work, which is only incrementally worse - and locally at that, not globally - and doesn't improve the overall situation at all.07:36
wgrantlifeless: It will soon be pretty much global.07:36
lifelesswhen in fact, the new work is*part* of the general solution, though its quite circuitous to get there solely through new work.07:36
lifelesswgrant: how long does auditorfixture take to come up for you?07:37
wgrantI've not dared to try.07:37
wgrantBut I imagine it's at least a few hundred milliseconds07:37
lifelessso, get data!07:37
adeuringgood morning07:44
=== adeuring changed the topic of #launchpad-dev to: http://dev.launchpad.net/ | On call reviewer: - | Firefighting: - | Critical bugs: 4.0*10^2
jamjml: did you get a chance to look into the httplib thing? it is weird, I'm seeing it trying to go to an "http://" URL (api.launchpad.dev/devel) trying to get the WADL. I wonder if setting disable_ssl_certificate_validation confuses things if the URL *isn't* http08:51
jamah, ok, we get a redirect to the HTTPS side09:11
jamjml: ugh.... just ugh. wsgi_intercept is screwing us09:25
jamit is overriding httplib2.HTTPSConnectionWithTimeout the 'variable' with class wsgi_intercept.httplib2_intercept.HTTPS_WSGIInterceptorWithTimeout09:25
jamand then this check in httplib2: issublcass(connection_type, HTTPSConnectionWithTimeout) fails09:26
jambecause we got the connection_type from SCHEME_TO_CONNECTION, which wsgilib did *not* override09:26
* jam goes in the corner and cries...09:26
jamand with upgrading wsgi_intercept to 0.5.1, the tests now pass09:33
jamfinally09:34
jmljam: no, sorry.09:34
jmljam: I'm glad they're passing now. I'm sorry the world is so horrible.09:35
=== dpm is now known as dpm-bbl
jamjml: just so many layers of indirection10:15
jamand not expecting monkey patching changing the class definitions10:15
jampdb + stepping helps a lot10:15
jmljam: there's a lot of action-at-a-distance in Launchpad's test suite.10:15
jamjml: yeah, and it is also encouraged by the libs. lazr.restful uses launchpadlib which wraps httplib2 which actually uses httplib, but wsgi_intercept comes in the middle, while ...10:17
psychognitesir i have a project to submit on ubuntu showdown10:26
psychognitei have created openpgp keys and also signed in code on coduct ...what to next10:27
psychognitesir please help me out .....10:27
psychognite!!10:27
jmlpsychognite: next up you need to create a PPA, I think.10:28
jmlpsychognite: oh right, you're on #ubuntu-app-devel, that's a much better place to get help.10:29
psychognitesir i have created ppa then how to upload files their10:29
=== dpm-bbl is now known as dpm
rick_h_morning10:55
=== matsubara is now known as matsubara-afk
jamcjwatson: any chance to get an update about the maverick disk-space-cleanup? Even just point me in the right direction to run the script myself. I just didn't understand what files you were using to compare against11:46
jamcjwatson: also, I'd like to get a feel for what we could do in launchpad to make it easier for everyone to do this in the future11:47
cjwatsonjam: I'll try to do it today.  I'm comparing against all the Packages files that are actually published in the archive - you know, real data ;-)11:57
jamcjwatson: sure, but what is the actual files? I think you mentioned not downloading the stuff from old-releases.ubuntu.com11:57
cjwatsonjam: I think this should always require Ubuntu signoff, though - I don't think it's OK for Launchpad staff to delete Ubuntu files out of the librarian without asking us first11:57
jamcjwatson: basically, I'd like to at least file bugs that could be approached in the future to make things easier11:57
cjwatsonjam: Packages files are well-known files published in the Ubuntu archive11:57
cjwatsonYou could get them from the dists tree on old-releases if you liked - I just used cocoplum (ftpmaster) since that's quicker for me11:58
jamcjwatson: you just grab the individual package listing for each arch?11:58
jamand cat them together?11:58
=== benji changed the topic of #launchpad-dev to: http://dev.launchpad.net/ | On call reviewer: benji | Firefighting: - | Critical bugs: 4.0*10^2
cjwatsonIt was a bit more than that.  I'll keep notes and mail you11:58
jamcjwatson: thanks, along with the script you run would be good to get it all together.11:59
cjwatsonBut this is a sanity check that ought to be performed on the Ubuntu side by somebody familiar with the archive layout12:00
jamI'm happy to have Ubuntu in the loop12:00
cjwatsonI don't want to over-mechanise it since the point is to be a sanity check against database queries12:00
cjwatsonTotally scripting it so that it can be run with no understanding of the archive layout defeats the purpose slightly, I think :)12:01
adeuringrick_h_: could you please review this MP: https://code.launchpad.net/~adeuring/lazr.jobrunner/bug1015667-2/+merge/113962 ?12:09
adeuringrick_h_: ping12:29
jamabentley: /wave . I'm not sure if you're the person to ask, but 'sendbranchmail' seems to be stuck running for 3.25hrs. Is it safe to just kill it?13:30
abentleyjam: otp13:30
abentleyjam: I think it's safe.  It runs a series of jobs, so at worst one job fails.13:44
jamdpm: just a quick check about where translations are at, are we still opening it up?14:08
jamabentley: so it looks like it took about 3.5hrs and 1.5GB of memory to process a mysql branch, but did, eventually, succeed. Is there any way to get visibility into what happened?14:43
jam012-07-09 13:31:39 INFO    Ran 1 RevisionMailJobs.14:44
jam012-07-09 13:31:39 DEBUG   sendbranchmail ran in 13111.023446s (excl. load & lock)14:44
jamafter that finally finished, the other jobs look like "ran 60 jobs in 180s" etc.14:45
abentleyjam: I guess you could look into the mail server logs to see whether it was actually sending lots of email.  That's all I can think of.14:45
jamabentley: well, ps at the time basically said it was using 100% CPU for those 3 hours14:45
jamwe caught it just before it finished14:45
jamhttps://pastebin.canonical.com/69662/ (215min of CPU usage, if I'm reading that correctyl)14:46
abentleyjam: It may have been walking the revision tree.  Let me refresh my memory.14:47
jamabentley: it does look like the recent commits could have been big: https://code.launchpad.net/~mysql/mysql-server/5.514:50
jama few 'empty weave merge of 5.1-security => 5.5'14:50
abentleyjam: So I don't see a smoking gun.  If this was a RevisionAddedJob, it could be down to find_unique_ancestors, but if it's a RevisionMailJob, I don't think it can.14:54
abentleyjam: Ah, it's not distinguishing between types in the log message, so it could have been a RevisionAddedJob.14:55
jamabentley: yeah, they seem to just get appeneded14:56
jamthe log file doesn't have any "Ran ? RevisionAddedJob' so I think it is just len(queue) and queue has both types14:57
jamabentley: thanks for poking into this with me. I'm at EOD now, so no need to dig much further. Though I guess making sure the process doesn't get blocked in the future would be good.15:03
benjigary_poster: I'll get it15:19
abentleyadeuring: We do late imports of Celery-related things precisely *because* importing from Celery has the side effect of configuring Celery.15:32
adeuringabentley: right. But doing an import twice -- in two tests -- does not work well: The second import is ignored, if I am not completely mistaken.15:33
abentleyadeuring: Yes, of course.15:33
adeuringabentley: and we also need the late imports to set up the proper config module, in tests as well as in real life.15:34
abentleyadeuring: This is a bug in celery that was going to be fixed  in the next release.15:34
adeuringabentley: ok, but for now we have to live with the problem, I'm afraid...15:34
abentleyadeuring: The tests were written under the assumption that there was a specific configuration used for the tests.15:35
abentleyadeuring: And only the celeryd configurations would vary.15:36
adeuringabentley: ok, that's fine for most tests, but the clear-aqueues script should be tested with two configs, I think15:36
adeuring...like celeryd15:36
abentleyadeuring: is there any advantage in using the running context manager instead of using subprocess.call or something?15:40
adeuringabentley: it just saves the wait() call15:42
abentleyadeuring: But communicate already waits for the process to terminate.15:47
adeuringabentley: ouch, yes, youa are right. So I'll revert running() and use Popen  directly15:48
abentleyadeuring: Cool.15:48
adeuringabentley: chnages pushed15:54
abentleyadeuring: r=me16:01
adeuringabentley: thanks16:01
abentleyadeuring: btw, Celery 3.0 is out now.16:06
=== salgado is now known as salgado-lunch
=== salgado-lunch is now known as salgado
rick_h_sinzui: ping, have a few min?17:14
sinzuiI do17:15
jambenji: any chance you could look at: https://code.launchpad.net/~jameinel/launchpad/py27-introduction-1020667/+merge/113938 it is mostly just updating versions.cfg to newer packages, and then updating bin/test to pass an env var so that httplib2 doesn't try to check the ssl cert during the test suite.17:21
jam(Its the last patch for python-2.7 compatibility)17:21
benjijam: sure17:21
benjicool17:21
jambenji: thanks, what is the launchpad pqm email address again? launchpad@pqm.canonical.com?17:34
jam(I ran it through ec test already, since I wanted to be safe with package updating, and I don't think I have lp-land configured correctcly)17:35
benjijam: right, launchpad@pqm.canonical.com17:37
jamthanks17:38
=== benji changed the topic of #launchpad-dev to: http://dev.launchpad.net/ | On call reviewer: - | Firefighting: - | Critical bugs: 4.0*10^2
=== salgado is now known as salgado-afk
mwhudsonis there a js version of launchpadlib?21:52
wallyworld_sinzui: mumble hates me this morning. it refuses to connect22:04
sinzuiYet I see you in mumbe?22:04
wallyworld_sinzui: the mumble window becomes non responsive and takes 100% cpu22:05
sinzuiah22:05
sinzuiI had to restart when that happened. I think access to audio was broken22:05
StevenKwallyworld_: I've seen that -- it seems to happen when you quit mumble and the process does not die.22:25
wallyworld_StevenK: it wasn't running this time22:26
StevenKwallyworld_: Not even in 'ps aux | grep mumble' ?22:26
mwhudsoni think mumble just decided to hate people every now and again22:26
wallyworld_StevenK: nope, nothing there22:26
StevenKI'd suggest 'strace', but you'll hate me.22:27
sinzuiwallyworld_, https://bugs.launchpad.net/launchpad/+bug/20681122:38
_mup_Bug #206811: Bug feeds for BugTargets need to ensure a sufficient number of bugs are fetched <feeds> <lp-bugs> <tech-debt> <Launchpad itself:Triaged> < https://launchpad.net/bugs/206811 >22:38
wgrantwallyworld_: +        return getUtility(IBugSet).getDistinctBugsForBugTasks(22:48
wgrant+            self.context.searchTasks(params), self.user, limit=5)22:48
StevenK  Running:23:58
StevenK lp.registry.tests.test_sharingjob.RemoveArtifactSubscriptionsJobTestCase.test_admins_retain_subscriptions^C^C^C^\zsh: quit (core dumped)  bin/test -vvt test_sharingjob23:58
* StevenK stabs things.23:58
sinzuiFinally. I can see an icon on the bug listing that does not lie or hurt my eyes23:59

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