That seems reasonable to me. We discovered the problem with mod_jk2. The code was traversing the pool hierarchy back to the root where they proceded to create a mutex and set a cleanup. Since the the APR global_pool is never cleaned up from the root down while APR is in use, the mutex was allowed to hang around even after httpd had gone away. Since the mutex was actually allocated against httpd, but httpd no longer existed in memory, NetWare faulted when APR attempted to destroy the orphaned mutex.
Brad Brad Nicholes Senior Software Engineer Novell, Inc., the leading provider of Net business solutions http://www.novell.com >>> Sander Striker <[EMAIL PROTECTED]> Tuesday, December 09, 2003 11:01:54 AM >>> On Tue, 2003-12-09 at 18:43, [EMAIL PROTECTED] wrote: > bnicholes 2003/12/09 09:43:01 > > Modified: memory/unix apr_pools.c > Log: > Since all NetWare memory is shared, allowing an application access to the APR global pool allows it to allocate memory and set cleanups that will never happen even if the application terminates. > >I'm wondering if we shouldn't always decline to return the global pool. >No user should be messing with the apr global pool anyway. > >Thoughts? > >Sander
