https://issues.apache.org/bugzilla/show_bug.cgi?id=39079
--- Comment #25 from HuoMingyu <[email protected]> 2009-08-09 10:57:45 PDT --- Same problem detected in version 2.2.11. Happens everyday on an 8-cpu centos . Sometimes eatup 4 cups by 100%, while sometimes 8. I was wondering whether it's because there is a loop in the linked list p->cleanups and the length of the loop is bigger than 4, so that it's not detected by the corrupt list detection mechanism? Or is that not possible? Source below is part of apr_pool_cleanup_kill(all my threads with 100% CPU are detected running this function ): while (c) { #if APR_POOL_DEBUG /* Some cheap loop detection to catch a corrupt list: */ if (c == c->next || (c->next && c == c->next->next) || (c->next && c->next->next && c == c->next->next->next)) { abort(); } #endif if (c->data == data && c->plain_cleanup_fn == cleanup_fn) { *lastp = c->next; /* move to freelist */ c->next = p->free_cleanups; p->free_cleanups = c; break; } lastp = &c->next; c = c->next; } -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
