[05:43] <toidinamai> Hello.
[05:43] <toidinamai> How does upstart compare with runit or djb's daemontools?
[10:20] <Jc2k> toidinamai: i am in no way even close to an expert on the subject, but runit seems very minimalist in comparison to upstart
[10:21] <Jc2k> thats not meant to say that upstart is fat, just that it has a larger scope
[10:22] <Jc2k> i can't see that daemontools even tries to replace init, so that would be the difference there
[10:23] <Jc2k> my understanding is that upstart tries to be a really flexible event based service manager
[10:24] <Jc2k> so you can configure a service or job to run each time a service is starting, started, stopping or stopped
[10:24] <Jc2k> but also on a time event
[10:24] <Jc2k> or even on a HAL event
[10:25] <Jc2k> runit and daemontools just seem concerned with getting things started or stopped, and your left to handle dependencies in your scripts rather than taking advantage of a ready made dependency handler
[10:26] <Jc2k> toidinamai: the best guy to answer your question is probably Keybuk
[10:27] <Jc2k> he's on UK time if that helps you plan when best to come on IRC (04:43AM is a little early for us brits ;D)
[01:23] <toidinamai> Jc2k: Thanks.
[01:24] <toidinamai> Jc2k: I'm on CET but my sleep schedule is currently a little off. :-)
[02:21] <toidinamai> Keybuk: Does upstart supervise its services like daemontools or runit?
[02:21] <Keybuk> hello
[02:21] <Keybuk> err
[02:22] <Keybuk> Upstart supervises services, so can respawn them if they die
[02:22] <Keybuk> I don't know whether it supervises them in the same way as daemontools or runit though
[02:22] <Keybuk> (but maybe you didn't intend to ask that)
[02:23] <toidinamai> Hm, I guess I'll just have to try it out.
[02:24] <toidinamai> I'm currently using runit as an init replacement everywhere I can but it still needs a lot of fine tuning.
[02:24] <Keybuk> I can probably answer specific questions in quite detail
[02:25] <Keybuk> though I don't know how the other tools behave
[02:25] <toidinamai> Ok.
[02:25] <toidinamai> So upstart doesn't use the traditional init scripts at all, is that right?
[02:26] <Keybuk> right
[02:26] <toidinamai> How does it deal with scripts installed by packages like openssh-server?
[02:27] <Keybuk> what kind of scripts?
[02:27] <toidinamai> /etc/init.d/ssh
[02:27] <Keybuk> it ignores them completely
[02:28] <Keybuk> the usual way you install Upstart is to have Upstart jobs emulate the lines in your old inittab
[02:28] <Keybuk> (running /etc/init.d/rc, or whatever)
[02:28] <Keybuk> so existing init scripts are run by the existing sysvinit scripts, etc.
[02:28] <Keybuk> leaving you free to convert over to Upstart jobs at your leisure
[02:28] <Keybuk> obviously you don't get any kind of supervision for legacy init scripts
[02:31] <toidinamai> Hm.  I sometimes get conflicts that way when using runit.  After installing a server package dpkg adds it to the runlevels and tries to start it.
[02:43] <toidinamai> Upstart uses traditional logging using syslog, right?
[03:09] <Keybuk> kinda
[07:30] <Keybuk> I hate valgrind
[07:32] <Keybuk> ==29463== ERROR SUMMARY: 348 errors from 18 contexts (suppressed: 11 from 1)
[07:32] <Keybuk> it keeps finding errors in code I'm happy with
[07:32] <Jc2k> :-\
[07:32] <Jc2k> how dare it!
[07:45] <ion_> Another guy got valgrind to segfault just a while ago.
[07:48] <Keybuk> valgrind usually segfaults because your program does
[07:48] <ion_> Well, it spewed an error like valgrind: the impossible happened first. :-)
[07:50] <Keybuk> ==29490== Invalid write of size 4
[07:50] <Keybuk> ==29490==    at 0x80523D5: nih_list_cut (list.c:202)
[07:50] <Keybuk> ==29490==    by 0x80524A9: nih_list_destroy (list.c:246)
[07:50] <Keybuk> ==29490==    by 0x8051096: nih_free (alloc.c:336)
[07:50] <Keybuk> ==29490==    by 0x804C3A4: test_dir_walk (test_file.c:793)
[07:51] <Keybuk> ==29490==    by 0x8050CC1: main (test_file.c:1336)
[07:51] <Keybuk> oopsy