Author: markt
Date: Fri Sep 18 14:04:34 2015
New Revision: 1703860
URL: http://svn.apache.org/viewvc?rev=1703860&view=rev
Log:
Fix another data race
Code clean-up
Modified:
tomcat/trunk/java/org/apache/catalina/tribes/membership/MemberImpl.java
Modified:
tomcat/trunk/java/org/apache/catalina/tribes/membership/MemberImpl.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/membership/MemberImpl.java?rev=1703860&r1=1703859&r2=1703860&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/tribes/membership/MemberImpl.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/membership/MemberImpl.java Fri
Sep 18 14:04:34 2015
@@ -200,14 +200,18 @@ public class MemberImpl implements Membe
@Override
public synchronized byte[] getData(boolean getalive, boolean reset) {
- if ( reset ) dataPkg = null;
- //look in cache first
- if ( dataPkg!=null ) {
- if ( getalive ) {
- //you'd be surprised, but System.currentTimeMillis
- //shows up on the profiler
- long alive=System.currentTimeMillis()-getServiceStartTime();
- XByteBuffer.toBytes(alive, dataPkg, TRIBES_MBR_BEGIN.length+4);
+ if (reset) {
+ dataPkg = null;
+ }
+ // Look in cache first
+ if (dataPkg != null) {
+ if (getalive) {
+ // You'd be surprised, but System.currentTimeMillis
+ // shows up on the profiler
+ long alive = System.currentTimeMillis() -
getServiceStartTime();
+ byte[] result = dataPkg.clone();
+ XByteBuffer.toBytes(alive, result, TRIBES_MBR_BEGIN.length +
4);
+ dataPkg = result;
}
return dataPkg;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]