/srv/irclogs.ubuntu.com/2014/11/13/#juju-dev.txt

jw4thumper: related to your recent change http://reviews.vapour.ws/r/419/00:00
menn0davecheney: finished reviewing the set change00:01
menn0davecheney: was that an intentional propellerheads reference?00:02
menn0davecheney: i'm not sure i understand what you mean regarding RelationUnitsChange00:05
menn0davecheney: out the types you've moved in that PR, it's the only one that isn't related to multiwatcher00:06
menn0davecheney: it isn't referred to or used by multiwatcher or allwatcher00:08
menn0davecheney: i think it belongs in state/watcher.go and everything that uses it can import it from state00:09
thumperjcsackett: hi00:09
thumpernope, not jcsackett, jw400:09
jw4hehe00:09
jw4I was guessing00:09
jw4I explicitly changed my nick to jw4 to suit fwereade who didn't like tabbing 3 times00:09
menn0davecheney: unless i'm missing something...00:10
thumperjw4: time between doesn't exclude boundaries00:10
* fwereade feels bad now00:10
jw4fwereade: lol00:10
jw4thumper: I feel embarrassed if that's the case...00:10
* fwereade *has* been appreciating jw<tab> though00:10
fwereadeeven if that's not actually any easier to type than jw400:10
thumperjw4: I even added a test to testing/checkers to test boundaries00:10
jw4thumper: when I wrote that change I was thinking your fix was already in master00:11
jw4thumper: and something in the output lead me to beleive it was a boundary issue00:11
thumperjw4: nah, what it was was the serialisation in and out of mongo was losing precision00:11
thumpermaking it look like it was added before the start of the test00:12
jw4thumper: derp00:12
jw4thumper: okay.  so just scratch that PR I guess?00:12
perrito666fwereade: <tab> is in the little finger without stretching 4 is in the middle finger stretching, clearly tab is easier00:12
perrito666if you do touch typing that is00:12
thumperjw4: yeah, I think so00:12
jw4thumper: ta00:12
jw4fwereade: I'm thinking of switching to /nick a~~~~00:13
fwereadekatco, I'm tired and drunk but interested in a breif discussion of how protobuf will help you, it may prime me for a more helpful discussion tomorrow00:13
fwereadejw4, lol00:13
fwereadejw4, don't make me rejig my muscle memory *again*00:13
jw4fwereade: hehe00:13
fwereadekatco, in particular, I worry that programmatic translation is risky when agreement on protocols is not guaranteed, ie in distributed systems where versions may change out of sync00:16
fwereadekatco, and so I have a bias towards explicit translation at boundaries, with tests tuned to catch changes in expectations on either side00:17
fwereadekatco, to be annoyingly enigmatic about it: http://thecodelesscode.com/case/9700:17
thumperoh fark00:17
thumpermeetings from 3-5 here00:17
thumperand 5-7 elsewhere tonight00:17
fwereadekatco, but I have not used protobuf in anger, and may be attacking straw men00:17
thumperhazaah00:17
thumperfwereade: get the feeling you are talking to yourself?00:18
fwereadethumper, well, she sent an email 20 mins ago, so I feel it likely she will read it in the near future00:18
perrito666uff meeting at 23 I so forgot that one00:18
* thumper sighs00:19
thumpertomorrow is looking like a long meeting too00:19
thumperfwereade: can you do 9:30pm?00:19
fwereadethumper, my 9:30? sure, will set an alarm now00:19
thumperfwereade: tomorrow night your time00:19
thumperpm00:19
thumperPM00:19
fwereadethumper, perfect00:19
thumperok00:20
* thumper puts it in the calendar00:20
ericsnowdavecheney: thanks for the reviews00:20
ericsnowdavecheney: I've addressed most of the concerns in http://reviews.vapour.ws/r/402/00:20
ericsnowdavecheney: I have just a few follow-up comments in the review00:21
katcofwereade: lol sorry, wife and daughter just got home00:31
thumperkatco: I think we all understand that :-)00:32
katcodaughter has a fever :( we think maybe her teeth are coming in00:32
katcofwereade: so, i'm not exactly proposing anything here, just interested in thoughts. but i was constraining my hypothetical usage to only arguments over the wire, not business entities00:34
katcofwereade: the network facade would handle translation from over-the-wire objects to actual function calls, where we might not even need a business entity per say00:35
katcofwereade: your comment about versions in distributed components is a valid one i think, but probably no different than if we were to write this manually00:37
davecheneynext on my shit list00:48
davecheneywhy are almost all the values passed through a set sorted on the way out ?00:48
davecheneythe contracts for the methods that use this do not reuqire or guarentee lexical sorting00:49
katcodavecheney: i guess it depends on if it's a side-effect of ensuring uniqueness, or if it's explicitly performing sorting00:52
katcodavecheney: i haven't looked at that code, is it just using a map under the covers?00:52
davecheneyyup00:58
davecheneypackage set; type String map[string]bool00:58
katcoso it's explicitly sorting?00:59
davecheneyyes, i'm seeing a lot of use of set.SortedValues00:59
davecheneyand I suspect it is so that the tests pass00:59
katcoahh00:59
davecheneynot because the output is required to be sortedf00:59
katcoso to be clear, it's the callers at fault, not the set code?00:59
davecheneykatco: depends01:02
davecheneymost of the methods i've found those in don't make it clea rif the result is required to be sorted or not01:02
davecheneymany of the things that are sorted01:03
davecheneyare only stable for testing data01:03
davecheneyie, sorting a list of network interfaces01:03
katcosorry, i guess what i meant is: is there a way of retrieving values from the set in a non-sorted way?01:03
fwereadekatco, fwiw, I feel we should by default be providing set-type results unsorted01:11
katcofwereade: i agree01:11
fwereadekatco, we don't know in general whether a client cares about sorting them01:11
fwereadekatco, and when they don't care we're just wasting effort by testing them01:11
katcofwereade: losing O(lg n) * # callers that don't need it01:11
fwereadekatco, exactly01:12
katcothat too01:12
fwereadekatco, so in general01:12
fwereadekatco, tests that say [sort expect] [sort actual] [assert actual == expect] STM to be the sweet spot01:12
wallyworldSameContents is your friend01:13
fwereadewallyworld, true01:13
wallyworldnot DeepEquals01:13
fwereadekatco, yes, wallyworld has it01:14
fwereadekatco, do you want a quick chat about protobuf and how you want to use it?01:14
katcofwereade: have a stand-up right now01:15
fwereadekatco, in that case please ping me tomorrow when you get on? interested to talk01:15
fwereadekatco, but going to bed for now, I think01:15
katcofwereade: no worries at all01:15
katcofwereade: thank you, and sleep well :)01:15
davecheneykatco: fwereade i agree, i think gc.DeepEquals has forced the code to adopt to the test01:28
davecheneys/adopt/adapt01:28
* fwereade is really going to bed right now, but found http://thecodelesscode.com/case/167 amusing01:37
=== kadams54-away is now known as kadams54
katcofwereade: you lie! but not in bed! ;)01:41
thumperdavecheney: in godoc2md, is there a way to say "leave this bit" ?01:50
davecheneythumper: not really01:59
davecheneywhich bit ?01:59
davecheneydo youi want a <pre /> section ?01:59
thumperdavecheney: I just want output like this for the README.md:  [![GoDoc](https://godoc.org/github.com/juju/loggo?status.svg)](https://godoc.org/github.com/juju/loggo)02:01
davecheneyahh02:02
=== kadams54 is now known as kadams54-away
=== kadams54-away is now known as kadams54
thumperdavecheney: any way to format that code in the go docs, such that it makes something like that in the readme?02:24
thumperdavecheney: or I may have to have a post process sed command :-)02:24
thumperoh... sed02:24
davecheneythumper: try02:29
davecheney\n02:29
davecheney    02:29
davecheney\n02:29
davecheneyie, intend like markdown02:29
davecheneyit's guess, it might work02:29
ericsnowdavecheney: I'm going to revert the utils patch I merged a little while ago02:30
davecheneyericsnow: ok02:30
ericsnowdavecheney: I'll merge it back in once you land that core patch for the set stuff02:31
thumperdavecheney: sed is easier :-) and I have a make target already02:31
davecheneythumper: +102:32
davecheneyericsnow: ok02:32
davecheneybut i don't really know what the problem is02:32
davecheneyare you wanting to avoid updating dependencies.tsv twice ?02:33
ericsnowdavecheney: apparently my merge landed in between the two set-related ones you have02:36
ericsnowdavecheney: there should be a failing test in backups under http://reviews.vapour.ws/r/421/02:36
ericsnowdavecheney: see https://github.com/juju/juju/pull/111902:37
davecheneyericsnow: i don't understand02:38
davecheneywe haven't updated to revision in dependencies.tsv yet02:38
davecheneyoh, you updated to a new revision02:38
davecheneyyup02:38
davecheneythat change hasn't landed02:38
ericsnowdavecheney: so either I temporarily revert my utils merge or you roll PR1119 into yours02:38
davecheneysorry, you'll have a merge conflict after 1120 lands02:39
ericsnowdavecheney: I figured I'd just go the revert route02:39
davecheneyericsnow: you don't ahve to revert anything02:39
davecheneyyour change did not land02:39
ericsnowdavecheney: my utils change landed, which breaks backups02:39
davecheneyericsnow: how did it land ?02:39
davecheneywhy did tests not pick that up >?02:39
davecheneyericsnow: i'm really confuised02:39
davecheneyplease send a PR02:39
davecheneythat will explain what the problem is02:40
ericsnowdavecheney: sorry, let me clarify: I merged a change into the utils repo that breaks backups in juju core (and PR 1119 resolves it)02:42
davecheneyericsnow: no you didn't02:43
davecheneynothing happens to juju core til dependencies.tsv is updated02:43
ericsnowdavecheney: right02:43
ericsnowdavecheney: which your patch does02:43
davecheneyright02:44
ericsnowdavecheney: there should be a failed test in backups under PR112002:46
ericsnowdavecheney: if there's not then there's no need for me to revert anything :)02:47
davecheneyericsnow: is the build broken ?02:47
davecheneyi don't think ti is02:47
davecheneyso i don't think there is anything to do02:47
ericsnowdavecheney: okeedokee :)02:49
davecheneyericsnow: one of our braches probably won't pass ci02:51
davecheneyi'll fix it if it fails02:51
ericsnowdavecheney: cool, thanks02:51
=== kadams54 is now known as kadams54-away
davecheneyericsnow: ok02:53
davecheneyi see what has happened now02:53
davecheneyplease revert your utils change nad tell me the new hash02:54
ericsnowdavecheney: will do02:54
ericsnowdavecheney: b50b465fe6aceceb4d08f2093edaccb01e9d5fd402:56
=== kadams54-away is now known as kadams54
=== kadams54 is now known as kadams54-away
=== kadams54-away is now known as kadams54
=== kadams54 is now known as kadams54-away
wallyworldaxw: i decide to do the fix myself, to get it landed http://reviews.vapour.ws/r/426/04:24
wallyworldfor the swift container issue04:25
axwwallyworld: cool. will look in a sec04:26
wallyworldta, no hurry04:27
axwwallyworld: lgtm04:33
wallyworldaxw: ty04:38
jw4axw: Thanks!  Good point about naming tests - I waffled and went the other way, but now I'll stick to more descriptive naming04:49
axwjw4: you're welcome/thanks :)04:49
axwwallyworld: were you +1ing my response or Katherine's comment about tags?05:04
wallyworldyour response05:04
axwk05:05
wallyworldaxw: thanks for fixes - i was unclear, i only meant the errors inside the loop05:26
axwwallyworld: cool05:29
anastasiamac_axw: would gr8ly appreciate if u could cast ur eyes over this again :-) http://reviews.vapour.ws/r/407/06:11
anastasiamac_wallyworld: ^^06:11
axwsure06:11
anastasiamac_u r amazing! thnx ;-)06:12
anastasiamac_axw: just running away to get my bay - bitten!! i actively dislike young age06:12
anastasiamac_axw: brb06:12
davecheneybot's broken, ya'll, https://github.com/juju/juju/pull/111607:48
axwdavecheney: ? there's a merge conflict07:50
davecheneysigh07:50
rogpeppein reviewboard, if i'm looking at the comments on a review, is there any way to show the comment in the context of the code that it's commenting on?08:11
rogpeppeaxw: ^08:12
axwrogpeppe: I think if you follow the code location above the comment, it links to that rev/context08:14
* axw tries08:14
rogpeppeaxw: doesn't seem to work for me08:15
axwrogpeppe: does for me... I just went to http://reviews.vapour.ws/r/338/, went to the first review by davecheney and went the "api/apiclient.go" above his first comment took me to the code where he made the comment08:16
rogpeppeaxw: ah, got it, thanks08:18
dimiternrogpeppe, on the left next to the line numbers there are numbered boxes when there are comments for that line; alternatively clicking on the filename (left or right) takes you to the line08:18
=== alexlist` is now known as alexlist
davecheneyrogpeppe: the problem is people don't realise you can highlugh a section08:21
davecheneynot jhust a line08:21
davecheneywhen you comment on a section, the comments make more sense08:21
rogpeppedavecheney: to make a comment?08:21
davecheneybut nobody knows that08:21
rogpeppedavecheney: i have difficulty enough creating a comment anyway - it always seems to take about 4 clicks08:22
davecheneyrogpeppe: yup, not defending rbt's ui08:22
rogpeppedavecheney: the most annoying thing is when you click outside a comment that you're making and it deletes your in-progress comment. i lost several substantial comments yesterday from that.08:22
dimiternwallyworld, wow, you've backported all my fixes to 1.21, thanks! :)08:22
wallyworlddimitern: np, i'm keen to get beta2 unblocked :-)08:24
dimiternfwereade, ping08:31
fwereadedimitern, pong08:31
dimiternfwereade, hey, a quick clarification re one of your review comments - about the revno and AddMetaCharm08:33
dimiternfwereade, I'm not quite sure what are you suggesting08:33
fwereadedimitern, `AddMetaCharm(..., 2)`08:34
fwereadedimitern, is it used elsewhere?08:34
fwereadedimitern, it just doesn't really seem worth the comment?08:34
dimiternfwereade, I have to check, but possibly in a few places08:34
dimiternfwereade, ah, you're saying drop the revno var and pass the number directly, without a comment about SetUpTest?08:35
fwereadedimitern, yeah exactly08:35
fwereadedimitern, it feels unnecessary from here08:35
dimiternfwereade, ok, sgtm08:35
dimiternfwereade, and re those 2 cases which set the charm url on the service or unit docs manually08:36
dimiternfwereade, I needed that so I can test the "sameCharm" or "differentCharm" assertions without messing up the settings refcount08:37
fwereadedimitern, hmm, would it be too unwieldy to preserve the refcount by setting charm urls on a distinct unit?08:40
fwereadedimitern, I just tend to get nervous about tests that mess with the db in ways that don't match real usage08:41
dimiternfwereade, I'll have a look to see if I can simulate the same without transactions08:41
dimiternfwereade, but for the service is Dead case, it can't be done08:41
rogpeppedavecheney: i've been seeing this error message sometimes recently when building tests:08:41
rogpeppeos/user(.text): missing Go type information for global symbol: code.google.com/p/go.crypto/curve25519.REDMASK51 size 808:41
rogpeppedavecheney: do you know what's going on there?08:41
fwereadedimitern, fwiw, you can use transactions inside txn hooks08:42
dimiternfwereade, I do it that way08:42
fwereadedimitern, I am evidently undercaffeinated08:42
fwereadedimitern, ofc you know that, you do it all the time08:42
rogpeppedavecheney: it happens even when i rm -r $GOPATH/pkg08:42
dimiternfwereade, :) np08:42
dimiternfwereade, I'll feel bad not testing the "service is Dead" case for SetCharm, even though it can't practically happen in real life08:43
fwereadedimitern, but I guess I'm not following why you want to avoid txns in this case? or do you mean avoid direct db access vs doing things over the published interface?08:44
dimiternfwereade, I guess I mean the latter08:45
rogpeppedavecheney: and it even happens when i rebuild go from scratch *and* remove $GOPATH/pkg08:45
dimiternfwereade, the published interface assumes a lot and cannot be used to test minute changes08:45
fwereadedimitern, agreed and understood08:46
dimiternfwereade, (well, I suppose it *can*, but it will mean making the test more complicated in order to follow the *exact* code path implemented right now around service destruction)08:46
fwereadedimitern, indeed08:47
fwereadedimitern, I think the benefits of testing the actual interactions are pretty compelling08:47
fwereadedimitern, I agree we can't *always* do it08:48
fwereadedimitern, and I'm prepared to accept that there may be cases in which doing so is yucky enough that we're better off taking a shortcut08:48
dimiternfwereade, alright08:51
dimiternfwereade, thanks, I'll implement your suggestions and land it then08:51
fwereadedimitern, cheers08:52
voidspacemorning all08:59
mattywmorning everyone09:01
TheMuemorning all09:13
dimiternmorning mattyw, TheMue, voidspace09:34
mattywdimitern, good morning09:34
voidspacedimitern: TheMue: o/09:35
TheMueo/09:36
perrito666morning09:53
voidspacedimitern: http://reviews.vapour.ws/r/429/diff/#10:43
voidspacedimitern: I'm getting coffee10:43
dimiternvoidspace, looking10:44
voidspacedimitern: I'm getting coffee10:44
dimiternvoidspace, LGTM +a couple of suggestions10:53
voidspacedimitern: thanks11:17
voidspacedimitern: your first suggestion looks good11:17
voidspacedimitern: I'm hesitant to add "will retry later" to the second message - will we retry?11:18
dimiternvoidspace, yeah, I've thought about it just after I sent it :)11:19
dimiternvoidspace, why a warning though then?11:19
voidspacedimitern: so Errorf ?11:19
voidspacedimitern: that's for a genuine error that wasn't handled separately11:21
voidspacedimitern: i.e. it's *not* a 400, 403, 404, 40911:21
dimiternvoidspace, it definitely looks like an error, an unexpected one even - which can be added to the log message11:22
voidspacedimitern: ok, I'll make it an Errorf11:23
dimiternvoidspace, cheers11:23
voidspacedimitern: pushed, will merge...11:24
perrito666aghh really? another import cycle?11:24
dimiternvoidspace, great, I pushed mine as well, finally11:25
voidspacedimitern: great11:26
voidspaceperrito666: not so great11:26
wallyworldaxw: hiya, i just noticed we assigned ourselves that tools bug at the same time11:29
wallyworldhave you done much on it? i've found that the hook tools are being linked to a units symlinks rather than the jujud of the currently installed tools, so it should just be a matter of making the right symlinks11:30
fwereadewallyworld, define "currently installed tools"? different units will update at different times, and potentially even want to expose different hook tools to their contexts11:37
wallyworldfwereade: each version of tools gets a fir named after their version11:38
wallyworlddir11:38
wallyworldso there will/could be more than one tools dir11:38
wallyworldbut the hook tools should link to tools/1.22-alpha1.1-trusty-amd64/jujud11:39
wallyworldnot tools/unit-mysql-0/jujud11:39
wallyworldcause at the moment, all units hog smashed onto a machine link to the later11:39
wallyworldthe first unit11:40
wallyworldand if that unit is removed, the other unit's links become invalid11:40
fwereadewallyworld, hmm, that is surely a problem, but shouldn't they just link to the jujud in their own tools dir?11:41
wallyworldlikely, i haven't looked in tooo much detail, just reproduced the issue and saw the suboptimal symlinks11:42
wallyworlddimitern: i think you meant "Save warthogs!" :-p11:57
perrito666ericsnow: ping12:21
dimiternwallyworld, oops :) yeah12:44
wallyworldsorry, couldn't resist :-)12:45
jamestunnicliffeHi guys, just trying to go get -v launchpad.net/juju-core/... and I am getting some errors. http://paste.ubuntu.com/8986334/12:49
wallyworldjamestunnicliffe: juju source code has migrated to github12:50
jamestunnicliffewallyworld: ah, thanks!12:50
wallyworldhttps://github.com/juju/juju12:51
jamestunnicliffewallyworld: that didn't build juju, but I got charm-admin, charmd and charmload out of it. Only message was12:59
jamestunnicliffesrc/github.com/juju/juju/state/backups/metadata/metadata.go:71: m.SetFile undefined (type *Metadata has no field or method SetFile)12:59
jamestunnicliffe(go install -v github.com/juju/juju/...)12:59
jamestunnicliffewell, got plenty of non-errors as well13:00
jamestunnicliffe(or warning?)13:00
wallyworldi haven't pulled the entire source plus deps in a while but i thought go get would have worked13:00
wallyworldgodeps is a tool that pulls all the right dependencies13:02
wallyworldgo get launchpad.net/godeps13:02
wallyworldand then from the juju root dir godeps -u dependencies.tsv i think13:02
jamestunnicliffewallyworld: that got it. Thanks!13:04
wallyworld\o/ great :-)13:04
jamestunnicliffewallyworld: right, now I have a juju that will cooperate with my lxc (I am running trusty), I am trying that demo from yesterday's charm school. I am getting an error in the debug-log:13:13
jamestunnicliffemachine-0: 2014-11-13 13:08:33 ERROR juju.apiserver apiserver.go:281 error serving RPCs: error receiving message: read tcp 10.0.3.253:49477: connection reset by peer13:13
jamestunnicliffemachine-0: 2014-11-13 13:08:36 WARNING juju.worker.instanceupdater updater.go:246 cannot get instance info for instance "dooferlad-local-machine-1": no instances found13:13
jamestunnicliffeis that because I am running juju out of my home directory, but there are some services on my machine running an older version?13:13
jamestunnicliffeI bootstrapped my environment with --upload-tools as it says in the README13:14
wallyworldjamestunnicliffe: hard to say without a little more info - output of juju status, plus the complete all-machines log file13:15
jamestunnicliffewallyworld: http://paste.ubuntu.com/8986797/13:17
wallyworldjamestunnicliffe: nothing jumps out immediately. although juju status shows 1.21-alpha1 and if you are running from source (master) the version should show 1.22-alpha1 i think13:21
wallyworldif you have pulled the source, you could try cleaning up the current environment and trying again using the source you have pulled. go install github/juju/juju/... and then juju bootstrap etc13:23
jamestunnicliffeI am getting 1.22-alpha1-trusty-amd64 out of juju --version13:23
jamestunnicliffeOK, will give it a go.13:23
wallyworldthat implies the juju in you path is an older binary13:23
wallyworldi have to drop off irc, after 11pm here, but someone else should be able to help you further13:24
jamestunnicliffethanks wallyworld13:24
wallyworldnp, sorry i can't hang around, tired13:25
jamestunnicliffenp, have a 3 month old daughter. Know the feeling :-)13:25
wallyworldah, i miss those days13:25
jw4dimitern, fwereade : about initial events in idPrefixWatcher - wrote failing test, and fixed bug LP-1391914 - merged last night : http://reviews.vapour.ws/r/41713:35
jw4dimitern: you wanted to see the changes.  I'll plan on the same test and fix for the machineInterfacesWatcher today if that seems good.13:37
dimiternjw4, hey, yes I looked at the proposal and it looked nice13:46
jw4dimitern: cool13:47
perrito666ericsnow: ping14:27
axwwallyworld: doh. I have a PR up for it.14:32
ericsnowperrito666: hey14:41
perrito666ericsnow: hey, I just merged with master and found that there is an import cycle caused by state/backups.go14:42
perrito666ericsnow: and there is a potential other coming14:42
perrito666since I need agent into the mix too14:43
perrito666so I need to move NewBackups into state/backups/... any suggestions?14:43
ericsnowperrito666: that's one of the reasons state, etc. shouldn't leak into the state/backups package14:43
ericsnowperrito666: that shouldn't need to move14:44
ericsnowperrito666: before I start making assumptions, what is the cycle?14:45
perrito666ericsnow: it is exactly the oposite14:48
perrito666state/backups.go imports state/backups package14:48
perrito666which imports environments14:48
ericsnowperrito666: correct14:48
perrito666which imports agent14:48
perrito666which imports state14:48
perrito666so actually leaking state all over backups would be harmless14:49
ericsnowperrito666: where is environment imported?14:49
perrito666restore14:49
ericsnowperrito666: so that env-related code should go in state/backups.go, right?14:50
perrito666ericsnow: yes14:50
perrito666or in state, but that is clearly out of the question :p14:50
ericsnowperrito666: the trickiest part of the backups implementation was sorting out the import cycles and state/backups.go was a big part of that14:51
perrito666so you mean that if I move your function out of there Ill have another cycle?14:51
ericsnowperrito666: dependencies on state/env within state/backups cause cycles14:52
ericsnowperrito666: so I'd be surprised if it didn't14:53
perrito666ok, ill try14:53
ericsnowperrito666: thanks14:53
perrito666where would you like to have your NewBackups if not in state/backups.go ?14:53
ericsnowperrito666: NewBackups should stay in state/backups.go14:55
ericsnowperrito666: you may need to pull something out into apiserver/backups14:56
ericsnowperrito666: I had to do that with env storage before we switched to gridfs14:56
ericsnowperrito666: but that shouldn't need to impact the existing code14:57
perrito666there is no reason to move things to apiserver14:57
perrito666mmmpf, I really dont want to have yet another namespace here but seems I am going that way14:59
ericsnowperrito666: if you have a minute, let's talk about it over a hangout15:00
perrito666ericsnow: not really, lets talk about it in the standup15:01
ericsnowperrito666: k15:01
ericsnowperrito666: would you mind pushing up your diff to RB?15:01
perrito666ericsnow: I actually would, it does not compile at present15:02
perrito666but the method that uses environments is there already15:02
perrito666something changed lately15:02
perrito666it is newStateConnection on state/backups/restore.go15:03
ericsnowperrito666: is there somewhere I could look at the code?15:03
perrito666ericsnow: and well there will be another one when I import agent/ReadConfig15:05
ericsnowperrito666: the strategy is either to fix the cycles or get the information you need at a place where there are no cycles and bundle it up to pass into backups15:06
ericsnowperrito666: fixing the cycles is usually complicated15:07
perrito666ericsnow: well it is not, I have done before15:07
ericsnowperrito666: no, I mean making it so that there isn't a state -> env -> agent -> state cycle15:08
perrito666ericsnow: the issue here is state -> backups -> env -> agent15:08
perrito666so to me the issue is state -> backups15:08
ericsnowperrito666: for provider storage I took the pull/bundle route15:09
wwitzel3perrito666, ericsnow: I'm in the 1/2 day tosca review if you guys want to standup without me.15:09
perrito666wwitzel3: you must be thrilling15:09
dimiternvoidspace, TheMue, a quick review? http://reviews.vapour.ws/r/431/diff/2/ - this is just a backport of the same fix, to 1.2115:10
wwitzel3perrito666: well the meeting it being run well, so it actually isn't bad :) .. we are going through each issue in the TOSCA tracker and resolving, putting a pin in it, or deleting it.15:10
perrito666that is actually useful15:10
wwitzel3perrito666: kind of theraputic in a way and it bringing me up to speed on somethings I didn't know about :)15:10
wwitzel3perrito666: but as me again at hour number 3 :P15:10
wwitzel3ask15:11
TheMuedimitern: later, currently meeting15:12
dimiternTheMue, np15:12
voidspacedimitern: sure15:21
voidspacedimitern: lgtm15:26
dimiternvoidspace, thanks!15:26
perrito666ericsnow: there, I fixed the import cycle15:28
perrito666:p15:28
perrito666that was easy15:28
ericsnowperrito666: nice15:28
perrito666ericsnow: you have a set of constructors which are State+somethingElse related I just went from state to somethingElse15:29
voidspacedimitern: when you have a chance, can you have a quick glance at this (not a review)15:42
voidspacehttps://github.com/voidspace/juju/compare/listnetworks-maas15:42
voidspacedimitern: is this what you have in mind for maas ListNetworks15:42
dimiternvoidspace, sure, looking15:42
voidspacedimitern: thanks15:42
dimiternvoidspace, looks great so far15:45
voidspacedimitern: so far... you mean there should be more of it!15:45
voidspacedimitern: just needs testing (and maybe some polish) if the basic approach is ok15:46
dimiternvoidspace, just a couple of log messages near the end need to change slightly15:46
voidspacedimitern: ok, cool15:46
voidspacedimitern: thanks15:46
voidspacedimitern: much appreciated15:46
dimiternvoidspace, it looks ok to me, but I'd like to see it when finished15:46
voidspacedimitern: sure15:47
dimiternvoidspace, np, thank you15:47
=== Spads_ is now known as Spads
perrito666ericsnow:  (type *API has no field or method backups) <-- something changed there?15:57
ericsnowperrito666: API in api/backups/ ?15:57
perrito666apiserver/backups/restore.go in this case15:58
alexisbgsamfira, ping15:59
alexisbfwereade, ping15:59
ericsnowperrito666: apiserver/backups.API doesn't have backups any longer16:00
fwereadealexisb, pong16:00
ericsnowperrito666:  use newBackups instead; see create.go for an example16:00
perrito666ericsnow: ok16:00
alexisbfwereade, was curious if gsamfira had a chance to port the reboot work to 1,21-beta16:00
ericsnowperrito666: standup?16:01
alexisbthe release team has agreed to accept it but we need to get it to them asap16:01
perrito666oh true, let me fetch some form of headphone16:01
fwereadealexisb, I thought he had, I had him coordinating with mgz yesterday or the day before16:01
alexisbfwereade, ah ol16:02
alexisbok16:02
alexisbI may be late to the game16:02
alexisbwhich is my bad, I have been out for a few days16:02
fwereadealexisb, no, looks like it never got an actual $$merge$$: https://github.com/juju/juju/pull/109816:02
perrito666alexisb: fwereade https://github.com/juju/juju/pull/109816:02
perrito666heh16:02
alexisbperrito666, fwereade can one of you get it merged?16:02
fwereademgz, sinzui: any objections to me pulling the trigger there?16:02
mgzfwereade: go for it16:03
sinzuifwereade, Please merge it16:03
* fwereade has pressed the button16:03
fwereadeericsnow, btw, not sure you saw yourself flagged in https://github.com/juju/juju/pull/1098 ?16:04
ericsnowfwereade: didn't see that16:05
ericsnowfwereade: still looking into it though16:05
fwereadeericsnow, was really just a heads up, on the basis that it's likely enough work that you should make sure it's scheduled rather than trying to fit it into the gaps16:06
ericsnowfwereade: got it16:06
natefinchwwitzel3: you on the tosca call?  Or are you going to come to the standup?  either is ok16:07
perrito666wouldn't it be nice to have picture in picture for meetings?16:08
wwitzel3natefinch: I'm on the tosca call16:08
natefinchwwitzel3: that's the bug triage one, right?  I was on it before I left for the cross team meeting16:09
wwitzel3natefinch: we are going through the open issues in the tosca tracker, 5 minute time box per issue16:09
natefinchwwitzel3: ok cool16:09
wwitzel3natefinch: yeah16:09
natefinch(ish)16:09
wwitzel3haha16:09
wwitzel3natefinch: it is over at 1pm, he had a break at 10:30, so we might do another at noon or just go til the end.16:10
perrito666heh, my dog tries to be on camera for the standup the day my cam is not working :p16:23
fwereadealexisb, it's merged now16:30
alexisbfwereade, sweet16:30
jamestunnicliffealexisb: hangout time?16:32
alexisbhey jamestunnicliffe !16:34
jw4fwereade, dimitern - machineInterfacesWatcher does not suffer from the same defect that idPrefixWatcher did - fyi16:53
=== kadams54 is now known as kadams54-away
=== kadams54-away is now known as kadams54
=== kadams54 is now known as kadams54-away
wwitzel3fwereade: another look over http://reviews.vapour.ws/r/318/ would be great16:59
=== kadams54-away is now known as kadams54
fwereadewwitzel3, reviewed, bbl17:38
=== jog_ is now known as jog
=== Spads_ is now known as Spads
=== Spads_ is now known as Spads
sinzuinatefinch, Can you ask someone to look into bug 1392390 I expect the issue may need to be handed off to several people to get the fix merged and tested for tomorrow's release/17:54
mupBug #1392390: maas zone selected for deployment that is occupied <cloud-installer> <landscape> <maas-provider> <placement> <regression> <juju-core:Triaged> <juju-core 1.21:Triaged> <https://launchpad.net/bugs/1392390>17:54
natefinchsinzui: ok, will do18:01
=== tasdomas` is now known as tasdomas
natefinchwwitzel3: you around?18:05
wwitzel3natefinch: yeah18:14
wwitzel3natefinch: was about to hit lunch, the tosca call is over now18:14
natefinchwwitzel3: np, thanks for taking all that time to be on that call18:15
natefinchwwitzel3: for your reward, can you look at the bug sinzui linked above?18:15
natefinch(after lunch of course)18:15
wwitzel3natefinch: yeah, do we have a maas to test with?18:16
natefinchwwitzel3: not to my knowledge.  sinzui  - do we have a test maas?18:17
wwitzel3natefinch: I can reinstall my virtual maas setup, I just haven't got to it since my reinstall18:17
sinzuinatefinch, wwitzel3 We test stable and devel maas http://reports.vapour.ws/releases/206918:18
sinzuiwwitzel3, I don't think we have setup zones18:19
mattywnight all18:27
perrito666wwitzel3: natefinch hey I found someone else that upgraded to an unstable version of juju18:34
jjoxhi guys - perrito666 is helping me with a bad juju upgrade-juju issue18:34
jjoxoriginal: 1.18.4-trusty-amd6418:34
jjoxdid: juju upgrade-juju --upload-tools --version=1.20.1118:35
jjoxbut seeing:18:35
jjoxdrwxr-xr-x 2 root root 4096 Jul 29 17:52 1.18.4-trusty-amd6418:35
jjoxdrwxr-xr-x 2 root root 4096 Nov 13 18:14 1.19.4-trusty-amd6418:35
jjoxlrwxrwxrwx 1 root root   19 Nov 13 18:10 machine-0 -> 1.19.4-trusty-amd6418:35
jjoxlrwxrwxrwx 1 root root   19 Nov 13 18:14 unit-ksplice-9 -> 1.19.4-trusty-amd6418:35
jjoxthen at log:18:35
jjox 2014-11-13 18:32:11 ERROR juju.worker.instanceupdater updater.go:267 cannot set addresses on "0": cannot set addresses of machine 0: cannot set18:35
jjox            addresses for machine 0: state changing too quickly; try again soon18:35
jjoxalso18:35
jjox2014-11-13 18:26:04 INFO juju.cmd.jujud machine.go:776 upgrade to 1.19.4-trusty-amd64 already completed.18:35
jjox 2014-11-13 18:26:04 INFO juju.cmd.jujud machine.go:757 upgrade to 1.19.4-trusty-amd64 completed.18:35
jjoxthis is on a canonical bootstack deployment, owned by Canonical (IS team)18:37
jjoxis there any way I can force the upgrade to 1.20.x , and/or recover this ?18:38
jjoxfound above ERROR at https://bugs.launchpad.net/juju-core/+bug/1334773 fwiw18:39
mupBug #1334773: Upgrade from 1.19.3 to 1.19.4 cannot set machineaddress <landscape> <lxc> <maas-provider> <precise> <regression> <upgrade-juju> <juju-core:Fix Released by axwalk> <juju-core 1.20:Fix Released by axwalk> <https://launchpad.net/bugs/1334773>18:39
jjoxwhich perfectly matches my unwanted running version at node0 :(18:39
jjoxFYI $ juju --version18:42
jjox1.20.11-trusty-amd6418:42
wwitzel3natefinch: ok, installing a virtual maas now. I will get a couple zones setup, fill one, and reproduce the error, hopefully that will direct me towards the fix.18:46
wwitzel3natefinch: reading the code where we iterator over the zones didn't expose anything obvious to me18:47
wwitzel3and the selection code seems sane18:47
natefinchwwitzel3: where's that code?18:54
voidspaceright folks, g'night18:58
sinzuinatefinch, wwitzel3 : bugger, this is a related regression to maas zones bug 139241119:05
mupBug #1392411: bootstrap on multi-zone MAAS leaves 'Allocated' nodes in all zones <cloud-installer> <landscape> <maas-provider> <regression> <juju-core:Triaged> <juju-core 1.21:Triaged> <https://launchpad.net/bugs/1392411>19:05
perrito666natefinch: meet jjox the only other person that managed to upgrade himself into 1.1919:21
jjoxand feel not so-much-happy about it.19:23
natefinchhi, I'm only half here, have a 1 year old in my lap currently.19:24
natefinchsinzui: do you remember if we were ever able to fix the other guy who managed to get onto 1.19?19:24
sinzuinatefinch, I think a lot of db surgery was performed along with crafted configs19:25
sinzuinatefinch, has it happened again?19:25
perrito666sinzui: it has19:25
* sinzui wonders if devel agents can ever be removed from released streams19:26
jjoxsinzui: I dumped what I did + found at logs ~20lines above19:26
jjoxfyi this was:19:26
jjoxjuju upgrade-juju --upload-tools --version=1.20.1119:26
jjoxjuju --version19:26
jjox1.20.11-trusty-amd6419:27
sinzuiJuju CI used to test downgrades. they work very well juju upgrade== version=1.20.11 should work19:27
sinzuijjox, upload-tools is only needed if your env doesn't have network, or you are genunienly testing hacked juju19:28
jjoxsinzui: was my understanding that we were firewalled (which later found not to be the case)19:28
perrito666sinzui: btw, it did not work in this case19:28
perrito666it did not upload current tools19:28
perrito666and certainly did not mark them with the specified version19:28
perrito666sinzui: do we have downgrade from develo -> stable?19:29
sinzuijjox, perrito666 downgrades do work, be we stopped testing it every revision a few months ago when we found a better way to make juju test the version we select19:29
jjoxsinzui: how safe would be to 1) shutdown+backup mongodb 2) try downgrade to 1.18 ? if fails -> restore 1) ?19:30
jjoxand binary symlinks, etc19:30
sinzuijjox, juju backup-and restore is not reliable with 1.18 and 1.1919:31
sinzuijjox, if you have network, lets try to force a new configuration to upgrade...19:32
jjoxsinzui: was thinking backup as in 'stop juju-db; tar ...'19:32
jjoxsinzui: upgrade as in to 1.20 ?19:32
sinzuijjox, that is a proven recipe to destroy and env19:32
sinzuijjox, backup is selective about what gets copied...to much is bad19:33
jjoxsinzui: ok19:33
sinzuijjox, juju set-env tools-metadata-url=http://streams.canonical.com/juju/tools/19:33
sinzuijuju upgrade-juju --version=1.20.11 --show-log19:34
jjoxsinzui: ok - before doing the upgrade-juju, just to be sure we're in sync:19:35
jjoxsinzui: this was 1.18.4, asked to be upgrded to 1.20.11 ( --upload-tools ) but got 1.19.419:36
jjoxsinzui: with above ^ -> then ok (doing: juju upgrade-juju --version=1.20.11 --show-log) ?19:36
sinzuiokay, thank you for being clear how you got into the awful state. Go ahead and upgrade after being explicit about the source of agents19:37
jjox(sorry to repeat myself here, but just wanted to be sure you got the full context ok)19:37
jjoxsinzui: cool, ta.19:38
jjoxrunning19:38
sinzuijjox, I think your case here is similar to the other cases where streams were ignored19:38
wwitzel3natefinch: github.com/juju/juju/provider/maas19:38
jjoxsinzui: failed with:19:38
jjoxhttps://pastebin.canonical.com/120428/19:38
sinzuijjox, okay, this is not so bad...juju will honour the upgrade if we get everything else upgraded19:39
sinzuijjox, that is a lot of machines. while upgrades can happen in 2 minutes, I have seen it take 1h. How long have you been waiting19:40
jjoxsinzui: fwiw those units are all trashable, if needed19:40
jjoxsinzui: ~1.5hs19:40
sinzui:(19:40
jjoxsinzui: would restarting those agents help?19:40
sinzuijjox, YES19:40
jjoxdoing19:40
jjoxsinzui: FYI juju status -> https://pastebin.canonical.com/120424/19:41
jjoxsinzui: took ~10mins to output19:41
sinzuijjox, juju-ci is a juju-env with rare archs like arm64. I have had to restart the agents to complete an upgrade.19:41
jjoxsinzui: fun, at https://pastebin.canonical.com/120424/ 18/lxc/0: shows dns-name: 127.0.0.119:42
sinzuijjox, I had a case where an agent wasn't fully downloaded, stalling everything. I saw the url in the unit or machine long. I copied and pasted in the terminal to complete the download, then updated a symlink to point to t new agent, a restart unblocked everything.19:44
jjoxsinzui: so, eg 18/lxc/0 (just restarted) - > $ /var/lib/juju/tools/machine-18-lxc-0/jujud --version19:45
jjox1.18.4-precise-amd6419:45
jjoxseeing there -> 2014-11-13 19:45:05 ERROR juju.worker runner.go:218 exited "machiner": cannot set machine addresses of machine 18: cannot set machineaddresses for machine 18: state changing too quickly; try again soon19:45
sinzuijjox, yeah, I just suspected that would happen.19:46
jjoxsinzui: you think it'd be feasible to destroy (and succeed) those services + units ? FYI these are landscape , nagios extras I was trying to complete to setup.19:46
* sinzui thinks about how to intervene with 18's lxcs19:47
jjoxFYI this is a running bootstack19:47
sinzuijjox, I recall from the first incident that an address was blank in the unit's agent config. the fix was to add the missing address and restart the agents19:49
jjoxwhere's that ?19:49
jjox /etc/init guess, lookin19:49
* sinzui looks at a working machine to see19:49
perrito666jjox: /var/lib/juju/agents/yourmachine/agent.conf19:49
jjoxah, k19:49
jjoxapiaddresses:19:50
jjox- 172.20.161.8:1707019:50
jjoxstateaddresses:19:50
jjox- 172.20.161.8:3701719:50
perrito666that is (should be) ok19:50
sinzuijjox, yep in each lxc container is a /var/lib/juju/agents/unit-*-0/agent.conf that might be missing the api and state server addresses19:52
jjoxsinzui: all there ok afaics : https://pastebin.canonical.com/120430/19:53
sinzuiyep, I think w want to check if the agent was downloaded jjox , let me review my example machine19:54
jjoxta19:54
jjoxsinzui: not there fyi:19:55
jjoxroot@infra:~# ls -ld /var/lib/lxc/juju-machine-18-lxc-*/rootfs/var/lib/juju/tools/1.*19:55
jjoxdrwxr-xr-x 2 root root 4096 Aug 15 21:15 /var/lib/lxc/juju-machine-18-lxc-0/rootfs/var/lib/juju/tools/1.18.4-precise-amd6419:55
jjoxdrwxr-xr-x 2 root root 4096 Aug 15 21:15 /var/lib/lxc/juju-machine-18-lxc-1/rootfs/var/lib/juju/tools/1.18.4-precise-amd6419:55
jjoxdrwxr-xr-x 2 root root 4096 Aug 15 21:15 /var/lib/lxc/juju-machine-18-lxc-2/rootfs/var/lib/juju/tools/1.18.4-trusty-amd6419:55
sinzuijjox, we can see the version used in a container by ls -l /var/lib/juju/tools/19:55
jjoxsinzui: guess we crossed in irc , pasted above19:56
sinzuijjox, I have updated the symlink and restarted to proc before with success19:56
sinzuibut we need to get the agent first19:56
jjoxsinzui: ok, I'll surgically rsync them there, and symlink, and restart19:57
sinzuijjox, +119:57
jjoxsinzui: ok - sweep dload + symlinked all 18-lxc20:15
jjoxbut still getting some agents have not upgraded to the current environment version 1.19.4: machine-18-lxc-0 ...20:15
natefinchwwitzel3: btw, I posted on that bug - there at least definitely is a "default" zone (or at least their api reported one)20:15
jjoxchecking there for the running binary from ps , to confirme.20:15
jjox21373 ?        Ssl    0:00 /var/lib/juju/tools/machine-18-lxc-0/jujud machine --data-dir /var/lib/juju --machine-id 18/lxc/0 --debug20:16
natefinchwwitzel3: also, I'm not convinced juju didn't try all zones and then only report the failure for the last one20:16
jjox(at the 18 host ) ^20:16
sinzuijjox, have any on the lxc upgraded?20:16
jjoxsinzui: root@infra:~# /var/lib/lxc/juju-machine-18-lxc-0/rootfs//var/lib/juju/tools/machine-18-lxc-0/jujud --version20:16
jjox1.19.4-trusty-amd6420:16
jjoxsinzui: froma bove: sure running binary is 1.19.4, but still seen as not upgraded20:17
jjoxsinzui: note fwiw that juju status is giving 127.0.0.1 as public address for that one (pastebin with juju status)20:17
sinzuijuju has trouble with lxc/kvm addresses20:18
jjoxsinzui: I've seen juju 10.0.3.x bipolarity, but 127.x is the 1st time I do20:19
jjoxsinzui: anyway -20:19
jjoxsinzui: just by luck, happens that these are really trashable20:19
jjoxsinzui: would it make sense to try riping them ?20:20
sinzuimachine 0 upgraded and its lxc's say 127.0.0.1 is public. I am looking for an option to make juju go though an upgrade, but I agree that sometimes it is better to replace broken machines20:20
sinzuijjox, if you destroy the units, try to complete the upgrade to 1.20.11 then redeploy20:22
jjoxsinzui: ok (assuming redeploy== redeploy these ones only - others are not an option)20:22
sinzuijjox, you can deploy individual services back to the machine like this: juju deploy -to 18/lxc/0 <service>20:23
jjoxyep, ok20:24
sinzuior juju deploy -to 18/lxc20:24
jjoxintersting, didn't know about the 'full' --to 18/lxc/0 case20:24
sinzuijjox, I think the case is sort of odd because machines are incrementally named. maybe I remember wrongly20:25
jjoxok20:25
thumperjust realised that I hadn't started my irc client...20:30
jjoxsinzui: https://pastebin.canonical.com/120432/ <- life: dying ...20:30
sinzuijjox, okay, we may need to wait 5 more minutes. as machine 18 is listed as down, I wonder if we need juju destroy-machine 1820:33
sinzuijjox, and maybe we need a --force to tell juju unregister it and ask the provider to make it go away now20:33
=== kadams54 is now known as kadams54-away
jjoxsinzui: but would terminate-machine --force work if there still units on it ?20:41
sinzuijjox, I don't know. of the other units to die, then we can used destroy-machine --force 18/lxc/120:42
jjoxsinzui: stars-aligning : --force 18/lxc/N goes by20:44
jjoxsinzui: but eg landscape/0 still showing:20:46
jjox        life: dying20:46
jjox        machine: 18/lxc/120:46
sinzuijjox, I need to rescue a child. I will be back in 15 minutes20:48
jjoxsinzui: tnx20:48
jjoxsinzui, perrito666 : wow, cool - terminate machine on those lxc/18/N atually kicked in at provider (saw a shutdown ... at the lxc)20:52
jjoxand that f*xing service is gone.20:52
jjoxpeeking at other ones.20:52
perrito666\o/20:52
jjoxyeah20:52
jjoxthat '5mins' sinzui magic value seem to have worked.20:53
sinzuijjox, okay, that means that --force wasn't too successful, but their is a fallback rule that if an machine agent hasn't called home and we don't needed, unregister it21:03
wwitzel3natefinch: yep, read that comment, I grep'd for "default" first thing and noticed we don't hard code that anywere in gomaas or juju21:06
wwitzel3natefinch: so I figured it must of been part of their setup21:06
ericsnowthumper: did you want to discuss the backups vs. backup topic?21:42
* thumper thinks singular is better than plural21:45
thumperotp with fwereade right now21:45
thumpersaying 'juju backup restore' out loud doesn't sound as stupid as I thought21:45
thumperwhen you'd go 'juju backup create' or something21:46
ericsnowthumper: fWIW, I agree that "backup" is a better fit21:46
ericsnowthumper: yeah, I was thinking the same thing21:46
ericsnowthumper: my only additional concern is if we anticipate adding support for other kinds of backups down the road (e.g. charm-level backups)21:48
ericsnowthumper: then the use of "backup" for *state* backup would be a pain21:50
ericsnowthumper: we can pick this up when you're free21:50
thumperwell... one things we do know21:51
thumperis that we'll want an 'unpriviliged' backup my environment thing21:51
thumperand a restore one...21:51
thumpernot sure what that will look like yet21:51
ericsnowthumper: would that be the same (but limited) backup of state or would it entail other elements of the env?21:53
thumperit would likely be 'just state contents'21:53
ericsnowthumper: so that would still fit into the current model of backup21:53
thumpercould be 'juju backup environment'21:54
* thumper shrugs21:54
ericsnowthumper: k21:54
=== Spads_ is now known as Spads
ericsnowthumper: that reminds me, I wanted to talk with you about backups in a MESS world21:55
ericsnowthumper: I have a feeling that it won't work exactly right21:56
thumperericsnow: which is what I was talking about21:56
ericsnowthumper: ah :)21:56
thumperericsnow: happy to talk about it, just not right now21:56
ericsnowthumper: no worries; ping me when you're free21:57
=== kadams54-away is now known as kadams54
waiganithumper: I'm confused. Sent you an email.22:11
thumperericsnow: I don't think a backup chat is going to happen today22:22
thumperericsnow: lets try to catch up early next week22:22
ericsnowthumper: no worries22:22
ericsnowthumper: sounds good22:22
thumperericsnow: are you needing a review on anything urgently?22:22
thumperor waiting on me for something?22:22
ericsnowthumper: if you wouldn't mind following up on the two you already reviewed, that would rock22:23
thumperok22:23
thumperwill do that after lunch22:23
ericsnowthumper: thanks22:23
* davecheney starts to cry22:36
davecheney*WHY DOES THE STATE PACKAGE DEPEND ON BAKCUPS!!!*!*!22:37
perrito666davecheney: ah you also hit that22:37
perrito666davecheney: cycle?22:38
davecheneyyou're killing me people22:38
davecheneyperrito666: no, not a cycle22:38
davecheneybut it's arse about22:38
perrito666davecheney: I encountered a cycle bc of that and removed that dependency22:38
davecheneymgo <- state <- api <- everything else22:38
davecheneythis is how it needs to be22:38
davecheneyperrito666: log a bug22:38
davecheneyi'll add it to my list22:38
perrito666davecheney: ok Ill log a bug and then assign it to me22:39
perrito666since I already fixed that :p22:39
=== kadams54 is now known as kadams54-away
perrito666wallyworld: if you needed more info on the stable->devel update issue this is a canonical stack so you can have plenty23:24
wallyworldthanks23:25
perrito666I believe I covered all that is required23:25
wallyworldwhy was upload tools used?23:26
perrito666wallyworld: they believed they where more firewalled than what they actually where23:26
perrito666so, even though one would have expected to have juju upload local tools it just donwloaded 1.19 from streams23:26
perrito666I am sure there is a bug there, just cant discern it very clearly23:27
wallyworldi'm not convinced yet that it downloaded 1.1923:27
perrito666wallyworld: I sshd into the machine23:27
perrito666it did23:27
perrito666trust me23:27
wallyworldcan we get all the logs23:27
wallyworldor can i ssh in23:27
perrito666wallyworld: we certainly can, ask IS for it triumph.bot-prototype <- machine 023:28
perrito666wallyworld: you can both, ssh into an IS machine require for them to share a screen with you23:28
perrito666its like shopping with a guard next to you :p23:28
wallyworldi'd rather then just get the logs23:28
perrito666wallyworld: that is the machine23:29
wallyworldok23:29
perrito666I am eod-ish, or I would get them for you :p23:29
wallyworldnp, i'll ask them to :-)23:29
wallyworldthanks for info23:29
perrito666what I saw is, neither the users machine nor the server had other way to get 1.19.n and the machine not being firewalled was perfectly able to get it from streams, I tried wgeting it and it was downloaded, and the agents where actually migrated to 1.19 except some that had failed23:30
wallyworldso the state server was firewalled?23:34
jw4davecheney: what about github.com/juju/names package? should state not reference that ?23:49
davecheneyno, it really shouldn't23:54
davecheneywell23:54
davecheneythe idea is that we don't want state depending on big bunchs of functionality23:55
davecheneyliek the multiwatcher23:55
davecheneyor backups23:55
davecheneyor presence23:55
davecheneyactually23:55
davecheneyi can't talk about this23:55
davecheneyi don't have a celar enough picture23:55
davecheneybut please, stop adding dependnecies to state23:55
davecheneywhat I do believe is the public api methods on state should only take types that are defined in the state package23:56
davecheneyor primative types23:56
davecheneynames is a good example23:56
davecheneyand we do break this promise in one location23:57

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