Author: rjung Date: Thu Apr 15 20:37:53 2010 New Revision: 934587 URL: http://svn.apache.org/viewvc?rev=934587&view=rev Log: Fix BZ48248: Use volatile since field is accessed by multiple threads.
Backport of r883200 from TC 7.0.x. Modified: tomcat/sandbox/tomcat-oacc/trunk/docs/changelog.xml tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/mcast/McastServiceImpl.java tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/membership/McastServiceImpl.java tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/tcp/WorkerThread.java Modified: tomcat/sandbox/tomcat-oacc/trunk/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/sandbox/tomcat-oacc/trunk/docs/changelog.xml?rev=934587&r1=934586&r2=934587&view=diff ============================================================================== --- tomcat/sandbox/tomcat-oacc/trunk/docs/changelog.xml (original) +++ tomcat/sandbox/tomcat-oacc/trunk/docs/changelog.xml Thu Apr 15 20:37:53 2010 @@ -32,6 +32,10 @@ <section name="Tomcat OACC 0.1 (rjung)"> <subsection name="Cluster"> <fix> + <bug>48248</bug>: Use volatile since field is accessed by multiple threads. + Port from Tomcat 7.0. (rjung) + </fix> + <fix> <bug>48790</bug>: Fix thread safety issue in the count of the maximum number of active session. Port from Tomcat 6.0. (rjung) Modified: tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/mcast/McastServiceImpl.java URL: http://svn.apache.org/viewvc/tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/mcast/McastServiceImpl.java?rev=934587&r1=934586&r2=934587&view=diff ============================================================================== --- tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/mcast/McastServiceImpl.java (original) +++ tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/mcast/McastServiceImpl.java Thu Apr 15 20:37:53 2010 @@ -48,7 +48,7 @@ public class McastServiceImpl /** * Internal flag used for the listen thread that listens to the multicasting socket. */ - protected boolean doRun = false; + protected volatile boolean doRun = false; /** * Socket that we intend to listen to */ @@ -416,7 +416,7 @@ public class McastServiceImpl protected static class RecoveryThread extends Thread { - static boolean running = false; + static volatile boolean running = false; McastServiceImpl parent = null; Modified: tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/membership/McastServiceImpl.java URL: http://svn.apache.org/viewvc/tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/membership/McastServiceImpl.java?rev=934587&r1=934586&r2=934587&view=diff ============================================================================== --- tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/membership/McastServiceImpl.java (original) +++ tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/membership/McastServiceImpl.java Thu Apr 15 20:37:53 2010 @@ -48,12 +48,12 @@ public class McastServiceImpl /** * Receiver thread are listens to the multicasting socket. */ - protected boolean doRunReceiver = false; + protected volatile boolean doRunReceiver = false; /** * Sender thread are listens to the multicasting socket. */ - protected boolean doRunSender = false; + protected volatile boolean doRunSender = false; /** * Socket that we intend to listen to @@ -460,7 +460,7 @@ public class McastServiceImpl protected static class RecoveryThread extends Thread { - static boolean running = false; + static volatile boolean running = false; McastServiceImpl parent = null; Modified: tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/tcp/WorkerThread.java URL: http://svn.apache.org/viewvc/tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/tcp/WorkerThread.java?rev=934587&r1=934586&r2=934587&view=diff ============================================================================== --- tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/tcp/WorkerThread.java (original) +++ tomcat/sandbox/tomcat-oacc/trunk/src/share/org/apache/catalina/cluster/tcp/WorkerThread.java Thu Apr 15 20:37:53 2010 @@ -25,7 +25,7 @@ package org.apache.catalina.cluster.tcp; public class WorkerThread extends Thread { protected ThreadPool pool; - protected boolean doRun = true; + protected volatile boolean doRun = true; public void setPool(ThreadPool pool) { --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org