[00:05] <thumper> davecheney: did you find a simple reproduction test case for the dbus issue?
[00:07] <davecheney> working on it now
[00:07] <davecheney> will time box it til lunch
[00:07] <davecheney> then move on to '632
[00:20] <davecheney> menn0: you're on call reviewer ? http://reviews.vapour.ws/r/3228/
[00:20] <davecheney> ta
[00:33] <menn0> davecheney: looking
[00:47] <menn0> davecheney: I don't completely get the fslock code, but ship it I guess
[00:47] <davecheney> menn0: IMO the fslock code is broke
[00:47] <davecheney> and that fix just made it worse
[00:48] <menn0> yeah the fix didn't make any sense to me
[00:48] <davecheney> look at line 111
[00:48] <davecheney> line 125 is a noop
[00:48] <menn0> davecheney: exactly, that's what didn't make any sense
[00:49] <davecheney> i want to revert the change so I can reopen the bug
[00:49] <davecheney> func (conn *Conn) Signal(ch chan<- *Signal)
[00:49] <davecheney> https://bugs.launchpad.net/juju-core/+bug/1519097
[00:49] <mup> Bug #1519097: juju/utils/fslock: data race caused by createAliveFile running twice <juju-core:Fix Committed by dooferlad> <https://launchpad.net/bugs/1519097>
[00:50] <davecheney> thumper: i screwed around with dbus to try to make a repro but it's going to be a lot of work
[00:50] <davecheney> waigani: do you have the panic message you got ?
[00:50] <davecheney> i'll raise a bug with the dbus project
[00:50] <davecheney> thumper: I've created a fake dbus read/write/closer in an attempt to be a message pump that just spews out signal messags
[00:51] <waigani> davecheney: yep, one sec
[00:51] <davecheney> but it won't work unless it can emulate all the dbus connection handshaking
[00:51] <waigani> davecheney: here you go: http://pastebin.ubuntu.com/13488000/
[00:55] <davecheney> waigani: ta
[01:04] <davecheney> waigani: https://github.com/godbus/dbus/issues/45
[01:04] <davecheney> i'll look at fixing it this week
[01:05] <waigani> davecheney: perfect. Thank you :)
[01:05] <waigani>  insane unit test rig, indeed
[01:10] <davecheney> it's unreasonable for other people to have to install all the stuff we do to reproduce our bugs
[02:04] <davecheney> thumper: cherylj perhaps this is the problem
[02:04] <davecheney> lucky(~/src/github.com/juju/juju) % juju set-env agent-stream=devel
[02:04] <davecheney> WARNING key "agent-stream" is not defined in the current environment configuration: possible misspelling
[02:12] <davecheney> thumper: cherylj I cannot reproduce https://bugs.launchpad.net/juju-core/+bug/1517632
[02:12] <mup> Bug #1517632: juju upgrade-juju after upload-tools fails <juju-core:Triaged by dave-cheney> <https://launchpad.net/bugs/1517632>
[02:12] <davecheney> works for me
[02:13] <thumper> davecheney: please comment on the bug as non-reproducable with what you tried, and unassign from you
[02:16] <davecheney> thumper: done
[02:17] <cherylj> davecheney: yeah, you'll see that error if you haven't set agent-stream before.  It'll still pick up the correct stream.
[02:20] <davecheney> which it did
[02:20] <davecheney> and worked fine
[02:20] <cherylj> yeah, at this point, I'll need to see if the bootstack team can recreate.
[02:21] <thumper> clucking bell
[02:21] <thumper> I have the fix for a bug
[02:21] <thumper> the hard bit is testing the freaking thing
[03:02] <cherylj> wallyworld: ping?
[03:02] <wallyworld> hey
[03:03] <cherylj> hey wallyworld, I've got a question for you.  The people who ran into that weird 1.23 -> 1.24 upgrade error yesterday are asking what they should do now - do a restore to 1.23, or do a file-level backup to 1.20, before they upgraded to 1.23
[03:03] <cherylj> https://bugs.launchpad.net/juju-core/+bug/1517992
[03:04] <mup> Bug #1517992: juju-upgrade to 1.24.7 leaves juju state server unreachable <juju-core:Triaged> <https://launchpad.net/bugs/1517992>
[03:04] <cherylj> if you're interested in taking a look
[03:04] <cherylj> I'm not sure what problems they could run in to with the file level backup.
[03:04] <wallyworld> when you say "do a file level backup to 1.20", what do you mean?
[03:05] <cherylj> Like restoring through something like crash plan or something
[03:05] <cherylj> outside of juju
[03:06] <wallyworld> so you mean try and go back to 1.20
[03:06] <wallyworld> and then upgrade to 1.24
[03:06] <cherylj> yes
[03:06] <wallyworld> menno has a script to upgrade off 1.23
[03:06] <wallyworld> i'd go that path first
[03:07] <wallyworld> as it has been tested and used by customers
[03:07] <cherylj> do you know where I can find it?
[03:07] <wallyworld> menn0: where's you 1.23 upgrade script?
[03:07] <wallyworld> there was an email somewhere
[03:08]  * menn0 looks
[03:08]  * menn0 remembers
[03:08] <menn0> it's a juju plugin
[03:08] <menn0> in the standard repo
[03:09] <menn0> https://github.com/juju/plugins/blob/master/juju-unstick-upgrade
[03:09] <wallyworld> cherylj: that that help? ^^^^^
[03:09] <cherylj> hopefully.
[03:10] <cherylj> menn0: they're seeing this error on their state server:
[03:10] <cherylj> 2015-11-19 17:28:27 DEBUG juju.apiserver.upgrader upgrader.go:185 desired version is 1.24.7, but current version is 1.23.3 and agent is not a manager node
[03:10] <cherylj> would that script help in the case where the state server doesn't think it's a manager node?
[03:11] <menn0> that could be a side effect of the condition
[03:11] <menn0> cherylj: oh hang on, the message is from on the state server?
[03:12] <cherylj> menn0: yeah
[03:16]  * thumper headdesks
[03:16] <menn0> cherylj: weird. in the state server's logs does it look like most of the workers have have shut down?
[03:16] <thumper> I don't like this but submitting a fix with no test
[03:17] <cherylj> menn0: the state server will start up, then shut down as it's trying to do an upgrade, but then that fails because of that error
[03:18] <cherylj> I mean, it will shut down the workers to try and do an upgrade
[03:19] <menn0> cherylj: hmmm, not sure.
[03:19]  * menn0 looks at that code
[03:20] <thumper> menn0: http://reviews.vapour.ws/r/3230/
[03:20] <menn0> cherylj: the plugin might still get the state server through it
[03:21] <menn0> cherylj: it'll change the tools symlink for the agent to the new version and restart the agent
[03:21] <menn0> cherylj: which will get it running the new version
[03:23] <cherylj> menn0: okay, I will have them give it a try.  Thanks!
[03:24] <menn0> thumper: ship it
[03:24] <thumper> menn0: ta
[03:25] <menn0> cherylj: they'll want to follow the instructions for installing juju-plugins. once they have the "juju unstick-upgrade" command will be available.
[03:26] <cherylj> thanks, menn0.  Hopefully this will work for them!
[03:27] <cherylj> just one more question.  This was a failed upgrade off of 1.23 (to 1.24.7).  Will it still be okay to run the script?
[03:28] <cherylj> menn0: ^^
[03:40] <menn0> cherylj: yes
[03:40] <menn0> cherylj: it addresses specific problems with getting off 1.23 to something newer 1.24 and up
[03:40] <cherylj> menn0: cool, thanks.  Just wanted to double check :)
[03:53] <thumper> wallyworld: got a quick minute?
[03:54] <wallyworld> sure
[03:54] <thumper> 1:1 hangout
[04:06] <davecheney>   
[04:06] <davecheney> p
[04:07]  * thumper is done
[04:18] <mup> Bug #1438951 changed: destroy-enviroment --force destroy all aws instances <destroy-environment> <ec2-provider> <juju-core:Expired> <https://launchpad.net/bugs/1438951>
[04:18] <mup> Bug #1472009 changed: manual provisioning with juju requires systemd-services <manual-provider> <systemd> <juju-core:Expired> <https://launchpad.net/bugs/1472009>
[04:24] <mup> Bug #1438951 opened: destroy-enviroment --force destroy all aws instances <destroy-environment> <ec2-provider> <juju-core:Expired> <https://launchpad.net/bugs/1438951>
[04:24] <mup> Bug #1472009 opened: manual provisioning with juju requires systemd-services <manual-provider> <systemd> <juju-core:Expired> <https://launchpad.net/bugs/1472009>
[04:27] <mup> Bug #1438951 changed: destroy-enviroment --force destroy all aws instances <destroy-environment> <ec2-provider> <juju-core:Expired> <https://launchpad.net/bugs/1438951>
[04:27] <mup> Bug #1472009 changed: manual provisioning with juju requires systemd-services <manual-provider> <systemd> <juju-core:Expired> <https://launchpad.net/bugs/1472009>
[04:33] <mup> Bug #1438951 opened: destroy-enviroment --force destroy all aws instances <destroy-environment> <ec2-provider> <juju-core:Expired> <https://launchpad.net/bugs/1438951>
[04:33] <mup> Bug #1472009 opened: manual provisioning with juju requires systemd-services <manual-provider> <systemd> <juju-core:Expired> <https://launchpad.net/bugs/1472009>
[04:36] <mup> Bug #1438951 changed: destroy-enviroment --force destroy all aws instances <destroy-environment> <ec2-provider> <juju-core:Expired> <https://launchpad.net/bugs/1438951>
[04:36] <mup> Bug #1472009 changed: manual provisioning with juju requires systemd-services <manual-provider> <systemd> <juju-core:Expired> <https://launchpad.net/bugs/1472009>
[05:04] <davecheney> menn0: http://reviews.vapour.ws/r/3232/
[07:00] <wallyworld> mattyw: is there a hangout?
[07:00] <mattyw> wallyworld, ashipika grrr, should be one in the meeting thing?
[07:01] <wallyworld> not that i can see
[07:01] <mattyw> I remember giving it a "witty" name
[07:01] <ashipika> mattyw: how about https://plus.google.com/hangouts/_/canonical.com/cross-model-relations
[07:01] <mattyw> ashipika, heading there now, I can't even add a hangout to the meeting it seems
[07:50] <wallyworld> urulama: i have run into a problem. the charm store PutArchive function, called via the charmrepo UploadArchive(), complains when a charm is uploaded without a Series in the URL. But with series in metadata, it's perfectly ok to do this.
[07:51] <wallyworld> so I have a bunch of failing juju tests
[07:51] <urulama> wallyworld: so, yes, if series is in metadata, then you don't need it in the url. if it's not, then it's an old charm and series must be in the url as before
[07:52] <wallyworld> ok, i need then to look at the test charms used by juju, thanks
[07:52] <urulama> np
[07:53] <urulama> that behaviour is required to keep things backward compatible (and also makes sense, series must be provided somewhere in the uplaod)
[08:16] <frobware> dimitern, ping
[08:16] <dimitern> frobware, hey
[08:17] <frobware> dimitern, re: 1519527 - are you on MAAS rc1 or rc2?
[08:17] <dimitern> frobware, on rc1 still
[08:18] <dimitern> frobware, but it was upgraded one too many times I think it's time for a fresh install
[08:19] <dimitern> frobware, I was having issues with the old desktop pc I'm using - 1G RAM only, i386 P4 and occasionally overheating and throttling down - all that slows down machines deployment a lot
[08:23] <frobware> dimitern, I was asking to see if the issue came in rc2; I still have rc1 so will try there first.
[08:23] <frobware> dimitern, good morning btw. ;)
[08:25] <dimitern> frobware, good morning :)
[08:25] <dimitern> frobware, I'm done with service bindings in state - proposed it late last night
[08:26] <dimitern> frobware, I'm doing a quick live test first and then will update the PR's description and ask for reviews
[08:27] <frobware> dimitern, sounds great
[08:28] <dimitern> frobware, wait until you see the diff :)
[08:29] <frobware> dimitern, could do with brainstorming session later regarding rendering /e/n/i for bonds.
[08:29] <dimitern> frobware, sure
[08:39] <dimitern> dooferlad, ping
[08:52] <dimitern> fwereade, morning!
[08:52] <fwereade> dimitern, o/
[08:52] <jam> morning dimitern
[08:52] <dimitern> jam, morning :)
[08:53] <dimitern> fwereade, I have a review for you, if you can have a look: http://reviews.vapour.ws/r/3223/
[08:53] <dimitern> fwereade, it's a bit large, but mostly due to heavy testing :)
[09:27] <voidspace> dooferlad: ping
[09:27] <dooferlad> voidspace: hi
[09:28] <voidspace> dooferlad: did you see my messages about SetNodeNetworkLink about 5:20pm last night?
[09:28] <dooferlad> voidspace: no
[09:28] <voidspace> dooferlad: SetNodeNetworkLink is new, right?
[09:28] <voidspace> dooferlad: it would be much more convenient if it took a SystemID rather than a Node
[09:29] <voidspace> dooferlad: as getting a node is inconvenient, and constructing one just to pass a system id (all the function actually needs) is a minor burden :-)
[09:29] <dooferlad> voidspace: OK, can you write what you want in an email / task? I am looking at another problem + have meetings
[09:29] <voidspace> dooferlad: ok
[09:29] <voidspace> dooferlad: np, see you at standup
[09:40] <fwereade> dimitern, reviewed, ping if questions
[09:41] <dimitern> fwereade, cheers!
[09:55] <wallyworld> urulama: there's still a problem. the charmstore.v5 func (h *ReqHandler) serveArchive(id *charm.URL...) method expects id to have series set. but it doesn't. the content which is uploaded has series in metadata, but that handler checks id.Series even before looking at the contents of the request
[09:56] <wallyworld> so it seems you can't upload a charm with url "~user/wordpress" even if the metadata.yaml has series
[09:57] <wallyworld> that's using charmrepo.v2 csclient  UploadCharmWithRevision()
[09:58] <urulama> did you set the export?
[09:58] <wallyworld> this is for tests
[09:58] <urulama> hm
[09:58] <wallyworld> urulama: looking at the code, i can't see how it could possibly work
[09:59] <urulama> which code?
[09:59] <wallyworld> the code path used does not allow an id with out a series
[09:59] <wallyworld> charmrepo.v2 csclient  UploadCharmWithRevision()
[09:59] <wallyworld> github.com/juju/juju/testcharms/charm.go:64
[09:59] <urulama> you cant upload a charm with revision!
[09:59] <wallyworld> sorry
[09:59] <wallyworld> gopkg.in/juju/charmrepo.v2-unstable/csclient/csclient.go:191
[10:00] <wallyworld> no, there is a revison
[10:00] <wallyworld> i just left off the params
[10:00] <wallyworld> the code is
[10:00] <wallyworld> err = client.UploadCharmWithRevision(id, ch, promulgatedRevision)
[10:00] <urulama> yes, promulgated revision :)
[10:00] <wallyworld> where promulgatedRevision is 3 or whatever
[10:00] <wallyworld> id is "wordpress-3"
[10:00] <wallyworld> ch is a charm with series in metadata
[10:01] <urulama> that the case to support the ingestion, where we have to use that
[10:01] <wallyworld> i follow the code and i can see how it would fail, the code doesn't allow id to have an emoty series
[10:01] <urulama> uploads should never set revisions in normal cases
[10:01] <wallyworld> so all this is in existing test code which is failing now tht series is not in the url but in metadata
[10:02] <dimitern> voidspace, frobware, jam, fwereade, standup?
[10:02] <urulama> test failing in juju or where?
[10:02] <wallyworld> test failing in juju
[10:02] <wallyworld> it is uploading charms to then test bundle deployment
[10:02] <wallyworld> we used to force a url to have the trusty series
[10:03] <wallyworld> but now the test allows the url series to be "" because the series is in charm metadata
[10:03] <wallyworld> if i use the url "trusty/wordpress" then subsequent repo.Resolve("wordpress") calls fail
[10:04] <wallyworld> but i should just be able to upload to "wordpress" and it should pick the series from the metadata
[10:04] <voidspace> dimitern: omw
[10:05] <wallyworld> but the code errors immediately because it inspects the id and sees series = ""
[10:05] <urulama> wallyworld: so, uploads are of form cs:wordpress-3 then
[10:05] <urulama> rogpeppe: ^ seems core expects the case of name-revision uploads, the one we don't allow anymore
[10:05] <wallyworld> the tests were written a while back, not by me so i am not sure of their heritage
[10:06] <rogpeppe> wallyworld, urulama: looking
[10:06] <wallyworld> ty
[10:06] <wallyworld> testcharms.UploadCharm(c, s.client, "trusty/wordpress-0", "wordpress") is how it used to be
[10:07] <wallyworld> testcharms.UploadCharm(c, s.client, "wordpress-0", "wordpress") is how i changed it
[10:07] <urulama> yes, this is not allowed, but might be a bug on our side
[10:07] <wallyworld> because the upload charm was modified to upload a charm with series in metadata
[10:07] <rogpeppe> wallyworld: which commit of charmstore are you using?
[10:07] <wallyworld> the latest
[10:07] <rogpeppe> wallyworld: 2ce00261132ea5e70753c67d4c39e3f8d6e5f6f0 ?
[10:08] <wallyworld> a3afbf1
[10:08] <wallyworld> from juju core deps.tsv
[10:08] <urulama> wallyworld: that's not the latest
[10:09] <wallyworld> i also tried pulling tip as well
[10:09] <urulama> wallyworld: but i don't think it matters in this case
[10:09] <rogpeppe> wallyworld: you shouldn't be uploading the charm with a revision number
[10:09] <wallyworld> ok, we can change core
[10:09] <rogpeppe> wallyworld: the revision number should be chosen by the charmstore itselg
[10:09] <wallyworld> but the rev number doesn't affect the series issue
[10:09] <rogpeppe> wallyworld: it does
[10:09] <wallyworld> the charmstore http handler for archive post seems to bail
[10:10] <wallyworld> when id has series = ""
[10:10] <rogpeppe> wallyworld: because we only check that there's a series if the request is a PUT
[10:10] <rogpeppe> wallyworld: not a POST
[10:10] <rogpeppe> wallyworld: PUT is done when there's a specified revision id
[10:10] <rogpeppe> wallyworld: POST otherwise
[10:11] <wallyworld> ok, so i change juju core's tests to leave off revision
[10:11] <wallyworld> let me do that
[10:11] <urulama> already mentioned this, so i think the tests are just wrong. the ones with revision should fail and the ones to be used are without revision
[10:11] <rogpeppe> wallyworld: the reason we still check for series in PUT is that PUT is really there just for the legacy ingestion
[10:12] <wallyworld> rogpeppe: ok, so i just made that revision param -1
[10:12] <wallyworld> we'll see if test works
[10:13] <rogpeppe> wallyworld: presumably it's a new test, otherwise it would have failed anyway, right?
[10:13] <rogpeppe> s/failed anyway/failed beforehand/
[10:14] <wallyworld> rogpeppe: i annotaed and tests were written in sept by francesco
[10:14] <wallyworld> rogpeppe: but using -1 as rev still didn't work
[10:14] <rogpeppe> wallyworld: hmm, but we didn't have multi-series charms back then
[10:14] <rogpeppe> wallyworld: which test is failing?
[10:14] <wallyworld> no but the tests used to force a series
[10:15] <wallyworld> ie UploadCharm("trusty/wordpress"...)
[10:15] <wallyworld> i'm removing the series
[10:15] <urulama> frankban: hey, seems that some tests for bundle are failing in juju now that we have multiseries ... can you check with wallyworld, please
[10:15] <rogpeppe> wallyworld: please tell me which test is failing so i can have a look at what's being tested
[10:15] <wallyworld> one sec
[10:15] <wallyworld> github.com/juju/juju/cmd/juju/commands/bundle_test.go:675
[10:16] <wallyworld> i'm modifying it because if i let it upload to "trusty/wordpress") then a call tp repo.Resolve("wordpress") fails
[10:16] <wallyworld> and i should no longer need to specify the series in the upload url anuway
[10:16] <wallyworld> rogpeppe: i haveto go get my wife, bbiab
[10:17] <rogpeppe> wallyworld: k
[10:18] <wallyworld> rogpeppe: so a real issue here is that in the core code to process a charm url at deploy time, we were adding in the "default-series" env config propety as the series if the url had an empty series
[10:18] <wallyworld> this should not be done
[10:19] <wallyworld> hence we now call repo.Resolve("wordpress") and not Resolve("trusty/wordpress")
[10:19] <rogpeppe> wallyworld: yup, there are definitely a bunch of changes need to be made in core
[10:19] <urulama> well, hm it should be done for legacy charms, right
[10:19] <wallyworld> unless the user does cs:trusty/wordpress of course
[10:19] <wallyworld> but this change in part as made these bundle tests fail
[10:20] <rogpeppe> wallyworld: so that test passes for me
[10:20] <wallyworld> yes because you don't have the above mods
[10:20] <wallyworld> comment out the code in resolveCharmStoreEntityURL()
[10:21] <wallyworld> which adds the default-series if no url serie sis set
[10:21] <wallyworld> urulama: for legacy charms, surely we can still use cs:legacycharm directly without a series
[10:21] <urulama> yes, indeed, it'll use default-series
[10:22] <wallyworld> rogpeppe: so the issue is: test uploads to "trusty/wordpress", then the bundle code tries to repo.Resolve("wordpress") and boom
[10:22] <wallyworld> it says no charm found
[10:22] <rogpeppe> wallyworld: hmm, "wordpress" *should* resolve correctly to "trusty/wordpress-0"
[10:22] <wallyworld> right
[10:22] <rogpeppe> wallyworld: investigating
[10:23] <wallyworld> rogpeppe: ok, ty, bbiab and i will ping you
[10:23] <wallyworld> rogpeppe: urulama: btw, i have juju fully functional with new charn store , just getting the tests to pass
[10:23] <urulama> cool!
[10:23] <rogpeppe> wallyworld: great!
[10:23] <wallyworld> all mltseries stuff works, incl overrides
[10:23] <wallyworld> ok, really bbiab now
[10:23] <urulama> see you later
[10:24] <rogpeppe> wallyworld: ah!
[10:24] <rogpeppe> wallyworld: i see the problem!
[10:24] <urulama> rogpeppe: what is it?
[10:24] <rogpeppe> urulama: it's that we don't allow wordpress-1 to resolve to trusty/wordpress-1 because that's a silly way to specify a charm
[10:25] <rogpeppe> urulama: because wordpress-1 looks like it's specifying a particular revision of a charm, but that makes no sense when it might resolve to trusty or precise or ...
[10:25] <urulama> right, name-revision is not allowed
[10:26] <rogpeppe> urulama: yeah, and that's what the test is doing
[10:26] <urulama> as written 20min ago :) "seems core expects the case of name-revision uploads, the one we don't allow anymore"
[10:26] <rogpeppe> urulama: trivially fixed (in that test case anyway)
[10:26] <urulama> ah, uploads ... i've meant resolution
[10:26] <urulama> cool!
[10:27] <rogpeppe> urulama: deleting two characters fixes it
[10:32] <dimitern> frobware, https://github.com/lxc/lxd says LXD needs 1.3 and there's a PPA I guess you could try on trusty
[10:38] <voidspace> frobware: so a fix for the intermittently failing payload/persistence bug has landed on master but isn't yet on maas-spaces
[10:38] <voidspace> frobware: could you rebase again please :-)
[10:40] <frobware> voidspace, in progress
[10:45] <frobware> voidspace, dimitern, dooferlad: rebased maas-spaces to de99d4c3da857e478c60a57c806b0d8645078aba
[10:46] <dimitern> frobware, great, I'll rebase mine and hopefully drop a commit or two fixing already resolved issues on master
[11:18] <dimitern> voidspace, frobware, dooferlad, nice! so in the rebased maas-spaces, I only see the provisioner test failing now
[11:20] <voidspace> dimitern: me too
[11:21] <voidspace> conflicts when I merge with my branch though :-/
[11:21] <voidspace> ah well, this is why we rebase
[11:22] <mgz> are you actually rebasing?
[11:23] <mgz> rather than merging in trunk?
[11:23] <mgz> so, the previously tested revs of your feature branch are all lost to the aether?
[11:23] <voidspace> mgz: no
[11:23] <voidspace> mgz: we're rebasing our feature branch
[11:23] <voidspace> mgz: and will then merge back onto trunk
[11:24] <voidspace> mgz: oh, hmmm... maybe
[11:24] <voidspace> mgz: but then the merge back onto trunk will itself be tested
[11:24] <mgz> I mean, it's a choice, old feature branch results are of limited worth if they're red
[11:25] <mgz> but it does screw with the "look it passed, it's ready to merge" process
[11:25] <voidspace> mgz: I think it's a worthwhile trade-off
[11:25] <voidspace> mgz: it still needs to pass to merge
[11:26] <dimitern> mgz, we intend, I think, to stop rebasing and use merging as we're preparing to get it blessed and merge it in master
[11:26] <mgz> that sounds perfectly sane.
[11:29] <mgz> ...don't you need someone with write access to the repo to push --force the feature branch after rebase?
[11:29] <dimitern> mgz, btw I saw the mail about the voting status of the run-unit-tests-race job
[11:29] <frobware> mgz, yes, that's what I'm doing.
[11:29] <dimitern> mgz, I did file a but a while ago that it won't ever pass if the timeout is not increased - had that happened?
[11:29] <mgz> okay, as long as that works.
[11:30] <mgz> dimitern: the stuff that was timing out has been skipped for now and bugs filed, so dave has some of that covered
[11:31] <dimitern> mgz, nevertheless, it still won't pass on a comparable machine with the same timeout as the race detector always slows things down
[11:32] <dimitern> mgz, I'll be happy to be proven wrong though, just sayin.. ;)
[11:32] <mgz> yeah, I know, I think some of the work will just need to be fixing some stuff like that in tests.
[11:34] <wallyworld> rogpeppe: saw backscroll, changing test to testcharms.UploadCharm(c, s.client, "trusty/wordpress", "wordpress") was not all that was needed. charmrepo csclient UploadCharmWithRevision() requires the charm id to have a revision so i had to set that to < -1
[11:34] <frobware> dimitern, I wonder why we would stop rebasing? We can continue to do that, leaving a final merge into master
[11:34] <wallyworld> >  -1
[11:35] <wallyworld> that gets further along till next error, thanks for help, i think i can fix the rest
[11:36] <rogpeppe> wallyworld: you can still do UploadCharm(c, s.client, "trusty/wordpress-1", "wordpress")
[11:36] <mgz> frobware: mostly just adding rebased revs after a bless should really have a ci retest before a merge is proposed
[11:36] <rogpeppe> wallyworld: (as the test did before)
[11:36] <rogpeppe> wallyworld: that worked for me
[11:37] <wallyworld> rogpeppe: ah, oh, what which string do i remove the -3 from
[11:37]  * rogpeppe goes back to check
[11:38] <wallyworld> ah i think i know
[11:38] <mgz> dimitern: thanks for responding on the 1.25.1 lxc address bug, I'll chase that up later today. didn't see anything relevent in the changes to .1 apart from the maas 1.9 pokings from you guys
[11:38] <wallyworld> rogpeppe: in the bundle
[11:38] <dimitern> frobware, AIUI because the CI jobs are configured to test specific revisions and changing them might not trigger a CI run << mgz can clarify
[11:38] <wallyworld>             mysql:
[11:38] <wallyworld>                 charm: mysql-1
[11:38] <rogpeppe> wallyworld: you need to remove the -1 from "mysql-1"
[11:38] <wallyworld> great, wil try that, ty
[11:39] <frobware> dimitern, mgz: ok, gotcha. but presumably as and when the time comes we can force a retest
[11:39] <rogpeppe> wallyworld: because mysql-1 is ambiguous with respect to non-multi-series charms
[11:39] <rogpeppe> wallyworld: it's always been dodgy, but now we explicitly prohibit it
[11:39] <wallyworld> rogpeppe: refresh me, what can it be confused with?
[11:39] <mgz> frobware: yeah, the rebase process is just a bit more error prone, and means past tests are non-repeatable. new testing is always fine.
[11:39] <rogpeppe> wallyworld: so if you're specifying a revision number, you want an exact version of a charm
[11:40] <rogpeppe> wallyworld: but if you specify a revision number but no series, you're saying "i want this revision of any one of a number of possible series"
[11:40] <rogpeppe> wallyworld: but there's no link between revision numbers of different series
[11:40] <rogpeppe> wallyworld: so it doesn't really make sense to specify a charm like that
[11:40] <wallyworld> ah right yes
[11:41] <wallyworld> rogpeppe: but i now i still get cannot resolve URL \"cs:mysql\": charm or bundle not found")
[11:41] <rogpeppe> wallyworld: and in the new multi-series world, wordpress-1 *is* unambiguous
[11:41] <wallyworld> because the upload was done for trusty/mysql not mysql. i think i need to add some fake charm metadata to the test
[11:41] <wallyworld> i had that before but got rid of it
[11:41] <rogpeppe> wallyworld: this passes for me: http://paste.ubuntu.com/13501743/
[11:42] <wallyworld> the test now just uploads an empty archive
[11:42] <rogpeppe> wallyworld: "mysql" should resolve to "trusty/mysql-1"
[11:42] <wallyworld> rogpeppe: yes but your code does would explcitly force juju core to add "trusty" to the requested url
[11:42] <rogpeppe> wallyworld: no it wouldn't
[11:43] <wallyworld> really? i did in master
[11:43] <wallyworld> it
[11:43] <rogpeppe> wallyworld: that only applies when you specify a revision number too
[11:43] <rogpeppe> wallyworld: and when the charm is not multi-series
[11:43] <wallyworld> 	if ref.Series == "" {
[11:43] <wallyworld> 		if defaultSeries, ok := conf.DefaultSeries(); ok {
[11:43] <wallyworld> 			ref.Series = defaultSeries
[11:43] <wallyworld> 		}
[11:43] <wallyworld> 	}
[11:44] <rogpeppe> wallyworld: i thought you removed that code
[11:44] <wallyworld> yes, but if i add it back the test passes
[11:44] <wallyworld> if i take it out the test fails
[11:44] <wallyworld> so mysql is not resolving to trusty/mysql-1
[11:45] <wallyworld> because i think the test uploads an empty archive
[11:45] <rogpeppe> wallyworld: i got the test passing with that code removed
[11:45] <rogpeppe> wallyworld: that shouldn't matter, i think
[11:45] <wallyworld> hmmm, ok, i'll poke a few things
[11:45] <rogpeppe> wallyworld: one mo, i'll just check again
[11:48]  * dimitern steps out for ~1h
[11:48] <rogpeppe> wallyworld: so i've pushed a branch called "wallyworld-test" to rogpeppe/juju
[11:48] <wallyworld> rogpeppe: yes, so i had to modify the test to upload real charm metadata and that got it passed that bit
[11:48] <rogpeppe> wallyworld: that test passes for me with the differences you can see
[11:48] <rogpeppe> wallyworld: i'm surprised that was necessary
[11:49] <wallyworld> yeah, but it worked, i''ll check your branch
[11:51] <rogpeppe> wallyworld: anyway, AFAICS testcharms.UploadCharm *is* uploading a real archive
[11:51] <wallyworld> Repo.CharmArchive(c.MkDir(), name)
[11:51] <wallyworld> it makes an empty dir
[11:52] <wallyworld> ah wait
[11:52] <rogpeppe> wallyworld: that makes an empty dir and then copies the charm archive into it
[11:52] <wallyworld> it copies
[11:52] <wallyworld> right
[12:01] <wallyworld> rogpeppe: damn, so my other other change that i can see might be of significance is that the charmrepo client asks for supported series in the Resolve() call. i still get the test failure but it all works live for real deployments. maybe if you get a chance you could look at this. ignore the unrelated crap, you'll see the change to resolveCharmStoreEntityURL() is essentially the same as yours. https://github.com/juju/juju/compare/
[12:01] <wallyworld> master...wallyworld:new-charm-store-multi?expand=1
[12:01] <wallyworld> i'll keep looking as well, no hurry
[12:01] <wallyworld> just if you get a moment
[12:02] <wallyworld> i still get
[12:02] <wallyworld> bundle_test.go:699:
[12:02] <wallyworld>     c.Assert(err, jc.ErrorIsNil)
[12:02] <wallyworld> ... value *errors.Err = &errors.Err{message:"", cause:"not found", previous:(*errors.Err)(0xc820424550), file:"github.com/juju/juju/cmd/juju/commands/deploy.go", line:341} ("cannot deploy bundle: cannot resolve URL \"mysql\": cannot resolve URL \"cs:mysql\": charm or bundle not found")
[12:02] <wallyworld> i retian some old behaviour for local:
[12:28] <rogpeppe> wallyworld: looking
[12:28] <wallyworld> ty, maybe fresh eyes will solve it
[12:32] <rogpeppe> wallyworld: so your branch passes that test for me
[12:32] <wallyworld> etf
[12:32] <wallyworld> wtf
[12:32] <rogpeppe> wallyworld: (i needed to update charm to the export-unsupported-series-error branch)
[12:33] <rogpeppe> wallyworld: does your branch have a current dependencies.tsv file?
[12:33] <wallyworld> rogpeppe: my branch also pulls in https://github.com/juju/charmrepo/pull/55
[12:34] <wallyworld> yeas except for the above which is new
[12:35] <wallyworld> i haven't added that to dependencies.tsv yet
[12:35] <wallyworld> as it has not landed
[12:35] <rogpeppe> wallyworld: i checked that out, and the test still passes
[12:35] <wallyworld> shit
[12:36] <rogpeppe> wallyworld: could you paste me the result of running godeps -t in the commands directory?
[12:36] <wallyworld> rogpeppe: http://pastebin.ubuntu.com/13501930/
[12:37] <rogpeppe> wallyworld: hmm, looks like there are some charmrepo changes you haven't pushed
[12:37] <wallyworld> rogpeppe: yes, i hacked the store url to point to the beta store
[12:37] <wallyworld> that is the only change
[12:38] <rogpeppe> wallyworld: does your test still fail when you use the published version?
[12:38] <wallyworld> the official store url?
[12:40] <wallyworld> rogpeppe: oh, ffs. there was a change to charmrepo UploadCharmWithRevision I must have made earlier and didn't see. now the test psses
[12:40] <wallyworld> the only change in charmrepo NOW is the store url change
[12:40] <wallyworld> sorry
[12:40] <wallyworld> now i can finish some final unit tests and propose
[12:40] <rogpeppe> wallyworld: ok, np
[12:41] <wallyworld> i'll land after new store is live
[12:41] <wallyworld> thanks for help with the charm urls
[12:41] <rogpeppe> wallyworld: np
[12:41] <wallyworld> will be good to get this working :-)
[12:41] <rogpeppe> wallyworld: i'm glad we've got godeps :)
[12:44] <wallyworld> my changes to charm repo were not to push :-)
[12:44] <wallyworld> just to test the bew store
[12:44] <wallyworld> new
[14:35] <mup> Bug #1519848 opened: Add IPv6 tests for cases using net.JoinHostPort <juju-core:Triaged by cherylj> <https://launchpad.net/bugs/1519848>
[14:38] <mup> Bug #1519848 changed: Add IPv6 tests for cases using net.JoinHostPort <juju-core:Triaged by cherylj> <https://launchpad.net/bugs/1519848>
[14:41] <mup> Bug #1519848 opened: Add IPv6 tests for cases using net.JoinHostPort <juju-core:Triaged by cherylj> <https://launchpad.net/bugs/1519848>
[16:14] <voidspace> dooferlad: ping
[16:14] <mup> Bug #1519877 opened: 'juju help' Provider information is out of date <juju-core:New> <https://launchpad.net/bugs/1519877>
[16:31] <dooferlad> voidspace: pong
[16:31] <voidspace> dooferlad: how do I set a reserved ip range with a purpose?
[16:32] <voidspace> dooferlad: I can't use the method from the tests because it uses private members to do it
[16:32] <voidspace> dooferlad: and I can't see it exposed at all on the public api
[16:32] <voidspace> I may just be missing something obvious
[16:33] <dooferlad> voidspace: AddFixedAddressRange and set the purpose in the passed AddressRange
[16:33] <voidspace> dooferlad: on Subnet?
[16:34] <dooferlad> yes
[16:34] <voidspace> dooferlad: but the Subnet returned from NewSubnet is a pointer to a copy
[16:34] <voidspace> dooferlad: so adding the range to it doesn't set the range on the server
[16:34] <voidspace> (it's not what the test does for this reason)
[16:35] <voidspace> I don't believe I can do that anyway
[16:35] <voidspace> let me try
[16:35] <voidspace> dooferlad: ah, and AddFixedAddressRange requires me to construct an AddressRange
[16:35] <dooferlad> I thought that NewSubnet returned a pointer to the created subnet, not a copy.
[16:36] <voidspace> dooferlad: and I can't set startUint or endUint as they're private
[16:36] <dooferlad> voidspace: Hmm, you really shouldn't need to do that. I think that I should auto-fill them for you.
[16:37] <voidspace> dooferlad: well, I'm calling subnet.AddFixedAddressRange - but I'm getting nul back from the reserved_ip_ranges call
[16:37] <voidspace> which should really be an empty array
[16:37] <voidspace> but it shouldn't really be empty - but it is
[16:37] <dooferlad> voidspace: OK, I need to fix that whole flow.
[16:38] <voidspace> dooferlad: cool, thanks
[16:38] <voidspace> you should have emails with all those points in them
[18:20] <voidspace> dooferlad: any progress?
[18:57] <cherylj> dimitern, frobware:  Did you see the latest updates for bug 1519527?
[18:57] <mup> Bug #1519527: 1.25.1 proposed:  lxc units all have the same IP address <openstack> <sts> <uosci> <juju-core:Triaged> <https://launchpad.net/bugs/1519527>
[18:58] <dimitern> cherylj, yep, I'm in a call with mpontillo even as we speak
[18:58] <cherylj> thanks, dimitern!
[18:58] <dimitern> cherylj, seems more and more like a maas issue
[18:58] <cherylj> good to know :)
[21:00] <mup> Bug #1496237 changed: peergrouper tests very unstable with Go 1.5 <intermittent-failure> <tech-debt> <test-failure> <juju-core:Fix Released by axwalk> <https://launchpad.net/bugs/1496237>
[21:06] <mup> Bug #1496237 opened: peergrouper tests very unstable with Go 1.5 <intermittent-failure> <tech-debt> <test-failure> <juju-core:Fix Released by axwalk> <https://launchpad.net/bugs/1496237>
[21:18] <mup> Bug #1496237 changed: peergrouper tests very unstable with Go 1.5 <intermittent-failure> <tech-debt> <test-failure> <juju-core:Fix Released by axwalk> <https://launchpad.net/bugs/1496237>
[21:21] <mup> Bug # changed: 1382556, 1412621, 1452082, 1464633, 1478943, 1483879, 1494542, 1494868, 1496972, 1499426, 1511138, 1512399, 1513492, 1513982, 1517748, 1518128
[21:56] <thumper> axw: http://reviews.vapour.ws/r/3240/
[22:28] <wallyworld> thumper: i talked with andrew and the best we came up with is disallow in modern juju and require people to use an older client if they really want to do it
[22:28] <thumper> wallyworld: see  http://reviews.vapour.ws/r/3240/
[22:29] <wallyworld> ok, after release call
[22:38] <davecheney> morning, http://reviews.vapour.ws/r/3232/
[22:38] <davecheney> is anyone able to review this
[22:58] <fwereade> davecheney, LGTM
[22:59] <davecheney> fwereade: thanks
[23:12] <sinzui> thumper:  I think th issue is that status just hangs. Nothing is returned. After 300 seconds, the sript declares a failure. http://juju-ci.vapour.ws:8080/view/Juju%20Revisions/job/aws-upgrade-20-trusty-amd64/339/console is just about to start the upgade
[23:12] <sinzui> mark timer
[23:17] <sinzui> timer comlete
[23:18] <sinzui> yes, status was called 4 times. the first 3 returned quickly, the 4th call hung for 5 minutes
[23:27] <thumper> hmm
[23:28] <thumper> dog walk time
[23:33] <mup> Bug #1519994 opened: leader-elected hook never fires <juju-core:New> <https://launchpad.net/bugs/1519994>
[23:33] <mup> Bug #1519995 opened: Upgrades from 1.20.11 to 1.25.2 fail because of status <blocker> <ci> <regression> <status> <upgrade-juju> <juju-core:Incomplete> <juju-core 1.25:Triaged by thumper> <https://launchpad.net/bugs/1519995>