/srv/irclogs.ubuntu.com/2017/03/22/#juju-dev.txt

anastasiamacveebers: sinzui: balloons: ^^00:08
veebersanastasiamac, stokachu: I believe that only either sinzui or anastasiamac can do that due to having macs?00:25
anastasiamacveebers: my mac is dual boot but does not boot into macOS since Oct ;( sinzui maybe the only one \o/00:33
stokachuive got a mac now too so i can do a build if need be00:33
stokachuanastasiamac: just have sinzui sync up with me if he doesn't think he'll get to a mac build for the beta00:34
anastasiamacstokachu: \o/ as long as u don't bootstrap controller on mac - we don't support it00:34
stokachuanastasiamac: just localhost right?00:35
stokachuanastasiamac: im going to blacklist localhost in conjure-up on a mac anyway00:35
anastasiamacstokachu: AFAIK we only support clients on Mac... sounds good :D00:35
stokachuhmm00:36
thumperrick_h: let me know if you come back and have a few minutes00:49
thumperrick_h: I think we have this one solved00:54
rick_hthumper: what's up?00:59
thumperrick_h: looking at that dashboard, memory seems to be holding steady00:59
thumperrick_h: also, I'd like you to run something for me on the apiserver00:59
thumperrick_h: juju-statepool-report00:59
rick_hk, sec01:00
rick_hthumper: https://pastebin.canonical.com/183289/01:03
thumperperfect01:04
thumperrick_h: fixed that leak01:04
thumperhazaah01:04
rick_hthumper: yea, looks like it01:04
rick_hthumper: ty!01:04
thumperhappy?01:04
* rick_h will find something else to be displeased about :P01:04
rick_hthumper: very much so, I'll let this run for a while more and then get screenshots/etc to let folks konw we've tested it01:04
thumpersure01:04
rick_hthumper: I'd also like to chat with your QA folks to see how we add some sort of regular check like this01:05
rick_hthumper: it's pretty scriptable at this point with the setup here, but I assume we'll want to do this somewhere maybe on a cloud or something01:05
rick_hactually, I should run this on gce or aws and see if it has the same issue w/o the fix01:05
* thumper nods01:05
thumpermay well do01:05
menn0thumper, wallyworld, axw, jam: due to kids stuff, tech board may be tricky for me today. i'll try to make it if I can.01:21
wallyworldok01:22
thumpermenn0: ack01:36
menn0wallyworld, axw: here's the big apiserver cleanup: https://github.com/juju/juju/pull/713301:37
menn0no more global facade registry01:37
wallyworldmenn0: will look after standup01:37
menn0wallyworld: no rush01:37
axwmenn0: looks awesome at a first glance. have to go shortly, or I'd be all over it01:43
menn0axw: no rush I have to pick up kids anyway01:43
axwthumper: your PR is against staging01:50
thumperbollocks01:50
* thumper fixes01:50
thumperchanged01:51
thumper$ juju bootstrap --agent-version 2.1.0 dev leak-test-2.101:54
thumpererror: requested agent version major.minor mismatch01:54
thumperwat?01:54
thumperwhy can't my 2.2-beta1 local juju deploy a 2.1 controller?01:54
thumperthat's dumb01:56
thumperugh...01:59
thumperwe do that because out tool checking code is shite01:59
thumperwhat a POS02:00
wallyworldthumper: from memory the policy was to require the bootstrap client and agent versions to match down to the minor version number02:19
wallyworldit never used to be like that a long time ago, but due to potential incompatibilities a policy decision was made02:20
jamthumper: I've been trying to draw out your ping vs pong and ReadDeadline stuff, I think we might have a small problem with timing02:37
wallyworldmenn0: love the pr02:37
menn0wallyworld: \o/02:38
jamthumper: as for minor version stuff, we did it because we broke bootstrap at least once between minor versions and we never wrote code to say "if you're this version controller, use *this* bootstrap code"02:38
thumperjam: working on interactive stuff02:38
jamif we change the arguments to "bootstrap-state" for example (which is what we did)02:38
jamthumper: specifically, you only increment 'readdeadline' when you get a Pong02:39
thumperyeah02:39
jamso if you have a Ping and an immediate Pong, then if your next Ping happens and its pong is delayed longer than the first02:39
jamyou might hit timeout02:39
jamIt's easier if it is drawn out, but I have to get the kid ready for school.02:39
menn0bdx: just remembered I still owed you an answer. sorry.02:39
thumperjam: yeah, I'm hitting something in my testing, and adding logging to work it out02:39
jamthumper: also, we need to update Write deadline everytime we do any writes, not just with the Pinger02:40
thumperbut yes, I'm hitting an unexpected close02:40
wallyworldmenn0: thumper: jam: i may well miss tech board, i forgot i need to drive my son to see a surgeon02:40
jamthumper: because Deadline is for *everything* on the socket02:40
menn0bdx: the distinction between machine and unit agent is determined by the jujud command line02:40
thumperjam: but these only write control messages02:40
jamthumper: where are we writing things like the actual log messages themselves?02:40
thumperwe only read02:40
jamor is the ping initiated only on the reader side02:40
thumperyes02:40
menn0bdx: there are further distinctions if the jujud is acting as a machine agent. the agent finds out its role(s) over the API (ultimately from Juju's MongoDB) and runs the workers required for each role.02:41
jamthumper: k. I think we might need to set some sort of Read delay whenever we send a Ping, possibly smaller than we set it when we get a Pong02:41
jamthere should be a "how often do we Ping" and a "how long can a Pong" take. and getting a Pong would probably set the Deadline to Now()+time-to-next-ping+time-for-response02:42
thumperjam: I cribbed this from all the online docs and examples around this ahndling02:42
jamand sending a Ping would set it to Now()+time-for-response02:42
jamsay it might take 10s for a Pong to respond, but it could respond in 1ms.02:43
jamand our ping interval is 20s02:43
thumperjam: yeah, I was wondering about that delay, so that is why I'm doing some interactive testing with additional logging02:44
jam0s, Deadline=20s, Ping, 0.1s Pong, Deadline=20.1s, 20s Ping, 20.1s Timeout, 22s Pong02:44
jamthumper: ^^ check my work, but I think that's the failure case I came up with02:44
thumperI think the key is to make sure the ping frequency is sufficiently smaller than the pong delay added02:45
thumperperhaps we set pong delay to 90s and ping frequence to 60s02:47
thumperwe ping every 60 seconds02:47
thumperand that gives a 30s window for pong to come back02:47
thumpereven though we expect a subsecond pong02:47
thumpereach pong pushes the read window out 90s02:47
jamthumper: so I think they are functionally equivalent, I'm just not sure which is easier for people to understand03:08
jamthumper: menn0: tech board?03:32
babbageclunkjam: when you get a chance can you take another look at https://github.com/juju/juju/pull/7126?04:48
babbageclunkjam: I'll do separate PRs to store the networks in state and tag subnets with the vpc-id in ec2.04:49
anastasiamacbabbageclunk: axw: wallyworld: PTAL https://github.com/juju/names/pull/7805:18
wallyworldanastasiamac: lgtm, ty!05:41
axwwallyworld: just got back, need to eat then I'm free to chat06:27
wallyworldaxw: rightio. i'm about to go get lachie from the train, but will be home in say 20 or 25 minutes06:27
axwok, sounds good06:27
babbageclunkwallyworld, axw: I'm here too!06:45
wallyworldbabbageclunk: awesome, time for a chat in the standup HO?06:52
wallyworldaxw: ^^?06:52
axwwallyworld: sure, brt06:53
anastasiamacbabbageclunk: axw: wallyworld: dependencies update PTAL : https://github.com/juju/juju/pull/713507:14
wallyworldanastasiamac: lgtm07:16
=== frankban|afk is now known as frankban
=== akhavr1 is now known as akhavr
jambabbageclunk: reviewed11:09
jamrick_h: did you restart your testing? I tried logging into Grafana again, but admin/testings didn't work12:58
rick_hjam: yes, remove the s12:58
rick_hjam: just sent an email on the new run starting12:58
rick_hjam: there's a race in the grafana charm that if you set the password too close to the deploy (before it's up) the password isn't set right so you end up changing it again (add an s to the end heh)12:59
jamrick_h: ah, it doesn't respect config at boot, only if it gets set once the app is actually up?12:59
jamsucky12:59
rick_hjam: rgr, seems that way.13:00
rogpeppehere's a refactoring of the juju login command. would really appreciate a quick review as this is critical for us. https://github.com/juju/juju/pull/713614:57
rogpeppejam: any chance you might be able to take a look?14:57
=== frankban is now known as frankban|afk
niedbalskithumper, anastasiamac wallyworld https://bugs.launchpad.net/juju-core/+bug/1675154 , any idea about this one?20:05
mupBug #1675154: Upgrade not possible from 1.25.6 to 1.25.10  <sts> <juju-core:New> <https://launchpad.net/bugs/1675154>20:05
mupBug #1675154 opened: Upgrade not possible from 1.25.6 to 1.25.10  <sts> <juju-core:New> <https://launchpad.net/bugs/1675154>20:07
thumperniedbalski: not at this stage, but I need to step away to eat breakfast20:08
mattyw_thumper, let me know when you're back from breakfast, I have reviews for you if you have time20:49
thumpermattyw_: here20:49
mattyw_thumper, so I *think* descriptions might be right now? https://github.com/juju/description/pull/520:50
* thumper looks20:50
mattyw_thumper, and after that we should talk about my core pull request - I think I know why that test was passing (when it shouldn't have) but we should talk about it20:52
thumperok20:52
thumpermattyw_: review done21:05
mattyw_thumper, awesome thanks, I'll fix it up now and hassle you again. Would you have time to discuss https://github.com/juju/juju/pull/7128 in the meantime or would you rather I get descriptions/5 out of the way first?21:07
thumperwe can discuss now21:07
thumpermattyw_: noticed why it was passing21:09
mattyw_thumper, the reason the test was passing without me having done the serialisation code I think is because it all comes down to s.importModel. That calls state.Export and state.Import. But at no point does that hit yaml21:09
thumperbecause the import/export tests don't serialize/deserialize the model21:10
thumperright21:10
mattyw_awesome21:10
thumperit assumes that the model package is tested21:10
thumperas it should21:10
mattyw_so if I get the description package sorted is the rest of the stuff in that pr the right approach?21:10
thumpermattyw_: so when the description PR is done, we are good21:10
thumperyep21:11
mattyw_awesome, thanks very much for the help. I'll fix it up now21:11
mupBug #1675154 changed: Upgrade not possible from 1.25.6 to 1.25.10  <sts> <juju-core:Invalid> <https://launchpad.net/bugs/1675154>21:13
mattyw_thumper, ptal https://github.com/juju/description/pull/5/files21:20
mattyw_thumper, sorry to hassle you - but are you able to take another look?21:43
thumpermattyw_: sucked into calls now21:44
thumperI have it up21:44
mattyw_thumper, ok - I'll go afk for a bit if you could take a look at that and https://github.com/juju/juju/pull/7128/files when you can. I'll keep checking back every so often incase there are things to do21:45
babbageclunkwallyworld: you about? (I mean, you probably shouldn't be, but if you are...)21:47
wallyworldbabbageclunk: in release call21:47
wallyworldwill be done soon21:47
babbageclunkwallyworld: ok thanks21:47
wallyworldbabbageclunk: free now22:07
babbageclunkwallyworld: hey - so jam approved my PR, but in this comment (https://github.com/juju/juju/pull/7126#pullrequestreview-28347395) he suggested deploying to an imported subnet.22:09
wallyworldlooking22:09
babbageclunkwallyworld: I'd like to do that test, but I'm not sure how to - should I use some kind of placement directive?22:10
wallyworldbabbageclunk: there is a placement directive for subnets, yes22:10
wallyworld--to subnet=<blah>22:10
wallyworldi think22:10
wallyworldwhere blah is a subnet id or cidr22:10
babbageclunkwallyworld: I don't think that's implemented in GCE though. It's probably not that much work to add...22:11
wallyworldbabbageclunk: in that case my view is we land what you have22:11
babbageclunkok, doing that22:11
wallyworldbabbageclunk: we can add a card to the board to remind us to come back and check22:12
babbageclunkok - I'll do that22:13
wallyworldhml: did you end up using the standalone mysql charm or your testing? i assume that's all gone ok?22:14
hmlwallyworld: yes, i used the standalone mysql - and everything worked.22:14
wallyworldyay22:14
hmlwallyworld: added the tests, one final sanity check and i’ll do the PR22:14
wallyworldlet;s mak sure a bug is filed against the percona cluster charm22:15
hmlwallyworld: okay, will file - anything specific i should say beyond the obvious22:15
wallyworldnot really22:16
babbageclunkwallyworld: should I move on to storing network for the subnet in state? or something else22:30
wallyworldbabbageclunk: would be good to round out the current gce work, agree?22:30
babbageclunkwallyworld: yeah, I think so22:31
wallyworldshould hopefully be fairly straightforward22:31
babbageclunkok, doing that.22:31
thumpermattyw_: description PR merged22:45
babbageclunkwallyworld: hmm - should the network name be part of the subnet's document ID?22:47
babbageclunkwallyworld: It should, right? We could have the same cidr in different networks.22:47
wallyworldbabbageclunk: it depends what's needed to make the id unique and what asserts are used22:48
wallyworldwhat do we do for ec2?22:48
babbageclunkwallyworld: the id at the moment is just the CIDR.22:48
wallyworldright, that sounds wrong22:48
babbageclunkat the moment we don't capture vpc-id in ec222:49
wallyworldor maas?22:49
babbageclunkNo, jam was saying maas doesn't have that concept. (Although what are fabrics in maas?)22:50
babbageclunkoh, no - fabrics aren't the same as different networks. https://docs.ubuntu.com/maas/2.1/en/intro-concepts#fabrics22:51
mattyw_thumper, many thanks, how's the core one now? https://github.com/juju/juju/pull/712822:51
thumpermattyw_: need to update description hash for dependencies22:52
thumpermattyw_: rest looks good22:53
wallyworldbabbageclunk: it looks like the state model is wrong - it assumes cidr is unique22:53
wallyworldbabbageclunk: which may be true for maas22:54
wallyworldbut you are sying is not true for gce?22:54
mattyw_thumper, I think the old hash was ok - but I've updated it now anyway22:55
babbageclunkwallyworld: I don't think it's true for GCE no, hang on, checking docs22:56
thumpermattyw_: well, you should always refer to the mainline hash :)22:56
mattyw_true22:56
thumpermattyw_: LGTM22:56
mattyw_thumper, many thanks22:57
babbageclunkwallyworld: https://cloud.google.com/compute/docs/networking#ip_ranges22:58
babbageclunkwallyworld: ranges must be unique and non-overlapping within a network22:58
wallyworldbabbageclunk: hence cidr as doc id is ok then, right?22:58
babbageclunkwallyworld: but couldn't we have subnets from different networks?22:59
babbageclunkOr should I not worry about that for now?23:00
wallyworldmaybe, but i'm not familiar enough with the juju network data model. they did the current model for a reason i assume23:00
wallyworldi'd just stick with the convention that's been done for other existing providers23:01
wallyworldfor now23:01
babbageclunkwallyworld: I'm talking about in state - I don't think it's anything to do with providers at that point, is it?23:01
wallyworldright, i'm talking about in state too - but the providers set the data to go into state23:02
wallyworldso what's in state needs to be able to model what the providers provider23:02
babbageclunkha23:02
babbageclunkOk, so I won't worry about trying to incorporate the network id into the doc id for now, we can do that later. More important to capture it for now.23:03
babbageclunkwallyworld: ^23:03
wallyworldbabbageclunk: i'm still not sure of why you think we need to do that just for gce?23:04
babbageclunkI don't think we do jsut for GCE.23:05
wallyworldok, so i don't think we should be second guessing the network model at this point. let's implement for gce something consistent with what's already been done. the model needs to be lookeed at holistically perhaps23:06
babbageclunkok23:06
wallyworldas part of the ongoing work to implement spaces etc23:06
anastasiamachml: ping23:35
hmlanastasiamac: ack23:35
anastasiamachml: could u do a quick hangout?23:35
anastasiamachml: we could hog ur team's standup one ;D23:36
hmlanastasiamac: sure23:36
anastasiamachml: k. m there :)23:37

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