/srv/irclogs.ubuntu.com/2014/06/25/#juju-dev.txt

davecheneywallyworld: axw bot is still being a prick01:04
davecheneydid jams' fix to the data race in the api server get fixed ?01:04
wallyworldsadly yes01:04
wallyworldi think so01:04
wallyworldthere's 2 mongo races that i think are the cause of the remianing issues01:04
axwI'll take a look at it this morning01:04
axwoh01:04
axwwallyworld: new ones though?01:05
axwbecause it wasn't this bad last week01:05
wallyworldaxw: not sure, haven't looked in detail but there's been various changes this week01:05
wallyworldaxw: could you take a look at this first up, it attempts to fix another critical blocking 1.19.4 https://github.com/juju/juju/pull/15501:06
axwwallyworld: sure, looking01:06
wallyworldta01:06
davecheneywallyworld: haven't been able to land a branch all morning01:08
wallyworlddavecheney: so last week, we had the 2 intermittent mongo failures which only happened every so often. lots has changed this week. stuff has broken :-(01:10
wallyworldi do think we've got systemic race conditions in our code which no one has really got a handle on01:10
wallyworldand/or mongo is shit01:11
axwwallyworld: do you know why the peergrouper is getting an empty set of machines in the first place?01:14
wallyworldaxw: not sure, it's all quite involved, i guessed that it could have been due to stuff initialising and replicaset stuff not being ready (likely during upgrade from non ha to ha env) and timer inside worker triggers publish of machine addresses but they aren't known yet01:16
wallyworldthere are 2 triggers to publish - machine watcher and timer01:16
axwwallyworld: then I would expect it's just going from empty to empty? hmm. anyway, I'll LGTM because it doesn't make anything worse AFAICT01:17
wallyworldaxw: yes but the watcher won't have fired01:18
wallyworldmy analysis is in bug comment 5, i can't see an other reason for the issue :-(01:20
davecheneywallyworld: ok, i'll focus on finding those race conditoins01:27
wallyworlddavecheney: we'll look as well01:27
wallyworlddavecheney: the 2 i was aware of were one in bug 1305014 and another inside the apiserver code (not sure of bug off hand)01:28
_mup_Bug #1305014: panic: Session already closed in TestManageEnviron <intermittent-failure> <test-failure> <juju-core:Triaged by rogpeppe> <https://launchpad.net/bugs/1305014>01:28
* thumper goes to make a coffee01:33
axwdavecheney wallyworld: jam's fix has not landed02:05
axwmay explain why I'm getting panics and the race detector isn't happy with cmd/jujud02:05
wallyworldoh, bollocks, i thought it had02:05
davecheneyaxw: what can I do to help land that today02:06
wallyworldaxw: davecheney the fucking bug was marked as fix committed02:07
wallyworldhence i thought it had landed02:07
davecheneywallyworld: yay issue tracking02:07
wallyworldbut github says otherwise02:07
axwdavecheney: merge was attempted and tests failed, could just try again. rogpeppe has made added a remark about the solution being non-ideal02:08
wallyworldi've hit the "merge" button again02:08
wallyworldwe can fix the non-ideal bit after it lands, we need to get this release out imo02:08
davecheneyseconded02:08
axwsgtm02:08
axwtrivial review please: https://code.launchpad.net/~axwalk/gwacl/vnet-location-docalignment/+merge/22425402:10
wallyworldlooking02:10
wallyworldaxw: dumb question, how is 2012 more recent than 2013?02:11
axwwallyworld: "which is actually older than what was in the code."02:12
wallyworldyeah read that but still don't understand02:12
axwwallyworld: 2012-whatever is the most recent published version for that API02:12
wallyworldso we were using an incorrect date?02:12
axwwallyworld: yeah02:12
wallyworldok02:12
axwI don't think it actually matters, but I'd rather go by the docs02:13
wallyworldyup02:13
thumperdavecheney: re: https://github.com/juju/juju/pull/15602:27
thumperdavecheney: axw has approved but I have a few questions02:28
thumperdavecheney: just letting you know02:28
davecheneythumper: sure02:29
davecheneythumper: i'm not trying to land anything til the race fix lands02:29
thumperdavecheney: done with comments02:31
davecheneythumper: yup02:31
davecheneyi see your comments02:31
davecheneyi think oyu found one of my TODo's there02:31
davecheneyfwiw, almost all this stuff was just a string slung straight to the api server02:31
davecheneybut I will adjust the signatures to mandate the correct type02:32
davecheneytest 002:32
davecheney... Panic: Couldn't create temporary directory: mkdir /tmp/gocheck-3784560248718450071: file exists (PC=0x41078D)02:32
davecheneywowo02:32
thumperhaha02:34
thumperpseudo-random02:34
thumperdavecheney: should it be the actual type or an interface?02:35
thumperjust wondering02:35
davecheneythumper: i'm thnking the concrete type02:35
thumperok02:35
davecheneywe want to say "only machine tags here"02:35
davecheneyor units02:35
davecheneyor whatever02:35
* thumper nods02:35
thumperThis gives the compiler control rather than runtime assertion02:36
thumperbetter I think02:36
davecheneythumper: yup02:37
davecheneyto fix this i'll need to change most of hte places where we have a struct like02:38
davecheneytype Machine struct { tag names.Tag }02:38
davecheneyto02:38
davecheneytype Machine struct { tag names.MachineTag }02:38
davecheneyand this is a good thing02:38
davecheneythumper: consider yourself nagged for that sprint02:42
davecheneyits < 30 days02:42
thumperack02:42
=== _mup__ is now known as _mup_
menn0bodie_: I just finished reviewing 14102:56
menn0all good from my perspective02:57
davecheneywallyworld: http://juju-ci.vapour.ws:8080/job/github-merge-juju/252/console03:10
davecheneywhat ?03:10
davecheneytests didn't fail03:10
davecheneydid someone nuke this build ?03:11
wallyworlddavecheney: looks like connection to ec2 instance disappeared half way through03:11
wallyworldfaaaark03:12
wallyworldretry i guess03:12
bodie_menn0, good to hear :)03:12
sinzuiwallyworld, the utopic ami expired a few hours ago. I just configured tests to use that to fix on test...maybe i need to check the ami used by git-merge-juju03:32
wallyworldsinzui: ah, could be it03:33
wallyworldalthough i thought we ran trusty03:33
wallyworldor even precise actually for the tests03:33
wallyworldyes, i'm sure it's precise03:33
sinzuiwallyworld, yeah, and trusty tests are happy. I will double check03:33
wallyworldok, but it's waaaay past your eod03:34
sinzuiwallyworld, oh...03:35
sinzuiwallyworld, I think there is a correlation between git-merge-juju and a number of hung instance from a few hours hours ago. I had to terminate them.03:35
wallyworldreally? oh03:36
wallyworldmaybe you terminated a git-merge-juju one as well?03:36
sinzuiwallyworld, I have request an additional 20 instances.03:36
wallyworldgreat03:36
sinzuiMaybe I can also update the tests to switch to hp which is very good now that we addresses the ram instance ratio03:37
* sinzui forces a rebuild03:38
wallyworldi think that couldn't do any harm03:38
wallyworldmgz is moving to get a nailed up hp cloud instance working to run the tests03:38
sinzuiI can do that in 30 minutes.03:39
sinzuiI can get slaves and slave helpers up quickly for trusty.03:40
sinzuiI have failed to create a fat 386 to test local deploy. I am pondering the consequences of never testing that 386 local provider works.03:41
wallyworldi don't think too many people would be using it03:41
sinzuia surprising number download it from the ppa03:42
wallyworldonce the nailed up instance is there, mgz needs to do a little script tweaking but it should be easy03:42
wallyworldwow, ok03:42
wallyworldi386 is so last century03:42
wallyworlddecade maybe03:43
sinzuiwallyworld, https://pastebin.canonical.com/112317/03:48
wallyworldjeeez, ok03:48
* wallyworld is surprised03:48
sinzuiIndeed. abentley intends to break the numbers down by week to find proper trends is adoption and decline03:49
sinzuiyour beta tester numbers are still generating03:50
wallyworldok03:51
wallyworldi'd be interested in seeing those when done03:52
menn0potentially silly question: are juju controlled machines (specifically state servers) able to SSH between each other? I'm thinking about something that would involve distributing a file to all state servers.03:53
sinzuimenn0, They don't have the private keys03:56
menn0sinzui: ok thanks. (I think you mean the public keys right?)03:57
sinzuimenn0, they have public keys, that is why juju ssh workd03:57
sinzuimenn0, there isn't a private key on any of the juju machines that would allow an agent to ssh to another machine03:58
menn0sinzui: got it03:58
menn0thanks03:58
* menn0 should have just looked in ~/.ssh ...03:58
sinzuimenn0, also, manual provision can happen across networks, so the design is that the agents can all find the state server, but not necessarily the each other03:59
sinzuijuju ci's state server cannot reach the lab, but the 4 machines I provisioned there can reach the state server.03:59
menn0sinzui: ok that's good to know.04:00
menn0I'm wanted to get a file generated on one state server to all other state servers04:00
menn0well that's one design I'm looking at04:00
sinzuimenn0, surely the master state-server is known to all machines. so all machines can ask for a task to pickup the file04:01
sinzuiwallyworld, beta testers https://pastebin.canonical.com/112318/04:03
menn0sinzui: right, so you're thinking: a state server generates the file, tells the master to come and get it which it does, and then pushes it out to all other state servers.04:03
sinzuimenn0, I think that is possible04:04
menn0that could work04:04
sinzuimenn0, My experience is from observation. I really don't know how juju works.04:04
wallyworld1.11.2 was big04:05
menn0sinzui: alternatively I think I can make this work by adding extending the API a little...04:05
sinzuion the other hand, I have done the neigh impossible because I didn't read the code http://curtis.hovey.name/2014/06/10/building-trans-cloud-environments-with-juju/04:05
menn0sinzui: :)  thanks for your thoughts. you've nudged me in the right direction.04:07
sinzuiwallyworld, It you stare at the 1.19.x numbers you can see the transition from precise users to trusty users.04:11
* wallyworld needs another coffee before staring at numbers04:11
bodie_if there's any chance I could get a LGTM on https://github.com/juju/juju/pull/140 it would be quite helpful in moving Actions forward :)04:11
bodie_(LBTM equally appreciated, though)04:12
wallyworldbodie_: doesn't look like william's issues with tags and canAccess function have been fixed?04:17
waiganido we have any helper functions for merging two slices of structs, or should I just do it by hand?04:30
sinzuiwallyworld, Are you getting more information about bad tests from walk-unit-tests-amd64-trusty than for the other unittests?04:38
wallyworldsinzui: the idea was that we'd try and solve the intermittent failures. that job was useful but with the switch to running the tests on ec2 instead of canonistack/tarmac, the main landing tests have become unreliable instead :-(04:40
wallyworldwe can pass that job until things settle down a bit04:40
wallyworldpause04:40
sinzuidone04:40
wallyworldok, ta04:40
waiganithumper: I've got a question, hangout? should be quick04:46
thumpersure04:46
waiganithumper: https://plus.google.com/hangouts/_/g4rgbccmbg5lchy6qcx7hsny6qa?hl=en04:46
bodie_wallyworld, I'll have to have a look tomorrow morning, well past eod here, but I think I've addressed tags.  I'm not totally certain what he was looking for with canAccess04:54
bodie_for the queries from api to apiserver, everything is encapsulated by tags04:54
wallyworldok04:54
bodie_thanks for having a look!  good night all04:55
sinzuiwallyworld, I need to sleep. I am a little concerned that local-upgrade on precise is not passing. maybe there is something in one of these logs if CI continues to fail http://juju-ci.vapour.ws:8080/job/local-upgrade-precise-amd64/1414/04:59
wallyworldok, thanks, we'll look04:59
davecheneythumper: wallyworld05:39
davecheney[LOG] 0:02.374 DEBUG juju.environs.simplestreams fetchData failed for "http://127.0.0.1:47994/v1/1/juju-test-e76bfc6736366a8a/images/streams/v1/index.json": failed to GET object images/streams/v1/index.json from container juju-test-e76bfc6736366a8a05:39
davecheneycaused by: Resource at http://127.0.0.1:47994/v1/1/juju-test-e76bfc6736366a8a/images/streams/v1/index.json not found05:39
davecheneycaused by: request (http://127.0.0.1:47994/v1/1/juju-test-e76bfc6736366a8a/images/streams/v1/index.json) returned unexpected status: 404; error info: 404 Not Found05:40
davecheneyThe resource could not be found.05:40
davecheneyan exmple of the random test failures I get on my machine05:40
wallyworldi'd need to see the whole log of the filed test and which test it is05:41
=== vladk|offline is now known as vladk
wallyworldaxw: if you get a chance at any point, could you look at https://github.com/juju/juju/pull/124 ? william is happy with the implementation but hasn't had time to do a more detailed review06:01
axwwallyworld: yep, no worries06:02
wallyworldta, i have to go out for an hour or so, back later06:02
axwadios06:03
vladkdimitern: morning, I started to work on NetworkInterfacesWatcher. I am going to change NetworkInterfaceDoc according to the final draft. Is it ok?06:07
dimiternvladk, better not i think, because we'll need to add subnets and other things as well06:12
dimiternvladk, we can still watch ifaces as they are though06:13
vladkdimitern: so I filter interfaces by machineId, rather than _id?06:19
dimiternvladk, what do you mean?06:21
dimiternvladk, i suppose there will be a machine.WatchInterfaces() method in state, returning a StringsWatcher reporting the ids of all interfaces for that machine, as they are created, enabled, disabled, or removed06:22
dimiternvladk, you do need to add the IsDisabled flag to the iface doc though, but just that - for the other things that need changing, i think we should start with networks and subnets first, then the rest06:23
vladkdimitern: to read initial set of interfaces I need filter interfaces from the sate by machineId06:28
dimiternvladk, yes, the interface doc has a machineId - you can use that, right?06:35
vladkdimitern: yes06:35
TheMuejam: ping07:59
jamTheMue: pong08:07
TheMuejam: seen the latest comments on https://github.com/juju/juju/pull/150 ?08:08
jamI haven't, I'll go look08:10
TheMuejam: we have different levels to fix this issue. from low-level inside the jsonrpc package up to the command. I prefer ParseSettingsStrings in charm.Config08:11
jamTheMue: well, I posted that you might even go for the 'schema' package, which is the stuff that validates already08:12
jamhowever, I really don't want us to get too derailed here, this is mostly a passing-by stuff, and we thought things were working differently than they are.08:13
jamso for now, document that we get \ufffd when you pass in invalid binary data (part of the actual api Client level tests), so that we at least assert the current behavior and know if we change it.08:13
jamand I can live with whatever other results we get, as it won't be *worse* than what we've lived with forever.08:13
jamTheMue: does that make sense to you?08:14
TheMuejam: so you don’t expect cmd.Main to return something else than success? because we simply accept and document this behavior?08:17
TheMuejam: as the json encoding always „corrects“ the invalid sequence to \ufffd08:18
jamTheMue: I can live with it, given we've been living with it forever.08:18
jamTheMue: it isn't what I prefer, but we don't have to fix everything, we have more important things today08:18
TheMuejam: yes, that have been my thoughts this morning too. we only discovered this issue by thinking about it, but it never happened in reality so far08:19
TheMuejam: ok, then it makes sense and I’ll change the latest added tests to be a bit more explicit and documenting, so that in case of somebody having to fix this error is having a good base to start from08:20
jamTheMue: sounds good to me08:20
jamvladk: just a reminder that you're On-Call-Reviewer today08:21
jamand TheMue you're OCR tomorrow08:21
TheMuejam: tested the json marshalling yesterday evening a bit in both directions as well as taking a look into the source. interesting that they removed the error for invalid utf-8 with go 1.208:21
TheMuejam: thx for the hint08:22
jamTheMue: seems like a pretty significant change, but I guess that's what we have to live with.08:22
TheMuejam: yeah, especially as we use the websocket json codec directly, so we don’t even see the marshalled bytes. they are directly written to the socket08:23
* jam heads to lunch08:27
fwereadedavecheney, ping08:48
axwfwereade: https://github.com/juju/juju/pull/158  - FYI08:55
fwereadeaxw, thanks08:55
davecheneyfwereade: ack09:01
wallyworldmgz: standup?09:03
fwereadedavecheney, can we have a quick chat about where you're heading with the tags stuff? there's clearly plenty to like but I don't have a clear idea of the plan09:09
davecheneyfwereade: sadly no09:09
davecheneyi am not at home09:09
davecheneyfwereade: you speak to tim frequently09:10
davecheneyhe can represent me on this issue09:10
fwereadedavecheney, cool, thanks, I'll chat to him this evening09:10
wwitzel3morning all09:41
TheMuewwitzel3: morning09:50
perrito666morning09:59
TheMuevladk, jam: (hopefully) final changes https://github.com/juju/juju/pull/150. so please review (again)10:19
wallyworld__jam: not sure if my "fix" for that agent.conf issue will do any good or not but it's all i could come up with as something to try from reading the code10:36
dimiternjam, standup?10:46
=== wallyworld__ is now known as wallyworld
=== jcsackett is now known as idioteque
=== idioteque is now known as foobarbazqux
* fwereade bbiab12:12
perrito666stumble upon's logo reminds me of something12:33
sinzuiLooks like wallyworld's fix got upgrade broken local precise upgrades12:59
* sinzui reports bug12:59
=== alexisb_bbl is now known as alexisb
sinzuinatefinch, jam, fwereade, alexisb : We have a regression cause by the fix for upgrade bug reported yesterday https://bugs.launchpad.net/juju-core/+bug/133427313:08
_mup_Bug #1334273: Upgrades of precise localhost fail <local-provider> <precise> <regression> <upgrade-juju> <juju-core:Triaged> <https://launchpad.net/bugs/1334273>13:08
alexisbsinzui, lovely13:08
alexisbperrito666, wwitzel3, mgz ^^^ you guys available to take a look at this bug13:10
bodie_morning all13:15
natefinchwwitzel3: can we push our 1 on 1 to this afternoon?13:15
mgzalexisb: nothing is jumping out at me from the change or the log in the bug...13:15
=== anthonyf` is now known as anthonyf
alexisbmgz, well of course it couldn't be obvious that would be waaaay to easy ;)13:19
wwitzel3natefinch: sure13:19
sinzuimgz, The stall in the test log. where a single status call takes 10 minutes, then fails the test looks like the issue joyent upgrades had. Wallyworld said the fix was to ensure the state server got a sane list of addresses13:20
mgzsinzui: so, all the change does is return an error if the publish function is given an empty list13:22
mgzI don't particularly see how that regresses us... it must be something fun and side-effecty13:22
sinzuimgz #136 from wallyworld/ignore-empty-machine-addresses13:23
sinzuimgz, I am speculating...I really don't know13:23
alexisbsinzui, mgz : does that mean we think that this current bug is a result of joyent shotcomings?13:23
sinzuialexisb, no. I am just remarking that the fix for yesterdays critical broke another test in a similar way to a bug from last week13:24
sinzuialexisb, CI loves juju yesterday. I could release something from yesterday as 1.19.413:25
mgzsinzui: I don't see that error propogated back up in the logs anywhere either13:25
perrito666sinzui: github says https://github.com/juju/juju/commit/e01ac93e is a different commit13:25
mgzwhich it *should* be if that change actually affected anything13:25
alexisbsinzui, ok13:26
sinzuiperrito666, I give you the latest data, there have been two broken revisions, I just to give you a log from what fails 15 minutes ago13:28
perrito666sinzui: I was talking about "With the introduction of e01ac93e "Merge pull request #155 from wallyworld/peergrouper-publish-ignore-empty""13:28
sinzuiperrito666, http://juju-ci.vapour.ws:8080/job/local-upgrade-precise-amd64/ shows all the failed tests over the last 9 hours13:29
sinzuioops13:29
perrito666sinzui: as I say, the first failure comes from https://github.com/juju/juju/commit/e01ac93e0cbee312bf19ead78035a78ed242887113:30
sinzui #153 from davecheney/112-state-life-takes-a-tag is the one13:30
perrito666which is not wallyworld's tag13:30
perrito666s/tag/rev13:30
sinzuiI updated the bug13:31
perrito666mgz: you might find more answers there ^13:31
mgzthat does seem a little more promising13:31
alexisbmgz, is there an obvious fix or is a commit we should consider backing out for this current dev release?13:32
mgzI think we should consider backing out the change and seeing if that resolves the issue13:33
mgzthis might mean pain for upgrades later, this is an api change13:35
mgzof sorts13:36
alexisbmgz, that seems very reasonable to me, sinzui your thoughts?13:36
sinzuimgz...well, I have the tarball and installer from the previous pass. I can start the release now with fa4f610613:38
sinzuimgz, are you preparing to backout the rev to test?13:49
bodie_anyone happen to know whether fwereade is around?13:51
natefinchalexisb: I presume I stick around with Gabriel and skip tosca this week?14:01
alexisbnatefinch, yes14:02
=== foobarbazqux is now known as jcsackett
=== vds` is now known as vds
sinzuimgz, perrito666 Is anyone working on bug 1334273 or planning to backout the revision where the error started?14:45
_mup_Bug #1334273: Upgrades of precise localhost fail <local-provider> <precise> <regression> <upgrade-juju> <juju-core:Triaged> <https://launchpad.net/bugs/1334273>14:45
perrito666I am not, I was under the impression mgz was on it14:46
mgzsinzui: I can do the backout if we want that14:47
mgzI'm not completely sure it'll resolve the issue, but seems worth trying14:47
sinzuimgz we can do that or I release the version before it.14:47
sinzuimgz, if the test passes after the backing out, then we know the rev is bad, that is all we learn14:48
mgzsinzui: I guess the question is, do we want the wallyworld change that comes after14:48
mgzbecause *that* bug was the blocking cause previously right? (the thing wallyworld's change tries to fix, panic on not having addresses)14:49
sinzuimgz, yes, if it is independent. wallyworld's change was a hope to fix the other critical14:49
mgzokay, I'll do the revert, we send tip with that through ci, and release that if it's clean, otherwise release the rev before14:50
mgzsounds good?14:50
alexisbmgz, yes sounds good :)14:51
sinzuimgz, alexisb. I have a lot of anxiety regarding the delay of the devel release. We have more than 50 issues people aren't testing beause we always find one more critical bug. I am inclined to revert to my old behaviour of selecting a blessed revision from the past. In general, a bug that is in older versions of juju does not block a devel release, only recent regressions can block14:52
perrito666+114:53
alexisbsinzui, +114:54
mgzcan I get a check/stamp on pr160 please14:59
mgzperrito666: ^14:59
perrito666natefinch: checking15:00
mgz>_<15:00
perrito666aghh sorry, off by one in the kb15:02
perrito666mgz: check15:02
mgzokay, sent to bot15:02
wwitzel3perrito666, natefinch: standup or are you guys busy with the regression?15:02
perrito666wwitzel3: coming15:03
perrito666natefinch: ?15:10
natefinchwwitzel3, perrito666: let's meet this afternoon, sorry, in a virtual sprint with the cloudbase guys until 1-ish15:10
perrito666cool, I can then use my bw to continue downloading broken sword  :p15:11
mgzsinzui: revert has landed15:23
mgzsinzui: the upgrade job is blue, but from before the revert landed anyway.15:33
sinzui?15:35
mgzif I'm looking at the jenkins job correctly, the latest run is blue, but it's from an earlier landing anyway15:35
alexisbwhat does blue mean?15:36
mgzer, it passed. blue dot in the jenkins ui.15:36
sinzuidamn it15:36
sinzuimgz, a race condition where upgrade won? There were a lot of failures and the rate is much worse than it was before the rev15:38
sinzuimgz, if the job passes quickly in the next run, then I am convinced that a race condition was avoided15:38
mgzyeah, makes seeing particular blame on the change much harder15:39
mgzwe have a few more trunk revs to see15:39
bodie_does anyone know how to retrieve the Unit making the query in an APIserver endpoint?15:49
bodie_I was passing the calling Unit's tag along with the entity request, but I was told that the UniterAPI has the calling Unit as a member variable15:50
=== tvansteenburgh1 is now known as tvansteenburgh
alexisbjam1, did you want to meet?16:43
jam1alexisb: yeah, I think so16:43
alexisbok, our normal hangout16:43
wwitzel3natefinch, perrito666, ericsnow: is now good?17:00
ericsnowwwitzel3: good for me17:01
perrito666wwitzel3: coming17:01
natefinchwwitzel3: can we do it in an hour?17:02
perrito666lol17:02
perrito666not coming17:02
perrito666ping me when you are ready17:05
* perrito666 cooks17:05
mgzsinzui: I've not seen any more runs on the local upgrade job,17:14
mgzbut I've proposed a restore of dave's changes as it doesn't seem to have had an effect17:15
sinzuimgz, It runs in a later phase17:15
sinzuimgz, I was just looking if I could force the test to run earlier17:15
sinzuimgz, were you planning to create a dedicate HP test machine?17:16
mgzsinzui: yup, though not completely sure about the hp part17:17
sinzuimgz, HP is good now that we fixed the RAM to instances inbalance17:17
sinzuimgz, I can provide a slave for you before you wake tomorrow17:17
mgzdo I need a la17:18
mgz*slave, the unit test script just takes any machine right?17:18
sinzuimgz, I have been pondering an update to the run-unit* to provision nova instances17:19
mgzthat seems reasonable17:19
sinzuiA slave in our cloudy case means some jobs jump the queue. That helps you17:19
mgzokay17:21
sinzuiWe could choose to run tests on the slave machine. I am going to try that for some tests. I really want to minimise our aws resources...then I thought changing the run* tests to use nova would help me17:21
sinzuioh17:21
sinzuimgz, your tests try once fast, then try with -p 2. Should I be doing the same?17:22
sinzuiI try test 4 times, maybe I could your your technique to minimose setups17:22
mgzsinzui: , ideally not, but I was considering proposing a change to the script to take a flag that does that17:22
baci'm getting this error from jenkin-slave even though the file listed exists and is world-readable: 2014-06-25 17:39:24 ERROR juju runner.go:220 worker: exited "upgrader": cannot read tools metadata in tools directory: open /var/lib/juju/tools/1.17.4.1-trusty-amd64/downloaded-tools.txt: no such file or directory17:47
bacany ideas?17:47
natefinchperrito666, ericsnow: standup?18:03
perrito666natefinch: sure18:03
ericsnownatefinch: coming18:04
sinzuiI wont be helping a test job to run sooner. My effort lead to a collision in lxc/mongod/jujud on the jenkins master. That 60 minute delay was not faster than letting tests run as they naturally want to19:12
wwitzel3all the contents of the turkey wrap I was eating for lunch blew out the bottom and the cat got scared, ran through it, and I just finsihed wiping up all the mustard cat prints in my house.19:39
ericsnowwwitzel3: just imagining that gave me a chuckle :) (hopefully it wasn't too much work)19:42
ericsnowwwitzel3: I've had the same thing happen with small children19:42
wwitzel3ericsnow: thankfully, wood floors19:46
thumperfwereade: around?20:08
thumpernatefinch: o/20:08
natefinchthumper:20:08
natefinchhowdy20:08
perrito666ericsnow: do you eat small children? :p20:10
ericsnowperrito666: only when they misbehave ;)20:10
thumpernatefinch: got time for a quick hangout?20:12
natefinchyeah20:13
thumpernatefinch: https://plus.google.com/hangouts/_/g44xyud6z5kz3g6p775ebv6cfya?hl=en20:13
jcw4I'd appreciate a review on https://github.com/juju/names/pull/1120:36
jcw4Its an ActionTag refactor to hide the implementation details of extracting a UnitTag from an ActionTag20:36
jcw4thumper: I think it's Thursday in your timezone >:-} ^^20:38
jcw4Of course it's still Wednesday for mgz ;)20:40
thumperhi jcw421:02
thumperyes, thursday here21:02
jcw4hi thumper :)21:02
thumperjust after 9am21:02
perrito666jcw4: there you go, you might want to look for better reviewers than me nevertheles21:02
jcw4perrito666: your review comments are great21:02
thumperI'll take a quick look too if you like21:02
jcw4thumper: excellent, thank you yes21:03
jcw4thumper: re: exported attributes... I wasn't clear if I could access the internal attributes outside of a method on the internalStruct21:07
jcw4I'll change it and make sure it still works21:08
thumperjcw4: all internal attributes are accessable inside the same package21:08
thumperas long as it is only used inside the names package, you should be fine21:08
jcw4thumper: perfect21:08
thumperhmm...21:10
* thumper writes a longer general comment.21:11
* bodie_ grabs his binoculars and tries to catch a peek21:13
* jcw4 counts the minutes, wondering what could cause such long deliberation...21:15
* jcw4 is scared now21:17
fwereadethumper, hey, I thought there was some meeting in 40 mins? don't seem to be invited any more21:18
thumperhmm... this is getting longer21:18
thumperfwereade: yes it is still on21:18
fwereadethumper, since I seem to be up, I might swing by, it looked important iirc21:18
fwereadethumper, what was it?21:19
thumperdocker stuff21:19
thumperthe meeting that is21:19
thumperI'd like to chat with you about identity and multi-env stuff21:19
thumperbut reviewing jcw4's branch just now,21:19
thumperwith you shortly21:19
fwereadethumper, and I with you, I might be back in a bit or I might do it after that meeting if you'll be free?21:20
thumperfwereade: standup after the other emeting21:20
thumperfwereade: how about pre other meeting, in 20 minutes say?21:20
fwereadethumper, ok, sgtm, see you soon21:20
thumperack21:20
thumperjcw4, bodie_: there you go21:25
thumperdamn the markdown squishing spaces21:25
jcw4thumper: thanks!21:25
thumperI should work out how to write code inside comments21:25
jcw4thumper: excellent suggestion, thanks21:26
thumpernp21:26
jcw4thumper: I considered it, but thought it might be too radical21:27
jcw4:)21:27
thumpernah21:27
jcw4with your blessing though...21:27
jcw4:)21:27
thumperwith the upcoming identity work, I'm going to do something similar21:27
thumperthe identity tag will have two parts: username@provider21:27
thumperso I had thought through all this already :)21:27
jcw4:)21:28
sinzuihi wallyworld thumper: I am creating a slave dedicated to running git-merge-juju. If you are contemplating running the unit tests on the same machine, perhaps in lxc, I can give it extra cpus to do that21:28
sinzuiotherwise I will use a medium instance and let the job create other instances to run the tests21:29
perrito666thumper: ```21:29
thumpersinzui: um... not sure I have enough context here, do we need to run tests on it?21:29
thumperperrito666: yes?21:30
perrito666thumper: ```code```21:30
thumperperrito666: oh.. cool21:30
thumperta21:30
sinzuithumper, the job currently creates a large ec2 instance to run tests. I was pondering support for hp instances, but maybe the core devs are thinking about running the unit tests in an lxc21:30
thumperI've not thought about that, but others may have :)21:31
bodie_I usually use ```go \n $code \n ```21:35
bodie_you get highlighting by language21:35
bodie_which is lovely21:35
perrito666bodie_: good hint21:36
bodie_perrito666, the other way is still good for inline monospaced code, though21:37
jcw4bodie_, perrito666 (thumper); for inline monospace you just need `blah blah`  <-- only one tick21:41
thumperta21:42
perrito666ok ppl EOD, ill still hang around bc I have no life21:43
perrito666but I might not answer a lot since I just purchased the broken sword collection and I intend to play it :p21:43
bodie_ooo21:47
bodie_... to the single backtick ;) though I have been known to have no life as well21:48
=== vladk is now known as vladk|offline
jcw4bodie_: haha, I saw your ooo and thought you were talking about perrito666's broken sword collection21:54
menn0morning all22:03
waiganithanks menn022:06
menn0waigani: np22:06
menn0it was top of my inbox and was straightforward :)22:06
waiganimenn0: nice, all my PRs should aim for that!22:07
wallyworldsinzui: we are contemplating running unit tests in a container so extra cpus would be good22:12
sinzui:( I just completed my setup of a 4 cpu machine22:12
wallyworldthat's ok22:13
wallyworldwe'll see how it goes22:13
wallyworldit probably won't be something we can get done immediately22:13
sinzuiwallyworld, I can remake it. if my you are unhappy with the hp/nova provisioning I am adding to tests22:14
wallyworldsinzui: ok, np. my view is that the immediate goal is to get the landing tests running in a nailed up instance of some sort22:15
sinzuioh?22:16
wallyworldcontainers would simplify isolation, but initially we can just do what we did in tarmac22:16
sinzuiwallyworld, I will restart this then. you and mgz will still have a dedicated slave in an hour22:16
wallyworldsinzui: did we need a quick chat? seems like we are not quite aligned?22:17
wallyworldalthough i have a meeting in 10 minutes22:17
sinzuiwallyworld, for the slave or f*ing  bug 133427322:18
_mup_Bug #1334273: Upgrades of precise localhost fail <local-provider> <precise> <regression> <upgrade-juju> <juju-core:Triaged> <https://launchpad.net/bugs/1334273>22:18
bodie_mornin'22:20
wallyworldsinzui:  either or both. i'll ping you in an hour if you are still around. i'll also look into that bug. i was hoping it was ok when it started passing again yesterday :-(22:21
sinzuiwallyworld, mgz reverted Dave's commit and CI is playing it now. It has been a sad day. I will *not* try to make the tests run faster because I last effort cause to lxc-based tests to collide22:25
jcw4thumper, perrito666 I pushed an updated branch for https://github.com/juju/names/pull/1122:26
jcw4thumper: if you have the time and inclination we can discuss my decision to make func ParseActionId(string) (ActionTag, bool) {} exported22:26
wallyworldsinzui: ok, i'd still like to still ping you for a chat if you are free and around in an hour22:27
thumperok22:27
sinzuiwallyworld, I have no social life22:27
wallyworldi hear you22:28
* jcw4 takes a mid afternoon break22:28
wallyworldsinzui: if you are free https://plus.google.com/hangouts/_/gyul7vioiw2m7xnhi2tkfvpsjya22:41
sinzuiwallyworld, Google hates me22:43
* sinzui tries to hack the url22:43
wallyworldi can send an invite22:44
sinzuiwallyworld, send me an invite, G is the suck22:45
wallyworldalready sent22:45
sinzuihmm, why is it ringing22:46
wallyworldsinzui: should i try another hangout?22:48
sinzuiyes, It keeps ringing and you don't hear it22:48
thumperjcw4: looking now22:48
wallyworldsinzui: https://plus.google.com/hangouts/_/gzdeubxezekdktt42jeva7ui5ma22:49
sinzuiparty's over22:49
thumperawww...22:49
thumperno party for sinzui22:49
thumperjcw4: why have ParseActionId public?  what is the rationale?22:51
jcw4thumper: in juju/state/action.go the Action type returns a names.Tag22:58
jcw4thumper: the Action uses ParseActionId to get that tag22:58
jcw4thumper: the Action doesn't have a reference to a Unit or a UnitTag22:59
thumperum... no22:59
thumperjcw4: where in state/action.go?22:59
jcw4line 84 now...22:59
jcw4but that code isn't pushed yet22:59
thumperif it is returning a names.Tag23:00
thumperyou should use a type assertion, not more parsing23:00
thumperaction, ok := (names.ActionTag)(tag)23:00
* thumper thinks23:00
thumperthat's the right syntax isn't it?23:01
jcw4thumper: it doesn't have a tag, it's just part of the Entity interface to return one23:01
jcw4action, ok := tag.(names.ActionTag)23:01
thumperok.. that23:01
thumperthe action object though should have a unit and a sequence, yes?23:01
jcw4thumper: yes...ish23:02
jcw4the unit is encoded in the action Id23:02
thumperso you return names.NewActionTag(unit, sequence)23:02
jcw4thumper: so we23:02
thumperah...23:02
thumperreally?23:02
jcw4thumper: it's partially due to watchers23:03
* thumper takes a deep breath23:03
jcw4we want to watch the actions collection for actions specific to a unit23:03
thumperright, so the document should have a unit attribute23:03
thumperand not encoded in some id field23:03
thumperit may well be encoded in id *as well*23:03
jcw4thumper: +123:03
thumperbut it shouldn't be the only source23:03
jcw4thumper: that's how it is now but I agree23:04
* thumper nods23:04
* thumper realised he was late for the standup23:04
jcw4thumper: thanks~23:04
jcw4thumper: at your convenience; you'd prefer an actual unitName on the actionsDoc, over a method that parses it out of the _id?23:08
bodie_jcw4, thumper -- it appears the UnitTag uses the parsing method as follows -- https://github.com/juju/names/blob/master/unit.go#L53-L6323:19
bodie_fwiw23:19
thumperjcw4: ack23:19
bodie_we have a working ActionEvents filter channel :)23:24
bodie_going to attempt to push down to the Hook level tomorrow23:24
bodie_https://github.com/juju/juju/pull/16323:26
bodie_any review would be very welcome :)23:26
jcw4thumper: and I've updated https://github.com/juju/names/pull/1123:28
thumperbodie_: I'm a reviewer today, and will try to get to it :)23:33
jcw4thumper: given that perrito666 also reviewed, am I clear to merge?23:39
thumperjcw4: yup23:39
jcw4thumper: ta23:39
jcw4thumper: et. al. do you use checklists when doing code reviews?  That was one of the suggestions in the article jam1 linked to on the email list23:45
thumperbodie_: it seems I'm commenting on other parts of the work in the wrong PR23:46
thumperjcw4: I have a mental checklist, but nothing formal at this stage23:46
jcw4maybe we could compile the checklist items into a doc/code-review.md or something23:46
thumpergym time... back later23:47
jcw4have fun thumper23:47

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