=== sadmac_ is now known as sadmac
sadmac2Keybuk: how was the flight back?15:53
KeybukI can never sleep on planes15:57
sadmac2Keybuk: I've been pondering the idea of transitions in the state machine16:03
sadmac2basically, right now if we have state A set, and we say when A on q B, we get state A and B true16:03
sadmac2this is good, we want this16:03
sadmac2but we might also want this:16:04
sadmac2on q transition A to B16:04
sadmac2so when q happens, A becomes false, and B becomes true16:04
Keybukit depends whether you reuse your A object for "A and C"16:04
Keybukotherwise it's just two different ways to look at the same effect?16:04
sadmac2you'd want to reuse16:05
sadmac2that'd be expected behavior for the user16:05
Keybukwhen A on q B16:05
Keybukwhen A on r C16:05
KeybukI don't think you can express that if A transitions to B on q16:06
Keybuksince you lost your A tracking for C16:06
sadmac2yes, its not appropriate there16:06
Keybukso which you pick depends on the implementation I think16:06
sadmac2some cases you want one behavior, some the other16:06
sadmac2we can support both16:06
sadmac2with different keywords16:07
sadmac2when A on q B means if you have A and q happens you keep A and get B16:07
sadmac2when A on q goto B means if you have A and q happens you lose A and get B16:07
Keybukwould you want the latter behaviour if you have the former?16:08
Keybuksometimes it helps to have a use case for a feature before you worry about it16:08
sadmac2think runlevels16:08
Keybukrunlevels right now are just different values of A16:08
sadmac2but we can view them as independent states16:08
Keybukwe can, indeed16:09
Keybukhere's an interesting thought16:09
Keybukif A is "runlevel 2"16:09
Keybukand B is "runlevel 3"16:09
Keybukif you transition from 2 to 3, you may not kill all the processes started by 216:09
Keybukso would those still hold a reference on 2?16:10
Keybukif A transitioned to B, would those suddenly have null references or reference a different state to what started them?16:10
Keybukand if A just went away from the list of active states, and B got added, would that be bad?16:10
sadmac2the processes in runlevels right now are outside of our management16:10
sadmac2could we fix that? maybe.16:10
sadmac2and can we fix it while the people using them remain oblivious to them?16:12
Keybukwe could16:12
Keybukwe may only fix it if they have LSB headers16:12
sadmac2the thing we're missing is the references go the other way16:13
sadmac2the services don't depend on the runlevel16:13
sadmac2the runlevel depends on the services16:13
sadmac2bringing up a runlevel brings up all the services.16:13
sadmac2bringing up all the services doesn't necessarily change the runlevel (in fact the people wanting sysv compat would freak if that happened)16:14
Keybukit'd be interesting if it did :p16:16
sadmac2and I think we can do it16:16
Keybuk  lamp = (apache, mysql) + auto16:16
Keybukstart lamp16:16
Keybukwill start apache and mysql16:16
sadmac2but its not right for runlevels16:16
Keybukstart apache16:16
Keybukstart mysql16:16
Keybukwill also inherently say lamp is running16:16
Keybukwhy not? :P16:16
Keybuktake the Fedora model16:16
Keybukif I boot into runlevel 316:16
Keybukand I start X16:16
Keybukshouldn't it now say I'm in runlevel 5? :p16:16
Keybukbecause I am16:16
sadmac2not according to sysv16:16
sadmac2this is a compat mode. we can't do as much cool stuff here16:17
Keybukshow me the line that says that cannot be true :p16:17
sadmac2if it ain't broke, it ain't fixed16:17
sadmac2I'll show you the mailing list that says it cannot be true :D16:17
Keybukurl to the thread?16:17
* sadmac2 goes digging archives16:20
sadmac2not a specific example, but:16:33
sadmac2> Are you seriously suggesting that less than 50% of Fedora systems have16:34
sadmac2> yum installed?16:34
sadmac2yes; at least on my machines there is yum only on the host while16:34
sadmac2guestsystems don't need it. Ratio of physical hosts to virtual16:34
sadmac2^^guy purporting not to have python on 3/4 of his fedora boxes16:34
sadmac2point being: the people who care most about sysv compat are batshit insane16:34
Keybuksorry to change the subject16:55
Keybukbut about the patch16:55
sadmac2we'll need a new one won't we?16:55
sadmac2ugh, regression.16:56
Keybukactually, it was more the implementation that interested me16:56
Keybukyou added a control message16:56
Keybukinitctl sends that control message to upstart16:56
Keybukwhich handles that control message16:56
Keybukby ...16:56
Keybuksending itself the TERM signal16:56
Keybukcouldn't you have just made initctl send the term signal? :p16:56
Keybukcase 'u':16:56
Keybuk  kill (1, SIGTERM);16:57
Keybuk  break;16:57
sadmac2I think we figured there would be a better way than self-terming to handle that case down the road16:57
Keybukso you figured it'd be better to add API without knowing what you wanted? :p16:57
Keybukgiving yourself the interesting "socket goes away during a call" problem <g>16:58
KeybukI'm amused, rather than anything else, btw :)16:58
Keybuk"I would not have done it that way" <g>16:58
sadmac2I learned the control system16:58
sadmac2ultimately I think its a product of not looking at both ends16:58
sadmac2I wrote the telinit bit16:58
sadmac2then realized that once I got the message in init there wasn't much interesting to do with it16:59
Keybukthat sounds like my one attempt to sleep with a woman17:07
Keybukonce I got it in, there was nothing else useful to do17:07
sadmac2I should write that down somewhere18:26
suihkulokkisomething familiar on the slide :)18:35
sadmac2capslock makes everything awkward!18:44
keesjindeed 19:57
keesjAs I understand they will try to go for the native upstart mode19:57
ion_capslock makes everything awesome!19:58
Keybukbah, there was a bonus available for replying "INDEED" there ;)19:58
ion_I didn’t dare to type that in caps, though. :-)19:58
* keesj was at the maemo summit19:58

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