/srv/irclogs.ubuntu.com/2016/04/22/#juju-dev.txt

mwhudsonmenn0: do we have any friends at mongodb inc or who really know mongo details inside out?00:04
menn0mwhudson: I think niemeyer might know some people there, not sure otherwise00:05
mwhudsonmenn0: ok00:06
mwhudsonto by now what is by now a general lack of surprised, switching to the mmapv1 storage engine makes the test much faster00:11
menn0mwhudson: doh ... so maybe wiredtiger sucks00:12
mwhudsonyeah it's a bit odd00:12
menn0or maybe it's something about the way we use it00:12
mwhudsoni wonder if there's some tuneable00:12
mwhudsonthis is why i would like to talk to someone who really knows their shit00:12
menn0mwhudson: start with niemeyer I guess00:14
mwhudsonniemeyer: hello hello00:14
mwhudsonhuh i wonder about using https://docs.mongodb.org/manual/core/inmemory/ for tests one day00:15
mwhudsonoh, enterprise only00:15
* mwhudson is now reading spinlock code in wiredtiger...00:31
rediruntil tomorrow juju-dev00:38
=== redir is now known as redir_eod
mwhudsonhee hee00:47
mwhudsonAfter this operation, 1,356 MB of additional disk space will be used.00:47
mwhudson(installing juju-mongodb3.2-dbgsym)00:47
niemeyermwhudson: heya00:56
niemeyerI'm on my phone so apologies in advance if the communication breaks up00:57
mwhudsonniemeyer: ok, just wondering if you know a good person to poke at mongo inc01:09
mwhudsonniemeyer: we have an issue where index creation with wiredtiger takes ~100ms vs ~1ms with mmapv1, makes some tests veeeerrrry slow01:10
mwhudsonniemeyer: also it's 100ms of wall clock time but <<100ms of cpu time so i suspect it's waiting on a lock or something01:12
niemeyermwhudson: Let me find a bug #.. Just a sec01:16
niemeyermwhudson: https://jira.mongodb.org/browse/SERVER-2119801:18
niemeyermwhudson: Very unfortunate indeed, and I could not find much support to actually fix the underlying problem01:19
niemeyermwhudson: I haven't yet finished testing with libeatmydata01:20
mwhudsonniemeyer: huh, let's try turning --nojournal off01:21
niemeyermwhudson: You can't if --config is used, but you probably don't need that01:21
niemeyer(mgo does as it needs to ensure replicas work well too)01:22
mwhudsonhm seems to help01:22
mwhudsonof course i have so much debugging crud patched into my tree that its hard to tell01:23
niemeyermwhudson: If you find something interesting please do let me know.. I'm struggling with the same issue.. Still using mmapv1 on CI due to that01:25
mwhudsonniemeyer: will do01:26
mwhudsoni should actually read the whole ticket too...01:26
axw_thumper: why should a non-controller-administrator model owner not be allowed to grant access to their model to someone else?01:27
thumperaxw_: this is what I'm fixing01:28
axw_thumper: didn't you change it to that tho? was that temporary?01:28
thumperaxw_: no, it was done that way when grant/revoke were added01:28
thumperin error01:28
axw_thumper: ah ok, I'm looking at the wrong function01:29
axw_thumper: so what will it be? only model owners can share?01:29
thumperanyone with write access to the model can share01:30
thumperand admins01:30
axw_thumper: hmm ok. I guess if you give someone write access, then it makes sense that they can delegate that to someone else. ok, thanks01:30
axw_thumper: just clarifying some docs01:30
thumpernp01:31
mwhudsonniemeyer: blah, 3.2 is still a LOT slower even without --nojournal01:33
mwhudsonbut it certainly does help01:34
mwhudson3.2/nojournal: 20s 3.2/no-nojournal: 6.5s 2.4/nojournal: 0.3s 2.4/no-nojournal: 0.8s01:35
mwhudsonand 3.2 with mmapv1 is ~the same as 2.4, this is mmapv1 vs WT, nothing else afaict01:40
mwhudsonhuh mongod doesn't start with eatmydata for some reason01:45
mwhudsonmenn0: btw i also filed https://bugs.launchpad.net/juju-core/+bug/157328602:17
mupBug #1573286: juju/mongo: oplog tests fail with mongod 3.2 <juju-core:New> <https://launchpad.net/bugs/1573286>02:17
menn0mwhudson: yep I saw that02:18
menn0mwhudson: thanks02:18
menn0mwhudson: I'll jump on that once this SSH host key work is done02:18
mwhudsoncool02:18
menn0axw_: do you happen to know off the top of your head what happens with "juju ssh" and windows machines?03:00
menn0do we explicitly block it or will it just fail because there's no SSH server?03:00
axw_menn0: windows client?03:00
menn0windows workload machine03:00
axw_menn0: I'm pretty sure it'll still try to connect03:01
axw_(and fail)03:01
menn0axw_: ok thanks03:01
axw_menn0: I'm bootstrapping azure, I can try it if you like03:01
menn0axw_: it's ok, it doesn't matter too much, more curious than anything03:02
axw_okey dokey03:03
mupBug #1571687 changed: Azure-arm leaves machine-0 from the admin model behind <azure-provider> <ci> <destroy-controller> <jujuqa> <repeatability> <juju-core:Invalid> <https://launchpad.net/bugs/1571687>03:10
mupBug #1573365 opened: Can't bootstrap --upload-tools on trusty <juju-core:New> <https://launchpad.net/bugs/1573365>03:19
mupBug #1573365 changed: Can't bootstrap --upload-tools on trusty <juju-core:New> <https://launchpad.net/bugs/1573365>03:49
=== urulama|____ is now known as urulama
mupBug #1573382 opened: only one user can create local users <juju-core:In Progress by thumper> <https://launchpad.net/bugs/1573382>04:25
* thumper goes for a wander04:57
* menn0 is done05:46
mupBug #1572707 changed: 2.0b5: panic when running juju register <juju-release-support> <landscape> <juju-core:Invalid by axwalk> <https://launchpad.net/bugs/1572707>06:01
mupBug #1573407 opened: juju show-user/list-users do not check authorisation <juju-core:Triaged> <https://launchpad.net/bugs/1573407>06:01
mupBug #1573410 opened: trusty juju 1.25.5 having issues deploying xenial lxc containers <canonical-bootstack> <juju-core:New> <https://launchpad.net/bugs/1573410>06:52
rogpeppe2perrito666: i do now :)07:31
=== rogpeppe2 is now known as rogpeppe
dimiternI figured out how to trick the unit tests into thinking trusty is still the latest lts :)08:15
dimiternmv /usr/bin/distro-info /usr/bin/distro-info-org && ln -s /usr/bin/fake-distro-info /usr/bin/distro-info08:17
dimiternfake-distro-info is just `#!/bin/bash\necho trusty`08:18
dimiternand make check passed for the first time since yesterday, just like on a good ol' trusty machine \o/08:23
dimiternbabbageclunk: morning08:41
dimiternbabbageclunk: any luck with the maas upgrade yesterday?08:41
babbageclunkdimitern: morning!08:44
babbageclunkdimitern: Well, it came back up when I restarted the vm this morning, but it's still reporting the wrong version.08:45
dimiternbabbageclunk: via the CLI ?08:45
babbageclunkI'm doing the update/dist-upgrade dance now.08:45
babbageclunkyup08:45
babbageclunkI got a bit confused by the fact that apt doesn't have a dist-upgrade command, so I just did an upgrade (which definitely mentioned maas packages).08:46
dimiternbabbageclunk: the vm where the maas contoller runs is xenial, right?08:46
babbageclunkdo I still need to do a apt-get dist-upgrade as well?08:46
babbageclunkdimitern: yes08:46
dimiternbabbageclunk: sudo apt dist-upgrade works for me btwq08:47
dimiternbtw even08:47
babbageclunkdimitern: tsk, doesn't appear in the help or the man page! Presumably there for backwards-familiarity?08:48
dimiternbabbageclunk: ha! you're correct - it doesn't appear in the help, but bash completion seems to suggest it.. I guess it's aliased to full-upgrade08:49
babbageclunkdimitern: I don't understand the difference - reading on askubunut08:50
babbageclunkuhbuntu08:50
dimiternbabbageclunk: full-upgrade vs dist-upgrade ? it appears to do the same thing on my machine at least :)08:50
babbageclunkdimitern: sweet, that's emitting lots of messages about upgrading the maas installation08:51
babbageclunkdimitern: well, migrating it08:51
babbageclunkdimitern: It was the difference between upgrade and dist/full-upgrade I didn't grok08:51
babbageclunkbut now I think I do!08:52
babbageclunkha, didn't realise maas was django08:52
dimiternheh I still don't get the difference between full- vs dist-upgrade08:53
babbageclunkdimitern: yay, version is upgraded now - between that and bumping up the ram on the controller everything seems good now.08:55
babbageclunkdimitern: thanks for the help!08:55
dimiternbabbageclunk: awesome! I'm glad it ok, as I was already feeling bad for suggesting it :)08:56
babbageclunkdimitern: :) would have been straightforward if I was a bit more familiar with all of the tools.08:56
dimiternbabbageclunk: well, with my experience maas upgrades are rarely a walk in the park :D although it seems to be improving with each release08:57
babbageclunkdimitern: ooh, I wonder if that fixes the bug with the power settings getting cleared when the machine gets allocated via the API.08:58
dimiternbabbageclunk: hopefully - they've made changes to the power handling, esp. around what's considered 'fatal error' (not to be retried)09:00
=== dooferlad_ is now known as dooferlad
voidspacebabbageclunk: dimitern: frobware: dooferlad: you updated your main machines to xenial yet?09:34
babbageclunknope09:34
dooferladvoidspace: noooooo09:34
voidspace:-)09:34
voidspacedooferlad: I thought you probably wouldn't have09:34
dimiternvoidspace: yeah09:34
voidspacedimitern: hah, cool09:35
voidspaceI might wait a few days, I don't generally wait very long09:35
dimiternvoidspace: I was eager to try maas2 2 weeks ago so I did09:35
rogpeppea trivial change to the lxd provider, review appreciated please: http://reviews.vapour.ws/r/4682/09:35
voidspacerogpeppe: LGTM09:36
rogpeppevoidspace: ta!09:37
dimiternrogpeppe: wait a sec please09:38
frobwarevoidspace: yes, for about 2 months now09:38
dimiternrogpeppe: why panic?09:38
rogpeppedimitern: we've had this conversation before09:38
dimiternrogpeppe: I guess so, but can you remind me? :)09:39
rogpeppedimitern: config.Schema is deterministic09:39
rogpeppedimitern: and configSchema is a global variable that never changes09:39
rogpeppedimitern: and we've run a test that calls environprovider.Schema09:40
* dimitern has another look09:40
rogpeppedimitern: so if config.Schema returns an error, there is some serious problem09:40
=== urulama is now known as urulama|school
=== urulama|school is now known as urulama|afk
rogpeppedimitern: the interface contract for Schema doesn't return an error (and why should it? a provider should be able to return its own schema without errors)09:41
dimiternrogpeppe: right, got it09:42
simonklbhi, I've experienced some problems with the hostname not being set in /etc/hosts when Juju with LXD as provider09:42
rogpeppedimitern: this code is just the same in the other providers09:42
simonklbthis is on 2.0 beta409:42
dimiternrogpeppe: :) thanks for explaining09:42
simonklbI saw this: https://github.com/lxc/lxd/issues/175909:42
simonklbwould it be up to Juju to set this up correctly?09:43
rogpeppejamespage: did that work OK for you?09:46
voidspace   []09:57
voidspace                      10:01
simonklbjamespage: I saw that you were involved here: https://bugs.launchpad.net/charms/+source/ceph/+bug/136567111:03
mupBug #1365671: juju + maas provider: ceph-mon doesn't listen on localhost and /etc/hosts points fqdn to 127.0.1.1 <cloud-installer> <landscape> <openstack> <ceph (Juju Charms Collection):Won't Fix> <https://launchpad.net/bugs/1365671>11:03
simonklbCould you please clarify how this works now in Juju 2.0?11:03
simonklbI'm trying to setup the hbase charm on a local LXD environment but it complains about the hostname not being set in /etc/hosts11:04
jamespagesimonklb, tbh I don't know how that would work in a LXD environment - the original bug was with MAAS doing some config it did not need todo.11:04
simonklbjamespage: do you know how cloud-init is configured? Is that something you can do with Juju?11:05
jamespagesimonklb, juju manages all of that complexity11:06
jamespagesimonklb, this charm? https://jujucharms.com/hbase/11:06
simonklbjamespage: yes!11:07
=== rvba` is now known as rvba
simonklbfrom that bug-thread you were in it said that MAAS was configured with manage_etc_hosts localhost - so is cloud-init configured per provider somehow?11:07
simonklbit seems like manage_etc_hosts is unset with the LXD only setup11:08
jamespagesimonklb, its certinaly not the same with every provider...11:08
jamespagecory_fu, hey - do we have a more recent hbase charm than https://jujucharms.com/hbase/11:08
jamespageI wrote that for 12.04 and I suspect it needs to be removed from the charmstore....11:09
jamespageits certainly not been tested recently by the looks of things...11:09
jamespagedammit need to stop doing ...11:09
jamespagegnuoy is going to start fining me about that11:09
gnuoyI am...11:09
jamespagemy fingers do it on auto11:10
simonklbjamespage: a more recent hbase would be even better, but it might be useful to know how to configure cloud-init with Juju (if it's possible)11:11
jamespagesimonklb, juju intentionaly abstracts that away from the end user11:11
jamespagethere may be configuration knobs per provider that change cloud-init behaviour, but nothing that will allow you to touch it directly...11:12
simonklbjamespage: right, seems wierd that they wouldn't make cloud-init setup /etc/hosts though11:13
jamespage"they" are right here so someone will be able to answer that definatively...11:14
jamespage;-)11:14
simonklbhaha yea, unfortunately the timezones make it so that my work day is almost over when they wake up :)11:16
simonklbatleast the americans11:16
=== urulama|afk is now known as urulama
GaryxIs the MAAS 2.0 support still wip?11:34
GaryxJust tried a new xenial MAAS setup and it gives me a runtime panic when trying to bootstrap11:35
GaryxXenial repository seems to use Beta411:36
simonklbjamespage: is it possible to run the hbase charm in hbase standalone mode?11:42
=== babbageclunk is now known as babbageclunk|run
mupBug #1571687 opened: Azure-arm leaves machine-0 from the admin model behind <azure-provider> <ci> <destroy-controller> <jujuqa> <repeatability> <juju-core:Incomplete> <https://launchpad.net/bugs/1571687>13:06
frobwaredimitern, voidspace, babbageclunk|run, dooferlad: going dark for a bit. need to get back to a working graphical login. my dist-upgrade didn't go so well.13:28
dimiternfrobware: ok, best of luck then :)13:28
frobwareI can't get my monitor out of 640x480... :(13:30
voidspaceGaryx: latest master bootstrap should work, but containers aren't yet supported13:33
voidspaceGaryx: so yes, WIP and you need to set the MAAS2 feature flag13:33
voidspaceGaryx: it shouldn't panic though - although older versions did13:33
voidspaceGaryx: so it's probably an older version you have (I hope)13:34
=== babbageclunk|run is now known as babbageclunk
cory_fujamespage: We have https://jujucharms.com/u/bigdata-dev/apache-hbase/ which is a bit newer...13:52
cory_fuBut I don't think it's really been tested much...13:52
cory_fuHBase hasn't been a priority for us...13:53
jamespagecory_fu, probably more than my 4 year old bash version....13:53
jamespagepy-juju tastic...13:53
cory_fu:)13:53
simonklbjamespage: I actually got your hbase bash charm working :D13:53
jamespagesimonklb, wow13:54
=== cmars` is now known as cmars
jamespagesimonklb, I struggled to remember I actually wrote it until I dropped into the code...13:54
jamespagemust remember to leave more bug comments as mental notes for +4 years time...13:55
jamespage180413:55
jamespagegolly13:55
jamespageoh no 200413:55
jamespageapparenlty I can't add up either...13:55
simonklbhaha, I had to modify it a bit to get hbase to work in standalone mode, but its running at least!13:55
simonklbfor some reason I have an issue pinging the machine using it's domain name, pinging other machines by hostname works, but not the one running hbase13:56
simonklbthe only difference is that the hbase machine is running precise but the other are running trusty13:56
simonklbis this a known problem?13:56
Garyxvoidspace: happened on beta5 and beta4 for me :/14:02
Garyxvoidspace: I set the featur flag so that it would try to bootstrap.14:02
babbageclunkok, this is getting ridiculous - I'm going to have to spend some time working out why my computer keeps freezing.14:31
ericsnowkatco: are we having our retrospective or just a normal standup today?14:33
katcoericsnow: standup i think... no need for a retro yet. although we should schedule one for resources before too long14:33
katcoericsnow: sorry, forgot to take it off the calendar14:34
ericsnowkatco: np :)14:34
simonklbI checked /var/lib/misc/dnsmasq.lxdbr0.leases and saw that the hostnames are not registered properly14:45
simonklbit's not depending on the series though, scratch that, same problem with machines running trusty14:45
simonklbone machine registered ubuntu * and another just14:46
simonklb* *14:46
simonklbthe ones that I'm able to ping obviously registered the hostname correctly, i.e. something like "juju-01f074e8-8788-44d6-87a3-a1861bd1e906-machine-0 *"14:47
simonklbany dnsmasq gurus here? :)14:47
simonklblooks like the machines register themselves with a different hostname first and then try to register again with the real hostname14:51
simonklbis this some kind of race?14:51
marcoceppican we not bootstrap remote lxd servers?14:53
simonklbsaw this came up years ago as well https://bugs.launchpad.net/ubuntu/+source/maas/+bug/104312114:54
mupBug #1043121: deployed node cannot be looked up with dnsmasq on MAAS <amd64> <apport-bug> <precise> <maas (Ubuntu):Won't Fix> <maas (Ubuntu Precise):Won't Fix> <https://launchpad.net/bugs/1043121>14:54
simonklbbut for MAAS14:54
simonklbI'm hitting this with local LXD14:54
natefinchmarcoceppi: we don't support remote LXD currently14:59
katcoericsnow: standup time15:01
mupBug #1573659 opened: Panic in when bootstrapping MAAS 2.0 <maas-provider> <juju-core:Triaged> <https://launchpad.net/bugs/1573659>15:09
dimiternfrobware, voidspace, dooferlad, babbageclunk: guys, I'd appreciate a review on this: http://reviews.vapour.ws/r/4685/15:12
babbageclunkvoidspace, dooferlad, dimitern - I think we had this discussion last week, but no Juju-spaces sync meeting anymore? I should delete the appointment.15:12
dimiternbabbageclunk: ooh.. I forgot, but yeah I guess no call today as well15:13
babbageclunkdimitern: oh, but should I keep the appointment in my calendar?15:14
dimiternbabbageclunk: delete it, we will likely reschedule anyway once it starts regularly again15:14
babbageclunkok15:14
babbageclunkdimitern: wow, that's a lot of scrolling15:17
dimiternbabbageclunk: hopefully not too hard to follow - tried to mostly remove stuff and resist the occasional urge to refactor :)15:18
babbageclunkdimitern: yeah, it looks like just deletia. (And comment rewrapping.)15:20
dimiternbabbageclunk: thanks!15:24
=== Makyo_ is now known as Makyo
mupBug #1573665 opened: Drop special-casing of precise once we no longer support it. <juju-core:New> <https://launchpad.net/bugs/1573665>15:27
mupBug #1573668 opened: bootstrap should really be add-controller <docteam> <juju-core:New> <https://launchpad.net/bugs/1573668>15:27
dimiternvoidspace, dooferlad, frobware: ping15:28
dooferladdimitern: pong15:30
dimiterndooferlad: here it is http://reviews.vapour.ws/r/4685/ :)15:30
dooferladdimitern: will take a look in a moment.15:31
dimiterndooferlad: ta!15:31
dimiternbabbageclunk: btw that panic when bootstrapping maas2 seems to be when a machine has at least 1 nic with mode=auto and no subnet15:34
babbageclunkdimitern: ok - can I reproduce that in vmaas?15:37
dimiternbabbageclunk: yeah, should be easy - just add a second nic to a node, recommission it, and try to bootstrap +maas2 ff on and --to my-node-hostname15:40
dimiternbabbageclunk: this might help: http://paste.ubuntu.com/15983759/15:42
babbageclunkdimitern: thanks - I was still trying to unpack it. +maas2? ff on?15:42
dimitern:) sorry - too concise15:42
dimiternbabbageclunk: with the maas2 feature flag enabled15:42
babbageclunkdimitern: Ha! should have known that.15:43
alexisbfwereade, ping15:43
babbageclunkdimitern: ok - I'll try to chase it down now.15:43
dimiternbabbageclunk: thanks! cherylj filed a bug 157365915:46
mupBug #1573659: Panic in when bootstrapping MAAS 2.0 <maas-provider> <juju-core:Triaged> <https://launchpad.net/bugs/1573659>15:46
dimiternbabbageclunk: some logs/context here as well -  https://github.com/juju/juju/issues/5259#issuecomment-213466954 (telltale sign of a link without subnet - mode=auto, is this log message `interfaces.go:274 interface "eno4" has no address`, just before the panic)15:48
=== urulama is now known as urulama|afk
voidspacedimitern: another monster review from dimitern16:04
voidspacedimitern: grabbing coffee first16:04
babbageclunkdimitern: hmm, I added another nic and recommissioned, but now it doesn't show any network for the node. Do I need to add both of them?16:04
dimiternvoidspace: it's mostly removals :)16:04
dimiternbabbageclunk: doesn't show *any* interfaces after commissioning?16:05
babbageclunkdimitern: nope16:05
dimiternbabbageclunk: can you paste the output of 'maas .. interfaces read <node-id>' ?16:06
perrito666anyone else experiencing tests not passing for xenial?16:07
babbageclunkdimitern: hang on, I tried removing it and recommissioning to see what I saw then.16:07
dimiternperrito666: you're on xenial?16:09
dimiternperrito666: I managed to get them passing by moving /usr/bin/distro-info out of the way and replacing it with a bash script that simply outputs "trusty"16:10
perrito666dimitern: that is..... no, I wont do that, tests need fixing16:10
dimiternperrito666: yeah, I tried that for 2h yesterday and decided I have enough other stuff to do :)16:11
perrito666dimitern: ok, that gives me an idea of the order of magnitude16:11
perrito666but, this is also something that broke recently16:11
babbageclunkdimitern: should I add the nic on a different network?16:13
dimiternbabbageclunk: just leave it unconfigured16:14
alexisbfwereade, I am going to have cherylj hand off the quick fix for bug 157223716:14
mupBug #1572237: juju rc1 loses agents during a lxd deploy <lxd-provider> <juju-core:Triaged by fwereade> <https://launchpad.net/bugs/1572237>16:14
alexisbunless you speak now16:15
alexisbwe will need to try and get something in today16:15
babbageclunkdimitern: ah, ok - that's probably what I got wrong.16:15
cheryljericsnow, katco ping?16:15
ericsnowcherylj: hi16:15
babbageclunkdimitern: (sorry to keep bugging you)16:15
cheryljhey ericsnow, that bug alexisb just mentioned is super critical and we need someone to see if there's a quick fix we can do for it.16:16
babbageclunkdimitern: how do I leave it unconfigured?16:16
ericsnowcherylj: I'll take a look16:16
cheryljericsnow: want to do a quick HO to see if you would be comfortable taking it?16:16
dimiternbabbageclunk: leave both dropdowns (subnet and address) Unconfigured?16:16
babbageclunkdimitern: just leave out the bridge name?16:16
dimiternbabbageclunk: what bridge?16:17
ericsnowcherylj: only if you think it would help :)16:17
babbageclunkdimitern: the dropdowns are network source and device model.16:17
cheryljericsnow: I looked through the bug again, and fwereade did put in his update about a possible solution, so just let me know if you have questions16:18
babbageclunkdimitern: hang on - dropdowns in VMM or MAAS ui? I'm talking about the VMM ui16:18
ericsnowcherylj: k16:18
cheryljI couldn't remember if he had updated the bug with that info or not16:18
dimiternbabbageclunk: ah, sorry16:19
dimiternbabbageclunk: in the virt-manager connect both NICs to the same bridge (maas-19-int in my case)16:19
babbageclunkdimitern: Ok, now I've got two interfaces, one unconfigured.16:23
babbageclunkdimitern: Does this look right? http://pastebin.ubuntu.com/15984913/16:24
perrito666cherylj: https://github.com/juju/juju/pull/526216:24
dimiternbabbageclunk: great, so bootstrapping with --upload-tools --to <node-name> should (hopefully) reproduce the panic16:25
perrito666as small as it looks, that fixes most of the remaining windows tests16:25
dimiternbabbageclunk: yeah - notice how the second (ens9) is mode=link_up only, no subnet16:25
babbageclunkdimitern: ok, go it!16:28
babbageclunkdimitern: duh, got16:28
dimiternbabbageclunk: nice!16:29
babbageclunkdimitern: I mean, the panic at least.]16:29
dimiternbabbageclunk: passing also --config=logging-config='<root>=TRACE' combined with some additional trace logging (if needed) around maas2Interfaces should show the cause16:31
cheryljperrito666: did you live test on windows?16:32
babbageclunkdimitern: ok, thanks - I can see where it is, although it's odd - there's a nil check immediately before it.16:32
babbageclunkdimitern: ok, digging a bit more.16:32
dimiternbabbageclunk: thanks for looking into that16:32
dimiternbabbageclunk: nil checks on an interface value might be misleading btw16:33
dimiternbabbageclunk: the infamous double nil dereference16:33
babbageclunkdimitern: Ok - that's almost certainly the problem.16:33
dimitern(usually concerns errors only, but..)16:33
babbageclunkdimitern: I've heard of that but hadn't ever seen it in the wild before!16:33
perrito666cherylj: I did, I actually am fixing those on windows16:34
cheryljperrito666: nice :)16:35
katcocherylj: wow sorry i completely missed your ping... did you get what you needed?16:36
babbageclunkdimitern: hmm. It sounds like the right fix for that is to make the subnet methods handle a nil receiver.16:36
dimiternbabbageclunk: here's some info on that if you're interested: http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/index.html#nil_in_nil_in_vals16:36
cheryljkatco: yes, thanks :)16:36
katcocherylj: k, sorry about that16:36
katcoericsnow: ta16:36
cheryljkatco: no worries16:36
babbageclunkdimitern: given that I can't cast to the real underlying type.16:36
babbageclunkdimitern: since it's private in another package.16:36
babbageclunkdimitern: and reflection seems like the wrong thing to use here.16:37
dimiternbabbageclunk: well, if the gomaasapi.Subnet interface's implementation uses non-pointer receivers (as they just access the data already populated in the unexported fields)16:37
perrito666cherylj: I need to suffer to fix those in order to feel the same that windows feels :p16:37
cheryljhaha16:37
babbageclunkdimitern: no, no value receivers.16:39
=== redir_eod is now known as redir
voidspacedimitern: that's a lot of code removed!16:41
voidspacedimitern: still reading16:41
dimiternvoidspace: :) hopefully more to come soon16:46
babbageclunkdimitern: were you halfway through a thought?16:47
voidspacedimitern: heh16:47
voidspacedimitern: I'm on page 316:47
voidspaceof 76 apparently...16:47
voidspacepossibly a slight exaggeration16:47
dimiternvoidspace: might be easier to look the diff on github instead16:47
babbageclunkdimitern: Hmm - I could add an IsNil method to gomaasapi.Subnet. Is that idiomatic?16:48
dimiternbabbageclunk: I wanted to also remove a few other things, but that would have made it harder to follow16:48
voidspacedimitern: appreciated16:48
dimiternbabbageclunk: nope, how about just changing gomaasapi.subnet's methods to use non-pointer receivers?16:49
babbageclunkdimitern: oh, I see. Does that work? Trying now in the playground. If so I'll do that.16:50
dimiternbabbageclunk: for example: http://play.golang.org/p/pAHQEQEunJ16:52
babbageclunkdimitern: How does that help? They both panic.16:56
babbageclunkdimitern: oh, hang on - I think I'm misreading16:56
dimiternbabbageclunk: that might be a better example actually: http://paste.ubuntu.com/15985771/16:57
dimiternbabbageclunk: it's not quite there yet, but it's a start16:57
babbageclunkdimitern: not quite analogous - they they're both == nil.16:57
babbageclunkdimitern: but the problem is that the subnet's nil - do you mean do the same thing to the links?17:00
dimiternbabbageclunk: yeah, that's one option17:01
babbageclunkdimitern: why does that help? you've just changed the point at which the address gets taken - does that change how the interface gets constructed?17:02
babbageclunkdimitern: sorry if I'm being dense.17:02
dimiternbabbageclunk: basically change the whole chain interface->link->subnet->vlan to ensure no dangling pointers17:02
babbageclunkdimitern: ok, I think I see17:02
dimiternbabbageclunk: or, alternatively make sure any method that returns an interface does check the pointer field != nil before17:03
babbageclunkdimitern: I think it has to be that, right?17:04
dimiternbabbageclunk: the crux of the problem is that getters-returning-interfaces should also return either an error or at least a "exists" bool flag17:04
babbageclunkSo interface.Subnet() shouldn't return Subnet(nil), it should return nil17:04
dimiternbabbageclunk: that' won't help though17:05
babbageclunkOh, but can it do that? It doesn't return a *Subnet.17:05
dimiternbabbageclunk: as the compiler will silently wrap the nil in a non-nil interface instance17:05
babbageclunkdimitern: ok, that's what I thought.17:06
dimiternbabbageclunk: e.g. if link.Subnet() returned (Subnet, bool) instead of just Subnet, and use the bool to indicate whether l.subnet == nil..17:06
babbageclunkdimitern: Ok, so then I think you're right17:07
cheryljperrito666: can we count on c: always being the root?17:07
dimiternit will be a lot more natural to the caller to check firs the flag and only then try to use the subnet interface17:07
perrito666cherylj: I was clear on "just do this for tests and fake paths" :)17:07
perrito666cherylj: otherwise no, you cant17:07
perrito666cherylj: there is no "root" on windows, or at least is not such a clear concept17:07
babbageclunkdimitern: Or the other way would be to have IsNil methods on all of those interfaces. But I think you're right, the other way is probably more Go-y.17:08
cheryljperrito666: okay, thanks.   :)17:08
perrito666cherylj: ask as much as you like I am really happy to share the windowsness17:08
babbageclunkdimitern: that's kind of a nasty gotcha.17:09
dimiternbabbageclunk: you can check for if subnet != nil, assuming 'subnet' is an interface, coming from a func that returns either the implementation or a plain nil17:09
dimiternbabbageclunk: and because this happens a lot with errors, that's why we have jc.ErrorIsNil vs gc.IsNil17:10
voidspacedimitern: LGTM17:10
dimiternvoidspace: \o/ tyvm17:10
voidspacedimitern: nice work, thank you17:11
dimiterndooferlad: I'll wait for your review as well - will check back in a hour or so17:11
babbageclunkdimitern: but there's no way we can change our interface to do that, right?17:11
dimiternvoidspace: cheers17:12
dimitern(well  - it was a pleasure to see old mistakes go away)17:12
=== mup_ is now known as mup
babbageclunkdimitern: If the implementation methods returned (eg) *vlan instead of VLAN would that help?17:12
dimiternbabbageclunk: yeah, but that trail has long left :)17:13
babbageclunkdimitern: because the interfaces would still return VLAN17:13
dimiternbabbageclunk: another reason why you should take interface arguments but return concrete (pod) types17:13
babbageclunkdimitern: *interface methods I mean17:13
babbageclunkdimitern: hard to do testing with that, though.17:15
dimiternbabbageclunk: I need to leave now, but I'm sure you can figure it out17:16
dimitern:)17:16
babbageclunkdimitern: same!17:16
babbageclunkdimitern: Thanks for all the help - have a lovely weekend!17:16
* babbageclunk isn't as sure he can figure it out.17:16
dimiternchanging a few methods to return (interface-result, bool-flag) should be easy (and also to test)17:16
dimiternbabbageclunk: cheers! likewise ;)17:17
babbageclunkyup yup17:17
mupBug #1573681 opened: conflict when managing LXD storage with Juju 2.0 <kanban-cross-team> <landscape> <juju-core:New> <Juju Charms Collection:New> <https://launchpad.net/bugs/1573681>17:43
redirericsnow: you wanted to review this WIP?18:35
ericsnowredir: sure18:38
ericsnowredir: it might be a little while as I'm working on a priority bug18:38
redirericsnow: http://reviews.vapour.ws/r/4689/18:38
redirnp18:38
redirI'll keep chugging on the other LTS things.18:39
redirThey need to land all at once. But incremental reviews would make it much easier.18:39
redirericsnow: ^18:39
ericsnowredir: k18:39
mupBug #1573741 opened: 2.0-rc1 cannot deploy in azure <azure-provider> <blocker> <ci> <deploy> <regression> <juju-core:Triaged> <https://launchpad.net/bugs/1573741>18:43
mupBug #1573742 opened: Newly provisioned machines start off at the controller's version. <juju-core:New> <https://launchpad.net/bugs/1573742>18:43
=== redir is now known as redir_lunch
redir_lunchdoes juju still use zookeeper?20:45
=== redir_lunch is now known as redir
katcoredir: it does not20:47
redirkatco: that was my understanding. Just see comments referencing making sure it is configured to start...20:48
katcoredir: where is that?20:48
redirprovider/ec2 tests20:49
redirkatco: ^20:49
katcoredir: if you're nearby, create a small patch to remove those comments20:49
redirkatco: I am working on that test so I'll do it in the drive by20:50
katcoredir: nice, good find :)20:50
katcoredir: and ta20:50
redirkatco: I think I'll have a qq here in this test. i20:50
redirkatco: It is testing the cloud-init stuff which will be significantly different in xenial due to the change to systemd20:51
redirkatco: wondering if we need seperate tests for xenial and pre-xenial20:51
katcoredir: i didn't want to get into it this morning, but the fact that our tests don't work on different releases is a huge smell to me20:53
katcoredir: i.e. unit tests really shouldn't be affected by what release you're on20:53
redirkatco: agreed.21:03
redirericsnow: resubmitted a PR that has all passing tests rebased on master. RB: http://reviews.vapour.ws/r/4691/22:56
ericsnowredir: k22:56
rediror if there's anyone else that wants to review that ^^ feel free22:59
alexisbericsnow is busy22:59
alexisbsaving the world22:59
rediralexisb: yeah, that's why I said or anyone else. ericsnow has a full plate23:01
redirand it is late on friday, so the reviewer pool is shallow23:02
alexisbredir, I would do it for you but I am not an official reviewer so you would need another +1 besides me23:03
rediralexisb: understood:)23:03
* redir goes to look at the board23:04
mgzha!23:09
mgzredir: (looking, btw)23:09
mgzone of the ec2 local server suite tests actually had 'zookeeper' in a commen23:10
mgzso not only was it ported verbatim from pyjuju and not corrected, no one looked at it since23:10
alexisbheh23:11
redirmgz: tx23:14
mgznot wild about the way these bundle tests are written, but I guess it's 2 years before we have to edit all these strings again23:15
mgzthe alternative is I guess faking out the series selection stuff at the suite level,23:15
redirmgz: you are not alone23:16
redir2.1!23:16
redir:)23:16
mgzredir: and the ec2 bootstrap test is just a fork of the existing one in two, so I won't nitpick it23:24
redirmgz yeah that could have been smarter23:26
mgzredir: review'd23:27
alexisbmgz, thank you especially given it is nearly  your saturday23:29
mgzalexisb: it is totally saturday :)23:29
alexisbmgz, are you UTC or UTC+123:30
mgzIn summer time so... +1 atm?23:30
alexisb:) well in that case, dude! go enjoy your weekend23:30
mgzhey, I've got 9 hours till saturday morning squash23:32
perrito666mgz: here we call this friday night, and spend it drinking23:33
mgzperrito666: what's the bootstrap wait loop change about in your windows tests pr?23:36
mgzit looks reasonable, just not sure how it's connected23:36
perrito666a race condition23:37
mgzperrito666: review'd23:38
perrito666mgz: in go 1.6, in windows, it will sometimes end withouth returning lastErr because of the select having hc.closed firing first23:38
perrito666mgz: why this happens only in windows, beats me23:38
perrito666it should be happening in linux too23:39
mgzperrito666: some socket implementation detail? I'd expect that to be the case on all platforms.23:39
perrito666mgz: could be23:39
perrito666in any case, the logic was begging for that race to happen23:39
perrito666I wish it was easier to track though :p23:40
redirmgz: commented on your comment.23:41
mgzredir: don't see it? hit publish mabe?23:43
redirmmm yup I was muted on RB23:43
redirmgz: the tests fail if they don't match up.23:44
mgzredir: right, I expect that to be the case23:44
redirso they can't be unique23:44
mgzthe question is do we care to fix them so the tests actually end up with exactly one image23:45
rediror they are unique in export_test23:45
mgzwhich they know what it is23:45
redirthey do end up with one of the images in export_test23:45
mgzbut, if it makese sense in the context of the test, feel free to drip the issue23:45
redirdepending on what constraints are applied23:45
redirOK23:45
redirdropping23:45
rediror dripping23:45
rediras it were23:45
redirtx23:45
mgzperrito666: you win funny find/replace error of the day23:46
perrito666mgz: lol, tx23:46
mgzperrito666: `git diff 5d2acdb0^..5d2acdb0 -- environs/config/config.go` - spot the funny mistake23:48
perrito666mgz: could you pastebin? I am in an odd repo status23:48
mgzperrito666: I'll fix and make you review23:48
perrito666aghh logger23:50
mgzperrito666: :P23:50
perrito666(I had a seccond repo)23:50
perrito666I suck23:50
rediroh, are we on next again?23:51
rediror is master just closed for a while23:51
mgzwe're not on next23:51
redirwell yeah we prolly don't want to land that thing you just reviewed23:52
mgzalexisb: are we keeping master blocked just for eric's fix?23:53
redirare the test slaves setup to have distro-info --lts return trusty?23:53
alexisbmgz, it is blocked for the azure bug23:53
alexisbbut yeah no other commits atm please23:53
mgzredir: yeah, we moved our setup in time23:54
mgzso, we have another month of trusty as the default23:54
redirmgz OK because that PR you reviewed is to fix it to work when --lts returns xenial.23:54
redirmgz: which means it will prolly break on your time shifted slaves23:55
mgzredir: we can coordinate that monday23:55
* redir is unclear on the transition process23:55
mgzredir: probably just want me or curtis to revert the hack as your branch lands23:56
redirhopefully it still merges cleanly and passes then:o23:56
redirOK. I'll follow up with whomever is around then.23:56
redirGood luck at squash in 8 hours23:57
mgzI played quite well on two hours sleep last week, though... not generally a good idea23:57
redirindeed23:58

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