Author: mturk
Date: Wed May 9 11:32:43 2012
New Revision: 1336104
URL: http://svn.apache.org/viewvc?rev=1336104&view=rev
Log:
Use the same logic for subworkers; always increment the shared memory on push
and then sync the local reference
Modified:
tomcat/jk/trunk/native/common/jk_lb_worker.c
Modified: tomcat/jk/trunk/native/common/jk_lb_worker.c
URL:
http://svn.apache.org/viewvc/tomcat/jk/trunk/native/common/jk_lb_worker.c?rev=1336104&r1=1336103&r2=1336104&view=diff
==============================================================================
--- tomcat/jk/trunk/native/common/jk_lb_worker.c (original)
+++ tomcat/jk/trunk/native/common/jk_lb_worker.c Wed May 9 11:32:43 2012
@@ -375,7 +375,7 @@ void jk_lb_push(lb_worker_t *p, int lock
for (i = 0; i < p->num_of_workers; i++) {
lb_sub_worker_t *w = &p->lb_workers[i];
- if (w->sequence > w->s->h.sequence) {
+ if (w->sequence != w->s->h.sequence) {
jk_worker_t *jw = w->worker;
ajp_worker_t *aw = (ajp_worker_t *)jw->worker_private;
@@ -392,14 +392,15 @@ void jk_lb_push(lb_worker_t *p, int lock
w->s->activation = w->activation;
w->s->lb_factor = w->lb_factor;
w->s->lb_mult = w->lb_mult;
- w->s->h.sequence = w->sequence;
+ w->s->h.sequence++;
+ w->sequence = w->s->h.sequence;
}
}
/* Increment the shared memory sequence number.
* Our number can be behind the actual value in
* shared memory.
*/
- ++p->s->h.sequence;
+ p->s->h.sequence++;
p->sequence = p->s->h.sequence;
if (locked == JK_FALSE)
jk_shm_unlock();
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]