[patch] kill process after a timeout

Sam Lawrance boris at brooknet.com.au
Thu Feb 2 04:04:20 PST 2006


On 02/02/2006, at 10:58 PM, Yar Tikhiy wrote:

> On Mon, Jan 30, 2006 at 10:29:25AM +1100, Sam Lawrance wrote:
>>
>> On 30/01/2006, at 1:15 AM, Florent Thoumie wrote:
>>
>>> On Sunday 29 January 2006 14:38, Sam Lawrance wrote:
>>>> http://people.freebsd.org/~lawrance/patch-rc.subr
>>>>
>>>> This patch adds the ${name}_stop_timeout variable.  When set,  
>>>> rather
>>>> than simply wait on the PIDS after sending a -TERM signal, they  
>>>> will
>>>> be kill -9'ed after the specified timeout in seconds.
>>>>
>>>> For example, with a tomcat script I'm working on, I set
>>>> jakarta_tomcat41_stop_timeout=10, then
>>>>
>>>> # sh tomcat41.sh forcestop
>>>> Stopping jakarta_tomcat41.
>>>> Waiting (max 10 secs) for PIDS: 42864, 42864, 42864, 42864, 42864.
>>>>
>>>> I need to do something like this anyway with the tomcat rc  
>>>> scripts, I
>>>> figure it might be a useful addition to rc.subr.
>>>>
>>>> Thoughts?
>>>
>>> Looks good to me. But I wondered if we really have cases where we
>>> don't want
>>> to wait with some timeout. I guess I would have modified
>>> wait_for_pid to take
>>> $name_stop_timeout as a new argument (defaulting to 10, for
>>> example) instead
>>> of copying wait_for_pid to a new function.
>>>
>>> My 0.02$ :)
>>
>> We can't add a new optional argument without changing all the calls
>> to it anyway, because it takes a variable of PIDs as arguments:
>>
>> wait_for_pids pid [pid ...]
>>
>> I thought it was better to create a new function, just in case there
>> are other scripts and ports that use wait_for_pids.
>
> I wonder why we haven't begun using POSIX getopts in rc.subr functions
> yet.  Some of them are asking for it.  In this case:
>
> 	wait_for_pids [-t timeout] pid ...
>
> Pretty neat, huh? :-)

You know, it never even crossed my mind.  I'll make some changes and  
follow up to the PR.

Thanks!



More information about the freebsd-rc mailing list