On 10/13/05, Bill Stoddard <[EMAIL PROTECTED]> wrote:
> Ivan Zhakov wrote:
> > Hi!We have Apache/Subversion server under Windows Server 2003. And I 
> > wascome into problem with restarting server that process long request(more 
> > than 180 seconds). It's usual for bug Subversion repository. Isee messages 
> > like this in error.log:[Thu Oct 13 02:28:01 2005] [notice] Child 3952: 
> > Terminating 1 threadsthat failed to exit.
> > I research problem and that mpm_winnt have hardcoded timeout forstopping 
> > working 
> > threads:http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x/server/mpm/winnt/child.c:child_main()/*
> >  Give busy worker threads a chance to service their connections */    
> > ap_log_error(APLOG_MARK,APLOG_NOTICE, APR_SUCCESS, ap_server_conf,          
> >        "Child %d: Waiting for %d worker threads to exit.",my_pid, 
> > threads_created);    end_time = time(NULL) + 180;    while 
> > (threads_created) {        rv = wait_for_many_objects(threads_created, 
> > child_handles,end_time - time(NULL));        if (rv != WAIT_TIMEOUT) {      
> >       rv = rv - WAIT_OBJECT_0;            ap_assert((rv >= 0) && (rv < 
> > threads_created));            cleanup_thread(child_handles, 
> > &threads_created, rv);            continue;        }        break;    }
> > After this timeout Apache terminate worker threads. Why is it? Whympm_winnt 
> > behavior incompatible to perfork behavior which waitsinfinityle for 
> > stopping child processes? It causes really problems onmaintance and also 
> > doesn't permit use MaxRequestsPerChild option.
> > PS: Sorry if it is not right place for such questions.
> > --Ivan Zhakov
> >
> >
> >
>
> Hi Ivan,
> This is definitly the right place for this type of question. I think the few 
> Win32 developers
> here (myself
> included) always had this on their list of 'todo's'. The Windows MPM needs to 
> be
> enhanced to reliably support
> multiple child processes and when that's done, this will be fixed 'for free'.
Hi, Bill!
You meant Worker mpm? To be clear: you cannot simply change timeout to
infinite wait in mpm_wint?
It is really important, because Apache+Subversion is unusable in
production environment under Windows at present time :(

--
Ivan Zhakov

Reply via email to