https://bz.apache.org/bugzilla/show_bug.cgi?id=58504
Bug ID: 58504 Summary: Maintenance process skipped occasionally Product: Tomcat Connectors Version: 1.2.41 Hardware: PC OS: Linux Status: NEW Severity: normal Priority: P2 Component: mod_jk Assignee: dev@tomcat.apache.org Reporter: shimizuhiroto...@gmail.com Created attachment 33186 --> https://bz.apache.org/bugzilla/attachment.cgi?id=33186&action=edit patch against trunk When the following environment set, maintenance process skipped occasionally. This behavior is 1.2.41 only. * worker.maintain=30 * JkWatchdogInterval 30 I analyze of follows. In case of JK_TRUE, maintenance is performed in maintain_workers(). if "jk_shmem.hdr-> h.data.maintain_time = trigger", JK_FALSE is returned. But it should be returned JK_TRUE. ---jk_shm.c 872 int jk_shm_check_maintain(time_t trigger) : 881 if (jk_shmem.hdr->h.data.maintain_time < trigger) { 882 jk_shmem.hdr->h.data.maintain_time = time(NULL); 883 rv = JK_TRUE; 884 } : 886 return rv; --- I made patch against trunk. ====================================== --- jk_shm.c (revision 1702073) +++ jk_shm.c (working copy) @@ -878,7 +878,7 @@ JK_ATOMIC_DECREMENT(&(jk_shmem.hdr->h.data.maintain_checking)); return rv; } - if (jk_shmem.hdr->h.data.maintain_time < trigger) { + if (jk_shmem.hdr->h.data.maintain_time <= trigger) { jk_shmem.hdr->h.data.maintain_time = time(NULL); rv = JK_TRUE; } -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org