[Jboss-cvs] JBossAS SVN: r54916 - trunk/aspects/src/main/org/jboss/aspects/remoting

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Jul 31 11:29:05 EDT 2006


Author: bstansberry at jboss.com
Date: 2006-07-31 11:29:04 -0400 (Mon, 31 Jul 2006)
New Revision: 54916

Modified:
   trunk/aspects/src/main/org/jboss/aspects/remoting/ClusterChooserInterceptor.java
Log:
[JBAS-2071] Control access to FamilyClusterInfo when serializing proxies

Modified: trunk/aspects/src/main/org/jboss/aspects/remoting/ClusterChooserInterceptor.java
===================================================================
--- trunk/aspects/src/main/org/jboss/aspects/remoting/ClusterChooserInterceptor.java	2006-07-31 15:27:48 UTC (rev 54915)
+++ trunk/aspects/src/main/org/jboss/aspects/remoting/ClusterChooserInterceptor.java	2006-07-31 15:29:04 UTC (rev 54916)
@@ -64,9 +64,12 @@
       while (target != null)
       {
          invocation.getMetaData().addMetaData(CLUSTERED_REMOTING, FAILOVER_COUNTER, new Integer(failoverCounter), PayloadKey.AS_IS);
-         invocation.getMetaData().addMetaData(InvokeRemoteInterceptor.REMOTING, InvokeRemoteInterceptor.INVOKER_LOCATOR, target, PayloadKey.AS_IS);
-         invocation.getMetaData().addMetaData(CLUSTERED_REMOTING, CLUSTER_VIEW_ID, new Long(family.get().getCurrentViewId()), PayloadKey.AS_IS);
-
+         // JBAS-2071 prevent updates to family while we read from it
+         synchronized (family)
+         {
+            invocation.getMetaData().addMetaData(InvokeRemoteInterceptor.REMOTING, InvokeRemoteInterceptor.INVOKER_LOCATOR, target, PayloadKey.AS_IS);
+            invocation.getMetaData().addMetaData(CLUSTERED_REMOTING, CLUSTER_VIEW_ID, new Long(family.get().getCurrentViewId()), PayloadKey.AS_IS);
+         }
          boolean definitivlyRemoveNodeOnFailure = true;
          lastException = null;
          try




More information about the jboss-cvs-commits mailing list