/srv/irclogs.ubuntu.com/2016/11/21/#juju-dev.txt

babbageclunkthumper: review plz? https://github.com/juju/juju/pull/658803:23
* thumper looks03:23
* babbageclunk thanks thumper kindly.03:24
babbageclunkthumper - any idea why my !!build!! isn't triggering a check build?04:01
thumpernope, I've not grokked that part much04:02
babbageclunkthumper: thanks for the comments - good points.04:02
babbageclunkthumper: I'm not sure about having a log file per model.04:06
babbageclunkAt the moment the log file is managed by lumberjack so it does rolling and doesn't take up too much space.04:07
babbageclunkIf it was per-model wouldn't we have to come up with something else on top to do the same thing?04:07
thumperyeah...04:09
thumperit would be more manual04:09
thumperI'm happy enough with a global one..04:09
thumpergiven that it is really just a backup04:09
babbageclunkthumper: cool04:10
babbageclunkthumper: at the moment debug-log (which will be the source of the logs) doesn't send the version with the log records.04:10
thumperno... I don't even know why it is there TBH04:11
babbageclunkI'm not sure whether the version is important04:11
thumperI think I know who might ahve added it but no idea why04:12
babbageclunkIt does seem a pity to just throw that info away when we migrate though.04:12
* thumper has to run04:12
babbageclunkokbye04:12
babbageclunkwhoa, he really meant it04:12
mupBug #1592188 opened: No 'enable-ha' for manual provider <juju-core:New> <https://launchpad.net/bugs/1592188>10:08
Andrew_jediHello Folks, I am playing with liberty release and by default i get keystone v2 endpoints. Is it possible that i can turn on keystone v3 api by default for liberty.11:11
Andrew_jedijamespage: ^^11:11
jamespageAndrew_jedi, yes11:11
jamespagethe keystone charm has a configuration option to allow v3 to be used11:11
Andrew_jedijamespage: Ok and to enable it, I will have to recreate the keystone service after making changes to the config file?11:12
jamespageAndrew_jedi, no I think you can just enabled it on the running environment11:12
jamespagejuju config keystone preferred-api-version=311:12
jamespageI think11:12
jamespagecheck the key11:12
Andrew_jedijamespage: Ok, let me execute this command.11:13
Andrew_jedijamespage: http://paste.openstack.org/show/589861/11:18
jamespageconfig/set11:18
jamespageconfig is juju 2.011:18
Andrew_jedijamespage: thanks i was looking for this everywhere. Executing again :)11:24
mattywdoes anyone know a way that I can find out what relation values are being set in given relationships?11:25
=== freyes__ is now known as freyes
deanmanI14:47
deanmanHi I'm running into a problem with LXD where when attached using the `lxc exec` command and running a command in the background then i cannot dettach from that LXD.14:48
deanmanIs there a channel specific to LXD?14:48
natefinchrick_h, do you know ^14:51
rick_hdeanman: natefinch not that I know of no. I think the issue is just how exec works with lxd. I'd use ssh for that if you can deanman.  https://github.com/lxc/lxd/issues/1830 for instance walks through some of the tricks that goes into things.14:55
katcorick_h: my browser is not loading hangouts for some reason; trying to figure it out15:00
rick_hkatco: I had to restart FF today as it upgraded and needed a restart to pick up the plugin15:01
katcorick_h: i use chrome; restart doesn't appear to have worked... lemme try ff15:01
katcorick_h: going to try and reboot the machine15:04
deanmanHey rick_h, thanks for the tip, will look into it more.15:05
menn0thumper, babbageclunk, mwhudson: o/20:12
thumpermenn0: would love a chat when you've read my email20:13
thumpermenn0: it's the one with the body that starts with "well... fuck"20:13
perrito666lol, like he has only one email from you with that subject20:15
babbageclunkmenn0: hi!20:17
mwhudsonmenn0: hi20:18
menn0thumper: i've read it once, will read it again with more attention to the details20:18
thumpermenn0: ack, let me know when you're ready20:18
menn0thumper: ok 1:1?20:23
thumpermenn0: just in the middle of a web form, be there in a sec20:24
katconatefinch: ping20:29
natefinchkatco: only here for a moment... what's up?20:32
katconatefinch: hey i'll be quick20:32
katconatefinch: starting work on allowing IB to give a cloud a name. 1. can i start from develop, 2. does that overlap with anything you're doing?20:33
natefinchkatco: it will tie into what I'm doing, but I haven't gotten there yet, so you're welcome to get the ball rolling :)20:33
katconatefinch: is there anything i should look at in terms of integration?20:34
katconatefinch: commit, branch, etc.20:34
natefinchkatco: interactive add cloud is the current state of the art.  cmd/juju/cloud/add.go  it uses cmd/juju/interact.Pollster to interact with the user, we should be moving toward using that, since it standardizes the formatting etc.20:35
natefinchkatco: that's all available in develop20:36
katconatefinch: cool cool20:36
katconatefinch: ty20:37
natefinchkatco: welcome :)20:37
babbageclunkmenn0: ping21:24
menn0babbageclunk: hi, sorry on a call21:24
babbageclunktsk, thumper!21:24
babbageclunk;)21:24
perrito666mm, a heavy earthquake hit japan, are you guys ok at nz?21:32
perrito666babbageclunk: thumper menn021:32
thumperwe are a long way from japan21:34
menn0nothing here21:35
perrito666thumper: I know, but I though usually eqs on japans sea on your side would end up being felt there21:35
* perrito666 well look at that, I thought the indo-australian plate was covering jp too, I stand corrected21:37
babbageclunkperrito666: ring of fire baby21:46
babbageclunkperrito666: oh man, Fukushima again. :(21:47
perrito666babbageclunk: sadly yes21:47
babbageclunkperrito666: Wow, the 2011 earthquake was magnitude 9!21:49
perrito666yup, yet todays is advertised as 7.3 which is a big shake21:50
* perrito666 tries to purchase a used 11" macbook air to try some things and finds it has the same price tag as a new 13".... what is wrong with people?21:52
menn0babbageclunk: ok, i'm free22:13
babbageclunkmenn0: I think I just had an epiphany, but I'll run it by you.22:14
babbageclunkmenn0: Oh, did you work out what was going on with thumper's thing?22:14
babbageclunkhis problem I mean22:14
menn0babbageclunk: yep22:14
babbageclunkoh nice - what was it?22:15
menn0babbageclunk: it was a tough one but it ended being due to old indexes22:15
babbageclunkugh22:15
menn0babbageclunk: mgo handles index violations badly22:15
menn0babbageclunk: so failed updated were being silently ignored22:15
menn0updates22:15
babbageclunkgross22:16
thumperit is so frustrating22:16
thumperbecause I knew the indices were wrong22:16
thumperand we deleted them22:16
thumperbut after the updates22:16
thumpernot before22:16
thumperso they were interferring22:16
babbageclunkhow is "old indexes" even a thing you need to worry about with a database?22:16
menn0babbageclunk: this isn't mongodb's fault, it's more a problem with mgo22:17
babbageclunkOh wow, so you can have a transaction where the assertions pass, so it's applied, but fails and partially applies because of an index error?22:17
thumperyes22:17
menn0babbageclunk: afaics it's due to the logic to prevent txn's failing if multiple txns attempt to insert the same doc at the same time22:17
* babbageclunk throws up in mouth22:18
menn0babbageclunk: I'll send an email about it later today. it's probably worth getting niemeyer involved as well.22:18
perrito666babbageclunk: I believe we owe you the "what mongo is and isnt" talk22:19
babbageclunkpresumably over some strong drinks22:19
perrito666babbageclunk: short one txn is a task queue not a transactional engine and mongo is a bag of hopeful storage not a db22:19
perrito666I go by these rules and they work for me22:20
* babbageclunk sighs22:20
perrito666no, seriously, you need to make your head stop thinking in mongo+txn as if it was a rdbms because many of us did and that is where you eff up22:21
* perrito666 pats babbageclunk on the back and hands a beer22:22
menn0babbageclunk: did you want to chat?22:22
babbageclunkYeah, I can get behind that. Except for the transaction being marked as successful.22:22
babbageclunkmenn0: yes please! ok, so on a happier note, I'm trying to work out how to get to the debug log api from the migrationmaster worker22:22
babbageclunkmenn0: It's a bit fiddly to call api.Client.WatchDebugLog, because I need a *state.22:24
menn0babbageclunk: and workers can't use *State directly... they have to use the API22:24
babbageclunkmenn0: It seems like I can change that to use FacadeCaller.RawAPICaller().ConnectStream instead.22:25
babbageclunkmenn0: Oh, no - it's an api.state, not a state.State.22:25
menn0babbageclunk: ok cool22:25
babbageclunkmenn0: But I don't have a *api.state either.22:25
* menn0 looks at code to refresh his memoory22:26
menn0memory too22:26
babbageclunkmenn0: Basically, once I can call WatchDebugLog then I can call openAPIConn to get to the target /migrate/logtransfer endpoint and everything else should be straightforward.22:28
menn0babbageclunk: probably the most correct thing to do is to extract the guts of WatchDebugLog to api/common and then add a similar (probably simpler) API to the api/migrationmaster facade22:29
babbageclunkmenn0: ok - you mean make the guts take a stream or streamconnector then?22:30
babbageclunkmenn0: yeah, that sounds good.22:31
menn0babbageclunk: yep22:31
babbageclunkmenn0: I was a bit nervous about changing the api.Client.WatchDebugLog bit to use the FacadeCaller instead of the st, just in case something was making a Client where they were different for some reason.22:32
menn0babbageclunk: you'll also need to consider the transfer of logs getting interrupted22:32
babbageclunkmenn0: I was worried you might say that.22:33
menn0babbageclunk: that'll make things "fun" ...22:33
babbageclunkmenn0: We don't really have any kind of sequence number we could yse for that on the logs themselves, right?22:34
babbageclunkuse22:34
menn0babbageclunk: no we don't... the best we've got is the timestamps22:35
menn0babbageclunk: a small amount of overlap on retry is probably ok22:35
menn0babbageclunk: there is the LastSentLogTracker in state/logs.go22:36
menn0babbageclunk: maybe that could be used for this too (it was developed for shipping logs offsite)22:37
babbageclunkmenn0: So I need to make the receiving side discard logs when they're before the last sent log?22:37
menn0babbageclunk: I was thinking more that the sender (i.e. the migrationmaster) would track what had already been sent and not send again22:38
babbageclunkmenn0: ah, ok22:38
menn0babbageclunk: otherwise if there's 3GB of logs to send and 2GB has already been sent, that's a lot of wasted bandwidth22:38
perrito666brb grocery shopping22:38
babbageclunkmenn0: But it needs to be able to query what the target has, right?22:39
menn0babbageclunk: in theory it should know if it's recorded locally22:42
menn0(that's what the LastSendLogTracker does)22:42
menn0babbageclunk: but it might be better to ask22:42
menn0babbageclunk: in fact that would simplify things a lot22:42
menn0babbageclunk: do that :)22:42
menn0babbageclunk: so the LOGTRANSFER phase ends up looking like: ask the timestamp that the target has, stream from that timestamp onwards22:43
babbageclunkmenn0: So that would be another method on the migrationmaster facade to get the latest log time? Or probably have something in the logtransfer endpoint to track the last time.22:43
babbageclunkmenn0: quick chat to clarify? :)22:44
menn0babbageclunk: the migrationtarget facade will need a new API to query the latest log timestamp22:44
menn0babbageclunk: HO would be good22:44
babbageclunkmenn0: yeah, I meant migrationtarget rather than migrationmaster.22:44
babbageclunkmenn0: https://hangouts.google.com/call/p4p47uhzxzbm5iycpkv66uc3tae22:45
babbageclunkmenn0: actually. try this https://hangouts.google.com/hangouts/_/canonical.com/menno22:46
alexisbthumper, on the HO whenever you are ready23:00
thumperHO or blue jeans?23:00
alexisbbluejeans23:00
alexisbmenn0, ping23:47

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