anastasiamac | katco: ping | 00:05 |
---|---|---|
katco | anastasiamac: howdy | 00:08 |
=== kadams54 is now known as kadams54-away | ||
alexisb | wallyworld, you around? | 02:08 |
wallyworld | yes | 02:08 |
alexisb | do you need to discuss anything with me before next week? | 02:09 |
alexisb | if so I have time for a hangout | 02:09 |
wallyworld | hmmm | 02:09 |
* thumper hmmms... | 02:32 | |
* thumper is looking at the blocked command stuff | 02:32 | |
thumper | wallyworld: can we talk today? | 02:32 |
wallyworld | sure | 02:32 |
thumper | wallyworld: I have a meeting friday avo | 02:32 |
wallyworld | ok, i'm free whenever | 02:33 |
thumper | now? | 02:33 |
thumper | jump in our 1:1 hangout | 02:34 |
wallyworld | ok | 02:34 |
ericsnow | axw: ping | 02:54 |
axw | ericsnow: pong | 02:55 |
ericsnow | axw: I've put up a first stab at "unit-get zone": http://reviews.vapour.ws/r/532/ | 02:55 |
ericsnow | axw: FYI | 02:55 |
axw | ericsnow: thanks, I saw. I'm OCR tomorrow - okay to wait till then? | 02:55 |
ericsnow | axw: no hurry | 02:56 |
ericsnow | axw: just wanted to make sure it got your attention at some point (you were involved in the AZ discussions, right?) | 02:57 |
axw | ericsnow: yep, I implemented 99% of it | 02:57 |
axw | thanks. on brief perusal it looks good | 02:58 |
ericsnow | axw: cool | 02:58 |
ericsnow | axw: I was able to make good use of ZonedEnviron.InstanceAvailabilityZoneNames() :) | 03:00 |
* ericsnow shuts down for the night | 03:01 | |
axw | ericsnow: night | 03:02 |
=== linstatsdr_ is now known as LinStatSDR | ||
thumper | anastasiamac: wallyworld is just being mean... | 03:13 |
anastasiamac | thumper: really?... | 03:14 |
anastasiamac | wallyworld: u wouldnt ;) | 03:15 |
* wallyworld would :-P | 03:16 | |
anastasiamac | wallyworld: so do i continue with block changes or shall i wait for executive decision? | 03:16 |
thumper | wallyworld: anastasiamac: it'll be interesting to see what the help text will look like for block/unblock when we have the supercommands in place, i.e. "juju machine remove", "juju environment destroy" etc | 03:53 |
anastasiamac | thumper: wallyworld: juju block destroy|remove|change | 03:56 |
anastasiamac | thumper: wallyworld: :P | 03:56 |
* wallyworld otp | 03:57 | |
thumper | anastasiamac: seems fine to me... | 03:58 |
anastasiamac | thumper: this can be done before supercommands ;-) | 03:58 |
anastasiamac | thumper: shall i? | 03:59 |
thumper | anastasiamac: double check with wallyworld, but I'm +1 | 03:59 |
anastasiamac | thumper: :) thnx | 03:59 |
wallyworld | anastasiamac: juju block destroy-environment i think is still what we want | 04:12 |
thumper | axw: got a minute? | 04:13 |
axw | thumper: just about to eat lunch.. what's up? | 04:18 |
thumper | axw: looking at the tests in cmd/juju/addmachine_test.go | 04:18 |
thumper | axw: it looks like apiserver/client/client_test.go covers it all | 04:19 |
thumper | axw: do you see any reason not to mock out the api all together? | 04:19 |
thumper | axw: I'm messing with add and remove machine commands and moving them to a subcommand to test out top level aliases to subcommands (and deprecations) | 04:19 |
axw | thumper: I'd like that, but I know some people would like them to remain like that so we have end-to-end integration tests | 04:20 |
thumper | axw: fooey | 04:20 |
axw | my preference would be to mock there and have integration tests elsewhere | 04:20 |
thumper | axw: what I did for the user stuff was this: | 04:20 |
thumper | axw: everything in the user subcommand package is mocked out | 04:20 |
thumper | args and params tested exhaustively (to make sure we pass them to the api) | 04:21 |
thumper | one test in cmd/juju to show it is hooked up end to end | 04:21 |
thumper | we don't need to end to end test every path | 04:21 |
thumper | just that it is hooked up | 04:21 |
thumper | IMO | 04:21 |
axw | that SGTM | 04:21 |
thumper | coolio | 04:21 |
axw | thumper: so we'll have cmd/juju/machine/ ? | 04:23 |
thumper | axw: yep | 04:23 |
axw | okey dokey | 04:23 |
thumper | that's the plan | 04:23 |
thumper | I'm using it as the test case for top level aliases | 04:23 |
thumper | so 'juju add-machine' works as 'juju machine add' | 04:23 |
thumper | with just some helper functions | 04:23 |
axw | the calm, soothing sound of my squawking UPS | 05:28 |
=== kadams54_ is now known as kadams54-away | ||
hatch | ahh that's such a beautiful sound | 05:39 |
hatch | mine is a loud beep every 5s - just to let me know at 3-4am that the power has gone out and it needs to keep itself powered for that duration | 05:40 |
hatch | such a helpful machine | 05:40 |
hatch | :) | 05:40 |
TheMue | morning | 08:35 |
mattyw | morning everyone | 08:48 |
TheMue | mattyw: o/ | 08:55 |
voidspace | dimitern: ping | 09:40 |
voidspace | dimitern: should calling subnet.Destroy() on an already destroyed subnet be a no-op or an error | 09:41 |
voidspace | dimitern: looking at service it looks like an error (specifically a wrapped jujutxn.ErrNoOperations) | 09:41 |
voidspace | dimitern: so that's what I've done | 09:41 |
dimitern | voidspace, hey | 09:44 |
voidspace | dimitern: hi | 09:44 |
dimitern | voidspace, I think it usually is a no-op | 09:44 |
dimitern | voidspace, and where it isn't it should be :) | 09:45 |
voidspace | dimitern: ok, no problem | 09:45 |
voidspace | dimitern: it's very easy to change... | 09:45 |
dimitern | voidspace, ok | 09:46 |
voidspace | dimitern: http://reviews.vapour.ws/r/534/ | 09:49 |
voidspace | dimitern: "first cut", although I spent most of yesterday removing code | 09:49 |
dimitern | voidspace, looking | 09:50 |
voidspace | dimitern: it now just does the bare minimum for adding, fetching and removing subnets | 09:50 |
jam | voidspace: what's the idea for upgrade step for this ? | 09:59 |
jam | I guess mongo creates collections on the fly if they don't exist | 09:59 |
voidspace | jam: shouldn't be needed | 09:59 |
voidspace | jam: I specifically asked dimitern that yesterday | 09:59 |
voidspace | jam: and he said created on first use | 09:59 |
dimitern | voidspace, jam, yeah - that's how mongo works | 10:00 |
jam | dimitern: standup ? | 10:00 |
fwereade_ | of those online... who is least unfamiliar with the uniter? I need someone who's willing to say "ship-it" (or "that's crap fix it") on http://reviews.vapour.ws/r/527/ | 10:24 |
fwereade_ | TheMue, tasdomas, mattyw: I feel like each of you has half a chance of having touched it recently enough to have something of an opinion? ^^ | 10:25 |
mattyw | fwereade_, if you want an opinion I'm happy to enough to provide on | 10:25 |
TheMue | fwereade_: will take a look too, sure | 10:26 |
fwereade_ | wallyworld, thoughts on docstrings like "Foo helps satisfy the package.Bar interface"? upside, just one place with "official" docs, less likelihood of drift; downside, you have to look over there to understand what the method's for | 10:54 |
wallyworld | fwereade_: i like "Foo helps satisy Bar interface". IDEs have click through so it's trivial to navigate to interface to see real comment | 10:57 |
fwereade_ | wallyworld, cool, I tend to concur | 10:59 |
fwereade_ | wallyworld, I got distracted half way (hmm, more like 10%) through my previous docstring pass | 10:59 |
wallyworld | there is a lot for sure | 11:01 |
wallyworld | jam: you joining us for storage round 2? | 11:02 |
jam | wallyworld: yeah, joining now, just had to get my son from the bus | 11:22 |
jam | wallyworld: though it looks like you've already left ? | 11:23 |
wallyworld | jam: `we ended it, will reschedule for next week it that's ok | 11:23 |
jam | wallyworld: kd | 11:23 |
voidspace | || is defined for strings but not &&? | 12:15 |
voidspace | ah no | 12:16 |
voidspace | only the first error was reported though | 12:16 |
* fwereade_ has a *filthy* headache that's only getting worse, going to lie down | 12:19 | |
voidspace | fwereade_: :-( | 12:21 |
dimitern | voidspace, almost finished with the review - I had a chat with fwereade_ till now | 12:25 |
voidspace | dimitern: ok | 12:28 |
voidspace | dimitern: I've been working on the changes I discussed with you and the comments from jam | 12:28 |
voidspace | dimitern: although I'm not too keen on the "supersticious programming" change suggested by jam | 12:28 |
voidspace | "shouldn't we use a loop just because..." :-p | 12:29 |
jam | voidspace: so many places in the code where we have a transaction we put in a loop | 12:29 |
dimitern | voidspace, ah | 12:29 |
jam | I don't know that we need to do so here | 12:29 |
dimitern | voidspace, jam, if we have a lot of asserts it makes sense to have a buildTxn callback (implicit loop) - if it's just one assert we can go without it | 12:30 |
voidspace | I had one originally, but pulled it out | 12:31 |
voidspace | the only error possible (so far) is if the document already exists | 12:31 |
dimitern | voidspace, reviewed | 13:00 |
voidspace | dimitern: thanks | 13:07 |
voidspace | dimitern: "a few suggestions"... | 13:08 |
voidspace | ;-) | 13:08 |
voidspace | dimitern: appreciated, on the case with several of these already | 13:09 |
dimitern | voidspace, sorry :) I seem to be picking up somewhat British way of expressing myself sometimes :) | 13:09 |
voidspace | dimitern: a terrible curse | 13:09 |
dimitern | lol | 13:10 |
sinzui | jam, katco, ericsnow: can someone look into bug 1396625? if this is broken in the 1.21 branch we will need a fix backported to it | 14:45 |
mup | Bug #1396625: container scoped relations between 2 subordinates broken in 1.20.12 <regression> <subordinate> <juju-core:Triaged> <https://launchpad.net/bugs/1396625> | 14:45 |
katco | sinzui: i'm trying to wrap up leadership before holiday, and i'm OCR today as well. | 14:46 |
katco | sinzui: i will take a look this afternoon if i can. | 14:47 |
sinzui | katco, sorry I am not asking any one person to fix the issue, we just need someone who can assess the regression. This may block 1.21.0 and require us ti do a 1.21.beta4 | 14:47 |
katco | sinzui: gotcha. i will take a look if at all possible. thanks for the heads-up :) | 14:48 |
voidspace | dimitern: are collection fields automatically lower-cased by mongo? (or mgo - from doc struct fields which are capitalized) | 15:20 |
dimitern | voidspace, yes they are | 15:22 |
dimitern | voidspace, I think by mongo itself | 15:22 |
fwereade_ | voidspace, yes, I think it's mgo/bson that does it, and I like it very much when we're explicit about `bson:"whatever"`serializations | 15:23 |
voidspace | dimitern: cool, looked that way from the code but I wanted confirmation | 15:23 |
voidspace | fwereade_: coolio | 15:23 |
voidspace | dimitern: you want to check for malformed AllocatableIPHigh and Low? | 16:06 |
voidspace | dimitern: you also want to check they're within the CIDR? | 16:06 |
dimitern | voidspace, I think it's worth it to validate them when set | 16:08 |
voidspace | dimitern: ok | 16:08 |
voidspace | dimitern: jam suggested moving all the validation into a CheckValid method on Subnet | 16:09 |
voidspace | dimitern: do you think it's worth the effort? | 16:09 |
dimitern | voidspace, I don't mind if we do the validation in a follow-up, but please at least add a TODO for it | 16:11 |
voidspace | dimitern: ok | 16:12 |
voidspace | dimitern: net.ParseIP doesn't return an error! | 16:12 |
voidspace | checking to see what it does for invalid input | 16:12 |
voidspace | dimitern: it returns net.IP(nil) | 16:13 |
voidspace | odd | 16:13 |
dimitern | voidspace, it doesn't but it returns nil | 16:13 |
dimitern | voidspace, there's a method to call on net.IP to ensure it's valid | 16:14 |
dimitern | voidspace, sorry, I was wrong - no such method; just check for nil I guess | 16:15 |
voidspace | yep | 16:16 |
voidspace | dimitern: there's an almost unbounded amount of additional validation we could do | 16:43 |
voidspace | dimitern: e.g. both ipv4 or both ipv6, Low should be lower than high and so on | 16:43 |
voidspace | dimitern: so I won't do those unless you feel strongly | 16:44 |
voidspace | dimitern: I will note them | 16:49 |
dimitern | voidspace, that sounds good to me - I agree we can improve it further, but not at the cost of stalling the implementation :) | 18:16 |
dimitern | voidspace, I'll leave it to your judgment then | 18:17 |
voidspace | dimitern: on the last bits now | 18:18 |
voidspace | dimitern: do you really want a "Destroy" that just sets Life to Dying? | 18:18 |
voidspace | dimitern: given that Remove requires Dead and EnsureDead sets Dead | 18:18 |
voidspace | dimitern: there's no actual use (yet) for a Destroy | 18:18 |
dimitern | voidspace, ok, let's skip Destroy for the time being | 18:20 |
voidspace | dimitern: thanks :-) | 18:20 |
voidspace | dimitern: I have ten minutes before EOD | 18:20 |
voidspace | dimitern: I might finish... | 18:20 |
voidspace | dimitern: maybe a test or two for before standup tomorrow | 18:20 |
dimitern | voidspace, no rush :) it's going great so far | 18:22 |
voidspace | dimitern: one issue | 18:22 |
voidspace | dimitern: I added the unique index on providerid | 18:22 |
voidspace | dimitern: added in state.open | 18:22 |
dimitern | voidspace, and it doesn't work when unset? | 18:23 |
voidspace | dimitern: it doesn't work | 18:23 |
voidspace | dimitern: I can add two subnets with the same providerid | 18:23 |
voidspace | dimitern: it's fine unset | 18:23 |
voidspace | although that hadn't occurred to me | 18:23 |
dimitern | voidspace, hmm.. I kinda suspected that.. have you tried the "sparse" flag for the index as jam suggested? | 18:23 |
voidspace | it needs to be "unique if set", which is slightly different | 18:23 |
voidspace | dimitern: it doesn't seem to work *at all* | 18:23 |
dimitern | voidspace, ah, sorry | 18:24 |
voidspace | dimitern: I haven't tried sparse - that might be needed *as well* | 18:24 |
voidspace | dimitern: however I wonder if the indexes are used for the test as we seem to have special ways of creating the state for tests | 18:24 |
dimitern | voidspace, that's odd.. maybe due to the "omitempty" tag - not quite sure | 18:24 |
voidspace | dimitern: can topic with jam tomorrow | 18:25 |
voidspace | there's a note in the test | 18:25 |
voidspace | it currently passes when it shouldn't :-) | 18:25 |
dimitern | voidspace, yeah.. I'll have a look tomorrow - I'm sure I used unique indices like that before | 18:26 |
dimitern | voidspace, but there might be subtleties that escape me now | 18:26 |
voidspace | yeah | 18:27 |
voidspace | I'm on the other bits right now, but I won't forget it | 18:27 |
dimitern | voidspace, cheers | 18:27 |
dimitern | voidspace, sorry for my nit picking.. but I'm overly cautious with any state code due to past issues :) | 18:28 |
dimitern | anyway, eod for me | 18:31 |
dimitern | g'night all! | 18:31 |
voidspace | dimitern: g'night | 18:31 |
voidspace | dimitern: cya tomorrow | 18:32 |
voidspace | I'm EOD too | 18:32 |
thumper | fwereade_: ping | 20:06 |
wallyworld_ | thumper: that jujuc symlink issue was caused by a fix to a different bug 1391645 | 21:43 |
mup | Bug #1391645: Tools linking issue 1.21beta1 for collocated services <tech-debt> <juju-core:Fix Released by axwalk> <juju-core 1.21:Fix Released by axwalk> <https://launchpad.net/bugs/1391645> | 21:43 |
wallyworld_ | thumper: i'll get andrew to look into it | 21:43 |
thumper | wallyworld_: we are looking now | 21:43 |
thumper | wallyworld_: as it is blocking our work | 21:44 |
wallyworld_ | ah, bollocks | 21:44 |
wallyworld_ | thumper: there's also this one 1396625 | 21:44 |
wallyworld_ | bug 1396625 | 21:44 |
mup | Bug #1396625: container scoped relations between 2 subordinates broken in 1.20.12 <regression> <subordinate> <juju-core:Triaged> <https://launchpad.net/bugs/1396625> | 21:44 |
thumper | yeah, not sure about that one... | 21:44 |
wallyworld_ | i think this is associated with the fix menno did | 21:44 |
thumper | fwereade_ said it should be allowed | 21:44 |
thumper | but we used to allow it by mistake | 21:45 |
wallyworld_ | ask menno, he may be able to tweak his previous fix | 21:45 |
thumper | should NOT be allowed | 21:45 |
wallyworld_ | oh | 21:45 |
thumper | yeah | 21:45 |
thumper | I'm wanting fwereade_ to look at it | 21:45 |
wallyworld_ | so you saying it's a won't fix? | 21:45 |
wallyworld_ | ok | 21:45 |
wallyworld_ | thumper: so let me know if you need us to look at the jujuc bug, if you get stuck etc | 21:46 |
thumper | wallyworld_: I have a back port of a bug | 21:46 |
thumper | Just going to land it on 1.21 | 21:46 |
thumper | I thought it wasn't a problem there, but it is | 21:47 |
thumper | as I have found by debugging it | 21:47 |
wallyworld_ | which bug? | 21:47 |
* thumper loks | 21:47 | |
thumper | https://bugs.launchpad.net/juju-core/+bug/1395564 | 21:48 |
mup | Bug #1395564: jujud constantly spews `juju.worker runner.go:219 exited "identity-file-writer": StateServingInfo not available and we need it` <juju-core:In Progress by thumper> <https://launchpad.net/bugs/1395564> | 21:48 |
wallyworld_ | oh, that one | 21:48 |
wallyworld_ | and you did find an all machines issue by the looks | 21:49 |
wallyworld_ | yay :-( | 21:49 |
* thumper nods | 21:49 | |
thumper | it is all a bit shit | 21:50 |
katco | thumper: the review you have up, it's a backport? | 21:53 |
thumper | yep | 21:53 |
thumper | just running all the tests to make sure they still pass before gettin gthe bot to do it | 21:53 |
katco | thumper: any reason i shouldn't rubber-stamp this? it looks plausibly correct | 21:53 |
thumper | katco: axw reviewed the master version | 21:53 |
thumper | rubber-stamp away | 21:53 |
* katco reels back | 21:53 | |
* katco ka-thump | 21:53 | |
katco | wallyworld_: if you have any questions about my responses to your review, lmk. especially the one concerning state. i couldn't really find a better way. | 21:55 |
wallyworld_ | katco: np, i haven't started looking yet | 21:55 |
katco | wallyworld_: np | 21:55 |
thumper | wallyworld_: I don't suppose you have the old review for axw's tool change | 21:59 |
thumper | ? | 21:59 |
wallyworld_ | i can look | 21:59 |
wallyworld_ | thumper: here's the pr for the backport to 1.21 https://github.com/juju/juju/pull/1136 | 22:01 |
wallyworld_ | the review board link seems to be gone | 22:01 |
thumper | ta | 22:01 |
thumper | gee I miss the links to the code reviews in the bugs | 22:02 |
wallyworld_ | yep :-( | 22:02 |
wallyworld_ | i miss launchpad | 22:02 |
fwereade_ | thumper, hum, that's an interesting bug, isn't it :( | 23:07 |
thumper | fwereade_: which one? | 23:08 |
thumper | I have three on the go | 23:08 |
fwereade_ | thumper, heh, https://bugs.launchpad.net/juju-core/+bug/1396625 | 23:08 |
mup | Bug #1396625: container scoped relations between 2 subordinates broken in 1.20.12 <regression> <subordinate> <juju-core:Triaged> <https://launchpad.net/bugs/1396625> | 23:08 |
thumper | fwereade_: and a fourth I wanted to talk to you about | 23:08 |
fwereade_ | thumper, ok, I'm going to get a drink then, hangout? | 23:08 |
thumper | sure | 23:08 |
fwereade_ | menn0, ping | 23:52 |
menn0 | fwereade_: hi | 23:53 |
fwereade_ | menn0, so, https://bugs.launchpad.net/juju-core/+bug/1396625 | 23:53 |
mup | Bug #1396625: container scoped relations between 2 subordinates broken in 1.20.12 <regression> <subordinate> <juju-core:Triaged> <https://launchpad.net/bugs/1396625> | 23:53 |
fwereade_ | menn0, I am conflicted | 23:53 |
menn0 | fwereade_: yep | 23:53 |
fwereade_ | menn0, hangout?> | 23:53 |
menn0 | fwereade_: ok | 23:53 |
thumper | wallyworld_, waigani, menn0: https://github.com/juju/juju/pull/1226 | 23:55 |
thumper | just running all the tests now | 23:55 |
* thumper goes for a jog with the god | 23:55 | |
thumper | dog | 23:55 |
wallyworld_ | if it were a cat | 23:55 |
wallyworld_ | then it would think it's a god | 23:56 |
Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!