/srv/irclogs.ubuntu.com/2011/04/11/#ubuntu-ensemble.txt

niemeyerHmm.. time to sort out UDS arrangements now that I have a passport again14:16
niemeyerhazmat: Good morning15:52
hazmatniemeyer, good morning!15:53
niemeyerhazmat: How's the upgrade stuff coming?15:53
niemeyerhazmat: Just trying to get a grasp of what we'll be presenting at UDS, etc15:54
hazmatniemeyer, pretty good, i finally got the workflow stuff figured out, and i've got some of that coded out, the actual mechanism was pretty easy, just figuring out error conditions and recovery took some time15:54
niemeyerhazmat: Interesting, cool15:54
niemeyerhazmat: So how does the time frame feel for you?15:55
hazmatniemeyer, upgrade will be done by then, i can probably fit one more feature on my plate.. or a bunch of useability things15:55
hazmatshutdown with warning, some more sample formulas, ensemble scp.. etc15:55
niemeyerhazmat: Nice, cool.. I think that'd be best indeed15:56
niemeyerhazmat: Our formulas need some love indeed15:56
hazmatniemeyer, i setup a monitoring / alerting system over the weekend for some folks.. i'm starting to think we need a new abstraction around the 'machine policy'/formula15:56
niemeyerhazmat: Interesting, what kind of alerting system was that?15:57
hazmatniemeyer, just munin and nagios15:57
niemeyerOk15:57
niemeyerhazmat: Yeah, we have to discuss the whole placement idea15:57
hazmati tried out this nice visualization on collectd which was pretty slick.. scripted it all with fabric.. their probably going to move over to chef at some point15:57
niemeyerhazmat: What about Ensemble?15:58
hazmatniemeyer, i've discussed it with them, their interested, but their not up for living on the bleeding edge15:59
niemeyerhazmat: Understandable15:59
hazmatniemeyer, still one of the nicer collectd visualizations i've used.. http://ec2-174-129-219-53.compute-1.amazonaws.com:9292/profiles/shotgun+graph16:02
hazmatall jquery flot ui16:02
hazmathttps://github.com/auxesis/visage16:03
* niemeyer looks16:03
niemeyerNice16:05
kim0niemeyer: Hey Gustavo o/16:21
kim0Are you ok with the weekly progress meeting 16:21
kim0the one I mentioned in email16:21
niemeyerkim0: Hi there16:21
kim0can we do it on Wed for example16:21
niemeyerkim0: Hmmm, but I thought we already had a weekly meeting?16:22
kim0niemeyer: the server team one ?16:23
niemeyerkim0: No, the weekly meeting we have in 37 minutes :-)16:23
kim0I'm talking about a public irc meeting 16:23
kim0niemeyer: I'm in a call .. sorry for not being too focused16:24
niemeyerkim0: Ok, let's talk latter then.. I have to have lunch too16:24
kim0sure thing16:24
niemeyerLaters16:28
=== niemeyer is now known as niemeyer_lunch
=== niemeyer_lunch is now known as niemeyer
niemeyerkim0: Meeting time?16:59
=== deryck is now known as deryck[lunch]
kim0niemeyer: ew sorry, suddenly my internet is at 60% packet loss17:10
* kim0 recovering17:10
niemeyerkim0: No worries17:25
niemeyerkim0: Regarding the weekly meeting you were proposing earlier, what kind of content would you like to have on it?17:25
niemeyerhazmat: Are you subscribed to the public Ensemble list?18:07
hazmatniemeyer, i believe so18:07
* hazmat checks18:07
niemeyerhazmat: Ah, I guess you've seen my answer18:07
hazmatniemeyer, yeah.. i had my reply drafted for a while but needed to transfer from thunderbird to sup18:08
niemeyer:-)18:08
niemeyerhazmat: Might be cool to send the same msg to the public one too18:08
hazmatniemeyer, oh.. didn't realize it was private only18:08
jimbakerit's ensemble@lists.ubuntu.com - i thought that was public18:09
hazmatjimbaker, it is18:10
hazmatjimbaker, the original email came in @lists.canonical.com which is private, and my reply wen there as well18:11
jimbakerhazmat, ok, but in my case i see the reply to the list mentioned above18:14
niemeyerjimbaker: My reply, not his18:14
hazmathmm.. there are two replies in two different threads18:14
niemeyerYep18:15
hazmatgustavo is referring to my reply in the 1st time user thread which was private18:15
hazmater. on the internal list.. i just forwarded it to the public one18:15
jimbakerhazmat, yeah i see the distinction now - ahmed's vs clint's18:16
bcsallerhazmat: I've mostly refactored out a YAMLState object which handles some of the issues we talked about re retry change but allowing BadVersionErrors to bubble through would change semantics and I'm not sure what that we mean in the live system yet18:17
=== deryck[lunch] is now known as deryck
hazmatbcsaller, awesome!18:29
hazmatbcsaller, a base class or utility that generically handles dictionary merges for retry change sounds like a good win18:29
bcsallerIts a state object you bind to the node and then delegate to18:30
bcsallerpseudo-code:: hook.get(): returnValue(relation_node.get())18:30
hazmatbcsaller, as for the error condition, its handling its going to be context sensitive.18:30
bcsalleryeah, I'll get this in its own branch and push it so we can talk about the same thing, I need a little feedback before its ready for a merge18:31
hazmatbcsaller, sounds good18:32
_mup_ensemble/yaml-state-node r183 committed by bcsaller@gmail.com18:36
_mup_initial work on YAMLState object18:36
kim0niemeyer: hey ... my internet is unchocked again :)18:36
kim0niemeyer: so I was talking about the email "Ensemble community venues"18:37
kim0basically would like to setup a weekly irc meeting where the team mentions progress about ensemble development18:37
kim0this should pick up community members going forward18:37
kim0Since the conversation drifted to whether or not we should freeze formula definitions ..18:38
kim0would be great if you and the team could reply letting me know whether you guys agree on that 18:38
bcsallerhazmat: lp:~bcsaller/ensemble/yaml-state ensemble/state/utils.py when you have a minute to talk it over, doesn't have to be now18:38
niemeyerkim0: I don't have any email with that subject (or something related) coming from you18:39
kim0niemeyer: it's on the public list18:39
kim0niemeyer: everyone else replied 18:39
kim0niemeyer: kim0@ubuntu.com18:39
niemeyerkim0: "from:kim0@ubuntu.com venue" returns an empty list to me18:40
kim0niemeyer: https://lists.ubuntu.com/archives/ensemble/2011-April/000020.html18:40
kim0niemeyer: your reply to that would great .. nothing urgent .. tyt18:41
hazmatkim0, i agree that it makes sense, post budapest.. i've been keeping an itinerant ensemble development newsletter going, but i've been waiting for things to queue up before writing it18:41
kim0would be*18:41
niemeyerkim0: I never got that18:41
kim0niemeyer: weirdo ?!18:41
kim0hazmat: I'm fine with post budapest18:41
kim0niemeyer: spam filters ?18:41
niemeyerI have no idea.. I'm a member18:43
niemeyerkim0: I got your previous message too18:43
kim0yeah weird indeed18:43
kim0niemeyer: you didn't even get replies from others18:43
niemeyerNope18:44
niemeyerI didn't get Kapil's fwd yet either18:45
kim0quite strange18:45
kim0just forwarded you the thread 18:46
niemeyerkim0: Thanks, I'm looking through the archives18:46
_mup_ensemble/unit-agent-formula-upgrade r199 committed by kapil.thangavelu@canonical.com19:01
_mup_additional documentation of the steps, clear upgrade flag before proceeding with ugprade work19:01
hazmatniemeyer, could you have a look at my comments regarding the state-machine branch? should i put it back into review? re needs information status on the merge.19:03
niemeyerhazmat: Yeah, please put it back19:03
niemeyerhazmat: That WIP <=> Needs Review back and forth is a neat way to very easily know who's got the ball ATM19:04
hazmatniemeyer, agreed, sounds good.19:05
jimbakeragreed on the WIP/NR state transition, it just works19:05
niemeyerhazmat: We'll have to talk a bit about the transition stuff.. it feels like the simplicity of a state machine is derailing a bit 19:09
hazmatniemeyer, yeah.. i'm diagramming it at the moment19:09
hazmatniemeyer, i'm not sure i need the action handler 19:10
hazmatniemeyer, it looks like i'll end up structuring the upgrade transitions as a transtion from state X to state X19:10
hazmatwith the success transition to follow19:10
hazmatthe question is what's the best handling of an upgrade-error19:11
niemeyerhazmat: Yeah, loops are good abstractions in state machines19:11
niemeyerhazmat: We can put it in an upgrade-error state, but in that sense it feels a bit like we're doing the opposite of what we should do19:12
niemeyerhazmat: What do we want to happen?19:12
niemeyerhazmat: We shouldn't be talking about the state machine, but about the goal19:12
niemeyerhazmat: The state machine will reflect it19:12
hazmatniemeyer, agreed19:12
niemeyerWe might: a) Stop the unit world;  or b) Log and move on19:13
hazmatthe question is what's the best handling of an upgrade-error.. do we want to re-exec the upgrade hook, do we want to continue with the last known pre-ugprade step.. or just have a definite procedure.. of redo install-start19:13
niemeyerhazmat: Reexecuting implicitly feels bad19:13
hazmatniemeyer, sure, we do both a+b19:13
niemeyerhazmat: Looking at packages, upgrade hooks are not really idempotent in most cases19:14
hazmatniemeyer, the case i'm asking about is someone trying to recover manually an upgrade error19:14
hazmatdo we just expose transition something like transition to state("x") where x is running, stopped?19:15
hazmatmore generically do we have a definite sequence of hooks we want to have happen, or do we want let the user specify hooks to run or state to try and achieve.19:16
niemeyerhazmat: Seems like too much knowledge would be needed19:17
niemeyerhazmat: We need something people can more easily reason about19:17
niemeyerhazmat: E.g. "ensemble recover unit/1" simply unblocks the unit and puts it back in the state the last transition was trying to achieve19:18
hazmathmm19:18
niemeyerhazmat: Or perhaps, "ensemble resolved unit/1"19:19
hazmatniemeyer, looks good19:19
hazmatniemeyer, i prefer recover, it suggests actions to be performed, rather than noting something already done.19:19
niemeyerhazmat: Since it's not really an action.. it's simply informing that "I have resolved the issue"19:19
niemeyerhazmat: Exactly, the intention is the latter19:19
niemeyerhazmat: We won't be doing the action.. the user is supposed to resolve the problem himself19:19
hazmatniemeyer, hm... so your suggesting we don't execute the transition?19:19
hazmatfor failure recovery19:20
niemeyerhazmat: Right, not by default at least19:20
niemeyerhazmat: We can have19:20
niemeyerhazmat: ensemble resolved --retry19:20
hazmatniemeyer, what about an exposing an easy way to run an abitrary hook?19:20
hazmatalso useful for the debugging hooks scenarios19:21
niemeyerhazmat: Feels pretty invasive..  formulas are not built with the idea that hooks can be run in arbitrary moments19:21
niemeyerhazmat: The user can go into the machine and run it manually, if they wish to19:21
hazmatniemeyer, this is more an advanced tool for formula authors or motivated users.19:21
hazmatniemeyer, not in the proper environment without a debug running which needs hook execution to trigger fully19:22
niemeyerhazmat: Sure, we can have a debug command for that, no worries with that19:22
niemeyerhazmat: But this should not be documented anywhere, if you see what I mean19:22
niemeyerhazmat: This is far from a workflow we want to encourage19:22
bcsallersimulating the context for relation hooks might be a bit strange there too19:22
niemeyerhazmat: Yep19:22
hazmatniemeyer, i see your point yeah its not something we want to expose.. users shouldn't need to care about this... but in the real world they often do ;-)19:23
niemeyerhazmat: That's why "ensemble resolved" feels more "grounded"..  If a hook exploded in-flight, we have no idea why19:23
niemeyerhazmat: Let the user debug it and then type "ensemble resolved" to restore normal operation19:23
niemeyerhazmat: They don't, actually.. I don't see people typing "postrm" manually19:24
niemeyerOr postinst...19:24
hazmatniemeyer, true, but the formula-author might having inspected its logs, and fixed the hook, and might just want to run 'dpkg' again for example19:24
hazmatthe --retry works19:24
niemeyerhazmat: Yes, they remove and reinstall the package.. that works for us too :)19:24
kim0niemeyer: just replied .. letting you know in case you don't get it 19:25
niemeyerhazmat: So I guess, going back to the original point, we have to introduce "ensemble resolved", and then make an error transition to upgrade-error or the such19:25
* kim0 mostly afk now on19:26
niemeyerhazmat: and then transition back with resolved19:26
niemeyerkim0: I got it19:26
kim0niemeyer: hmm, what does driving that meeting entail? Is it like the server meeting chair19:44
niemeyerkim0: It is about taking care of organizing it, collecting topics for it, and in general ensuring it stays sensible and useful to everyone involved.19:44
kim0sounds good19:45
kim0No problem, volunteering :)19:45
niemeyerkim0: Awesome, thanks!19:46
kim0niemeyer: when do we start? this week or after udso19:46
niemeyerkim0: You tell me.. I'll be happy to attend it this week already :)19:47
kim0niemeyer: well I have no problem announcing the meeting publicly and starting from this week. As mentioned don't expect much attendance for the first period, but everything should be kept public from day one. Mostly it's gonna be about team members talking the current state of ensemble ..etc, and if you're ok with it, I'm definitely ok having it this week19:50
niemeyerkim0: Sure, let's do it then19:50
kim0awesome .. deal19:50
niemeyerkim0: It's important to be a bit prepared for it19:50
niemeyerkim0: Rather than simply inviting us to speak19:51
kim0Tips are welcome19:51
niemeyerkim0: You can always keep an eye on what's happening here: http://people.canonical.com/~niemeyer/budapest.html19:51
niemeyerkim0: If you participate in the team in Launchpad, you can also watch reviews passing by19:51
niemeyerkim0: So it should be very easy to keep track of what the most interesting conversations/actions happening19:52
kim0well yeah, except non devs like me don't particularly enjoy reading patches :)19:52
kim0but yeah sure19:52
niemeyerkim0: Yeah, I'm not suggesting that19:52
niemeyerkim0: Patches always have textual descriptions accompanying them, and a bug attached19:52
* kim0 nods19:52
_mup_ensemble/trunk-merge r184 committed by kapil.thangavelu@canonical.com19:52
_mup_merge trunk19:52
niemeyerkim0: You should also feel free to poke people that don't describe what they're doing well.19:53
kim0Ok ... so making sure devs can speak in plain English19:53
niemeyerkim0: I'll be happy to explain better something I slack when describing in a review, for instance.19:53
kim0I can do that :)19:53
niemeyerkim0: Right, exactly19:53
kim0got you19:53
niemeyerkim0: Our docs also have been improving a lot19:53
niemeyerkim0: Features should generally be accompanied by a doc patch/improvement19:54
niemeyerkim0: If they are not, that's a good thing to poke about19:54
kim0I'm planning on contributing to that soonish too19:54
* niemeyer pokes jimbaker ;-)19:54
kim0Yes.. excellent point19:54
jimbakerniemeyer, poked19:54
niemeyerkim0: If you can't figure what's happening, no one else will19:54
kim0True .. got your point19:55
kim0niemeyer: thanks for tips .. we'll definitely improve with time as well19:55
niemeyerkim0: You're welcome, and thanks for organizing this19:56
kim0rock n roll the service management space :)19:56
* kim0 afk for real this time .. :)19:56
kim0btw does Ensemble have a logo/mascot 19:59
kim0or is someone working on one rather19:59
hazmatkim0, definitely.. perhaps a musical instrument on a cloud background20:01
kim0hazmat: definitely means someone is working on it ? or you'd love to :)20:01
hazmatkim0, love to have it20:01
kim0ah hehe20:02
kim0I'd love to .. would give a nice visual ID20:02
jimbakerhttp://en.wikipedia.org/wiki/File:Zentralfriedhof_Vienna_-_Boltzmann.JPG20:02
jimbakerrelated to the other meaning of "canonical ensemble" ;)20:03
kim0is that blotzman the scientist20:03
jimbakerkim0, yes20:03
hazmatjimbaker, yeah.. looking at http://en.wikipedia.org/wiki/Machine_learning_ensemble i almost think of a mathematical E symbol over a cloud might be cool as well20:03
kim0of "constant" fame hehe20:03
kim0we need a bunch to choose from :)20:03
kim0okie dokie .. I'll see who I can bribe to work on this :)20:04
jimbakerhazmat, it is cool how such ensembles do perform nicely - similar i guess to doing metanalysis of study results to boost signal20:07
jimbakerbcsaller, hazmat, niemeyer - i really want to have lunch. should we do our standup?20:08
niemeyerjimbaker: Sure, let's do it20:09
niemeyerOr maybe not?  Where's everyone? :)20:11
jimbakerlooks like it's just hazmat who is not visible to me20:12
niemeyerjimbaker: Nevermind.. go have your lunch20:12
niemeyerjimbaker: We can catch up later/tomorrow20:13
jimbakerjust the time of year when DST ensures this standup window falls right in the middle of lunchtime20:13
jimbakerok, sounds good, i'm making progress20:13
niemeyerjimbaker: We should also move the standup if it's right in your lunch time20:15
niemeyerjimbaker: I'm sure we can find another suitable time that works for the three of us20:15
jimbakerif we start on time (75 minutes ago), it's fine. it's just the variance on the window time that makes me starve :)20:16
hazmatdoh.. sorry got a snack20:18
hazmatalso making progress20:18
bcsallerI am as well20:18
_mup_ensemble/state-machine-enhancements r203 committed by kapil.thangavelu@canonical.com21:07
_mup_support for firing transition with fuzzy match on transition21:07
_mup_ensemble/unit-agent-formula-upgrade r202 committed by kapil.thangavelu@canonical.com21:15
_mup_lifecycle integration of upgrade-formula hook21:15
hazmatapport concurrent report productivity kill21:31
hazmatniemeyer, irc as other medium or skype?21:35
niemeyerhazmat: Skype would probably work better21:36
hazmatniemeyer, ready when you are21:36
niemeyerhazmat: Cool, just a moment21:37
niemeyerhazmat: I'm up21:39
SpamapSniemeyer: re-reading my post, it may have been a bit dramatic and overriden my point that I don't feel comfortable suggesting people start playing with it without some kind of release strategy.21:45
niemeyerhazmat: ensemble upgrade --force 21:55
niemeyerhazmat: ensemble resolved --retry21:55
niemeyerhazmat: id + "_upgrade_" + id21:59
niemeyerSpamapS: So, off meeting22:02
niemeyerSpamapS: We just have to be honest about the project state22:02
niemeyerSpamapS: We've been doing pretty well in terms of compatibility so far22:02
niemeyerSpamapS: and it feels like the ground we're building is quite solid22:03
niemeyerSpamapS: But there's no point in making blank statements right now.. the project works at all for a couple of months22:03
jimbakerbiab, need to take my daughter to her doctor checkup22:03
niemeyerSpamapS: If we decide to make changes, there will be some very good background to them, and you'll be in the loop22:03
SpamapSniemeyer: Indeed I think its time to bring on early adopters who may actually use it for something... its only going to be *very* aggressive users who will use it w/o an official release.22:05
niemeyerSpamapS: We'll have releases.. we're just walking towards it22:08
niemeyerSpamapS: We're working on important features right now which are also critical for these same users which care about the release22:08
niemeyerAlright, I'll step out for some exercising.. bbl likely22:10
=== niemeyer is now known as niemeyer_away
SpamapSniemeyer: sounds good. Glad we're on the same page then. :)22:10
_mup_ensemble/state-machine-enhancements r204 committed by kapil.thangavelu@canonical.com22:24
_mup_backout of matching or alias tranasitions22:24
hazmatsomething quite strange23:59

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