[jboss-cvs] JBoss Messaging SVN: r3901 - in branches/Branch_Stable: src/main/org/jboss/jms/server/endpoint and 4 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Mar 20 19:15:08 EDT 2008


Author: clebert.suconic at jboss.com
Date: 2008-03-20 19:15:08 -0400 (Thu, 20 Mar 2008)
New Revision: 3901

Modified:
   branches/Branch_Stable/src/etc/server/default/deploy/clustered-hsqldb-persistence-service.xml
   branches/Branch_Stable/src/etc/server/default/deploy/mssql-persistence-service.xml
   branches/Branch_Stable/src/etc/server/default/deploy/mysql-clustered-persistence-service.xml
   branches/Branch_Stable/src/etc/server/default/deploy/mysql-persistence-service.xml
   branches/Branch_Stable/src/etc/server/default/deploy/null-persistence-service.xml
   branches/Branch_Stable/src/etc/server/default/deploy/oracle-persistence-service.xml
   branches/Branch_Stable/src/etc/server/default/deploy/postgresql-persistence-service.xml
   branches/Branch_Stable/src/etc/server/default/deploy/sybase-persistence-service.xml
   branches/Branch_Stable/src/main/org/jboss/jms/server/endpoint/ServerSessionEndpoint.java
   branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/ChannelSupport.java
   branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/postoffice/GroupMember.java
   branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/postoffice/MessagingPostOffice.java
   branches/Branch_Stable/tests/build.xml
   branches/Branch_Stable/tests/src/org/jboss/test/messaging/jms/clustering/DistributedTopicTest.java
Log:
http://jira.jboss.org/jira/browse/JBMESSAGING-1089

Modified: branches/Branch_Stable/src/etc/server/default/deploy/clustered-hsqldb-persistence-service.xml
===================================================================
--- branches/Branch_Stable/src/etc/server/default/deploy/clustered-hsqldb-persistence-service.xml	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/etc/server/default/deploy/clustered-hsqldb-persistence-service.xml	2008-03-20 23:15:08 UTC (rev 3901)
@@ -104,14 +104,14 @@
                  use_concurrent_stack="true" 
                  thread_pool.enabled="true"
                  thread_pool.min_threads="1"
-                 thread_pool.max_threads="25"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
-                 thread_pool.queue_enabled="false" 
-                 thread_pool.queue_max_size="100"
+                 thread_pool.queue_enabled="true" 
+                 thread_pool.queue_max_size="500"
                  thread_pool.rejection_policy="run"
                  oob_thread_pool.enabled="true"
                  oob_thread_pool.min_threads="1"
-                 oob_thread_pool.max_threads="8" 
+                 oob_thread_pool.max_threads="100" 
                  oob_thread_pool.keep_alive_time="5000"
                  oob_thread_pool.queue_enabled="false"
                  oob_thread_pool.queue_max_size="100"
@@ -124,11 +124,9 @@
 		         num_ping_requests="3"/>
             <MERGE2 max_interval="100000" min_interval="20000"/>
             <FD_SOCK/>
-            <FD timeout="10000" max_tries="5" shun="true"/>
             <VERIFY_SUSPECT timeout="1500"/>
             <BARRIER/>
-            <pbcast.NAKACK 
-                           use_mcast_xmit="false" gc_lag="0"
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
                            retransmit_timeout="300,600,1200,2400,4800"
                            discard_delivered_msgs="true"/>
             <UNICAST timeout="300,600,1200,2400,3600"/>
@@ -138,9 +136,6 @@
 
             <pbcast.GMS print_local_addr="true" join_timeout="3000"
                 shun="false" view_bundling="true"/>
-            <FC max_credits="2000000" min_threshold="0.10"/>
-            <FRAG2 frag_size="60000"/>
-            <pbcast.STREAMING_STATE_TRANSFER/>
         </config>
       </attribute>
 
@@ -170,8 +165,8 @@
                  use_concurrent_stack="true"
 
                  thread_pool.enabled="true"
-                 thread_pool.min_threads="2"
-                 thread_pool.max_threads="8"
+                 thread_pool.min_threads="1"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
                  thread_pool.queue_enabled="true"
                  thread_pool.queue_max_size="1000"
@@ -207,7 +202,8 @@
             <FC max_credits="500000"
                     min_threshold="0.20"/>
             <FRAG2 frag_size="60000"  />
-            <pbcast.STATE_TRANSFER  />
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="20000"/>
         </config>
      </attribute>
    </mbean>

Modified: branches/Branch_Stable/src/etc/server/default/deploy/mssql-persistence-service.xml
===================================================================
--- branches/Branch_Stable/src/etc/server/default/deploy/mssql-persistence-service.xml	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/etc/server/default/deploy/mssql-persistence-service.xml	2008-03-20 23:15:08 UTC (rev 3901)
@@ -166,14 +166,14 @@
                  use_concurrent_stack="true" 
                  thread_pool.enabled="true"
                  thread_pool.min_threads="1"
-                 thread_pool.max_threads="25"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
-                 thread_pool.queue_enabled="false" 
-                 thread_pool.queue_max_size="100"
+                 thread_pool.queue_enabled="true" 
+                 thread_pool.queue_max_size="500"
                  thread_pool.rejection_policy="run"
                  oob_thread_pool.enabled="true"
                  oob_thread_pool.min_threads="1"
-                 oob_thread_pool.max_threads="8" 
+                 oob_thread_pool.max_threads="100" 
                  oob_thread_pool.keep_alive_time="5000"
                  oob_thread_pool.queue_enabled="false"
                  oob_thread_pool.queue_max_size="100"
@@ -186,11 +186,9 @@
 		         num_ping_requests="3"/>
             <MERGE2 max_interval="100000" min_interval="20000"/>
             <FD_SOCK/>
-            <FD timeout="10000" max_tries="5" shun="true"/>
             <VERIFY_SUSPECT timeout="1500"/>
             <BARRIER/>
-            <pbcast.NAKACK 
-                           use_mcast_xmit="false" gc_lag="0"
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
                            retransmit_timeout="300,600,1200,2400,4800"
                            discard_delivered_msgs="true"/>
             <UNICAST timeout="300,600,1200,2400,3600"/>
@@ -200,9 +198,6 @@
 
             <pbcast.GMS print_local_addr="true" join_timeout="3000"
                 shun="false" view_bundling="true"/>
-            <FC max_credits="2000000" min_threshold="0.10"/>
-            <FRAG2 frag_size="60000"/>
-            <pbcast.STREAMING_STATE_TRANSFER/>
         </config>
       </attribute>
 
@@ -232,8 +227,8 @@
                  use_concurrent_stack="true"
 
                  thread_pool.enabled="true"
-                 thread_pool.min_threads="2"
-                 thread_pool.max_threads="8"
+                 thread_pool.min_threads="1"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
                  thread_pool.queue_enabled="true"
                  thread_pool.queue_max_size="1000"
@@ -269,7 +264,8 @@
             <FC max_credits="500000"
                     min_threshold="0.20"/>
             <FRAG2 frag_size="60000"  />
-            <pbcast.STATE_TRANSFER  />
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="20000"/>
         </config>
      </attribute>
    </mbean>

Modified: branches/Branch_Stable/src/etc/server/default/deploy/mysql-clustered-persistence-service.xml
===================================================================
--- branches/Branch_Stable/src/etc/server/default/deploy/mysql-clustered-persistence-service.xml	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/etc/server/default/deploy/mysql-clustered-persistence-service.xml	2008-03-20 23:15:08 UTC (rev 3901)
@@ -168,14 +168,14 @@
                  use_concurrent_stack="true" 
                  thread_pool.enabled="true"
                  thread_pool.min_threads="1"
-                 thread_pool.max_threads="25"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
-                 thread_pool.queue_enabled="false" 
-                 thread_pool.queue_max_size="100"
+                 thread_pool.queue_enabled="true" 
+                 thread_pool.queue_max_size="500"
                  thread_pool.rejection_policy="run"
                  oob_thread_pool.enabled="true"
                  oob_thread_pool.min_threads="1"
-                 oob_thread_pool.max_threads="8" 
+                 oob_thread_pool.max_threads="100" 
                  oob_thread_pool.keep_alive_time="5000"
                  oob_thread_pool.queue_enabled="false"
                  oob_thread_pool.queue_max_size="100"
@@ -188,11 +188,9 @@
 		         num_ping_requests="3"/>
             <MERGE2 max_interval="100000" min_interval="20000"/>
             <FD_SOCK/>
-            <FD timeout="10000" max_tries="5" shun="true"/>
             <VERIFY_SUSPECT timeout="1500"/>
             <BARRIER/>
-            <pbcast.NAKACK 
-                           use_mcast_xmit="false" gc_lag="0"
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
                            retransmit_timeout="300,600,1200,2400,4800"
                            discard_delivered_msgs="true"/>
             <UNICAST timeout="300,600,1200,2400,3600"/>
@@ -202,9 +200,6 @@
 
             <pbcast.GMS print_local_addr="true" join_timeout="3000"
                 shun="false" view_bundling="true"/>
-            <FC max_credits="2000000" min_threshold="0.10"/>
-            <FRAG2 frag_size="60000"/>
-            <pbcast.STREAMING_STATE_TRANSFER/>
         </config>
       </attribute>
 
@@ -234,8 +229,8 @@
                  use_concurrent_stack="true"
 
                  thread_pool.enabled="true"
-                 thread_pool.min_threads="2"
-                 thread_pool.max_threads="8"
+                 thread_pool.min_threads="1"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
                  thread_pool.queue_enabled="true"
                  thread_pool.queue_max_size="1000"
@@ -271,7 +266,8 @@
             <FC max_credits="500000"
                     min_threshold="0.20"/>
             <FRAG2 frag_size="60000"  />
-            <pbcast.STATE_TRANSFER  />
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="20000"/>
         </config>
      </attribute>
    </mbean>

Modified: branches/Branch_Stable/src/etc/server/default/deploy/mysql-persistence-service.xml
===================================================================
--- branches/Branch_Stable/src/etc/server/default/deploy/mysql-persistence-service.xml	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/etc/server/default/deploy/mysql-persistence-service.xml	2008-03-20 23:15:08 UTC (rev 3901)
@@ -166,14 +166,14 @@
                  use_concurrent_stack="true" 
                  thread_pool.enabled="true"
                  thread_pool.min_threads="1"
-                 thread_pool.max_threads="25"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
-                 thread_pool.queue_enabled="false" 
-                 thread_pool.queue_max_size="100"
+                 thread_pool.queue_enabled="true" 
+                 thread_pool.queue_max_size="500"
                  thread_pool.rejection_policy="run"
                  oob_thread_pool.enabled="true"
                  oob_thread_pool.min_threads="1"
-                 oob_thread_pool.max_threads="8" 
+                 oob_thread_pool.max_threads="100" 
                  oob_thread_pool.keep_alive_time="5000"
                  oob_thread_pool.queue_enabled="false"
                  oob_thread_pool.queue_max_size="100"
@@ -186,11 +186,9 @@
 		         num_ping_requests="3"/>
             <MERGE2 max_interval="100000" min_interval="20000"/>
             <FD_SOCK/>
-            <FD timeout="10000" max_tries="5" shun="true"/>
             <VERIFY_SUSPECT timeout="1500"/>
             <BARRIER/>
-            <pbcast.NAKACK 
-                           use_mcast_xmit="false" gc_lag="0"
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
                            retransmit_timeout="300,600,1200,2400,4800"
                            discard_delivered_msgs="true"/>
             <UNICAST timeout="300,600,1200,2400,3600"/>
@@ -200,9 +198,6 @@
 
             <pbcast.GMS print_local_addr="true" join_timeout="3000"
                 shun="false" view_bundling="true"/>
-            <FC max_credits="2000000" min_threshold="0.10"/>
-            <FRAG2 frag_size="60000"/>
-            <pbcast.STREAMING_STATE_TRANSFER/>
         </config>
       </attribute>
 
@@ -232,8 +227,8 @@
                  use_concurrent_stack="true"
 
                  thread_pool.enabled="true"
-                 thread_pool.min_threads="2"
-                 thread_pool.max_threads="8"
+                 thread_pool.min_threads="1"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
                  thread_pool.queue_enabled="true"
                  thread_pool.queue_max_size="1000"
@@ -269,7 +264,8 @@
             <FC max_credits="500000"
                     min_threshold="0.20"/>
             <FRAG2 frag_size="60000"  />
-            <pbcast.STATE_TRANSFER  />
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="20000"/>
         </config>
      </attribute>
    </mbean>

Modified: branches/Branch_Stable/src/etc/server/default/deploy/null-persistence-service.xml
===================================================================
--- branches/Branch_Stable/src/etc/server/default/deploy/null-persistence-service.xml	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/etc/server/default/deploy/null-persistence-service.xml	2008-03-20 23:15:08 UTC (rev 3901)
@@ -69,31 +69,29 @@
                  use_concurrent_stack="true" 
                  thread_pool.enabled="true"
                  thread_pool.min_threads="1"
-                 thread_pool.max_threads="25"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
-                 thread_pool.queue_enabled="false" 
-                 thread_pool.queue_max_size="100"
+                 thread_pool.queue_enabled="true" 
+                 thread_pool.queue_max_size="500"
                  thread_pool.rejection_policy="run"
                  oob_thread_pool.enabled="true"
                  oob_thread_pool.min_threads="1"
-                 oob_thread_pool.max_threads="8" 
+                 oob_thread_pool.max_threads="100" 
                  oob_thread_pool.keep_alive_time="5000"
                  oob_thread_pool.queue_enabled="false"
                  oob_thread_pool.queue_max_size="100"
                  oob_thread_pool.rejection_policy="run"/>
-            <MPING timeout="4000"
+            <MPING timeout="5000"
 		         mcast_addr="${jboss.messaging.datachanneludpaddress:228.6.6.6}"
 		         mcast_port="${jboss.messaging.datachanneludpport:45567}"
 		         ip_ttl="${jboss.messaging.ipttl:8}"
-		         num_initial_members="2"
-		         num_ping_requests="1"/>
+		         num_initial_members="5"
+		         num_ping_requests="3"/>
             <MERGE2 max_interval="100000" min_interval="20000"/>
             <FD_SOCK/>
-            <FD timeout="10000" max_tries="5" shun="true"/>
             <VERIFY_SUSPECT timeout="1500"/>
             <BARRIER/>
-            <pbcast.NAKACK 
-                           use_mcast_xmit="false" gc_lag="0"
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
                            retransmit_timeout="300,600,1200,2400,4800"
                            discard_delivered_msgs="true"/>
             <UNICAST timeout="300,600,1200,2400,3600"/>
@@ -103,9 +101,6 @@
 
             <pbcast.GMS print_local_addr="true" join_timeout="3000"
                 shun="false" view_bundling="true"/>
-            <FC max_credits="2000000" min_threshold="0.10"/>
-            <FRAG2 frag_size="60000"/>
-            <pbcast.STREAMING_STATE_TRANSFER/>
         </config>
       </attribute>
 
@@ -135,8 +130,8 @@
                  use_concurrent_stack="true"
 
                  thread_pool.enabled="true"
-                 thread_pool.min_threads="2"
-                 thread_pool.max_threads="8"
+                 thread_pool.min_threads="1"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
                  thread_pool.queue_enabled="true"
                  thread_pool.queue_max_size="1000"
@@ -172,7 +167,8 @@
             <FC max_credits="500000"
                     min_threshold="0.20"/>
             <FRAG2 frag_size="60000"  />
-            <pbcast.STATE_TRANSFER  />
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="20000"/>
         </config>
      </attribute>
    </mbean>

Modified: branches/Branch_Stable/src/etc/server/default/deploy/oracle-persistence-service.xml
===================================================================
--- branches/Branch_Stable/src/etc/server/default/deploy/oracle-persistence-service.xml	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/etc/server/default/deploy/oracle-persistence-service.xml	2008-03-20 23:15:08 UTC (rev 3901)
@@ -170,14 +170,14 @@
                  use_concurrent_stack="true" 
                  thread_pool.enabled="true"
                  thread_pool.min_threads="1"
-                 thread_pool.max_threads="25"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
-                 thread_pool.queue_enabled="false" 
-                 thread_pool.queue_max_size="100"
+                 thread_pool.queue_enabled="true" 
+                 thread_pool.queue_max_size="500"
                  thread_pool.rejection_policy="run"
                  oob_thread_pool.enabled="true"
                  oob_thread_pool.min_threads="1"
-                 oob_thread_pool.max_threads="8" 
+                 oob_thread_pool.max_threads="100" 
                  oob_thread_pool.keep_alive_time="5000"
                  oob_thread_pool.queue_enabled="false"
                  oob_thread_pool.queue_max_size="100"
@@ -190,11 +190,9 @@
 		         num_ping_requests="3"/>
             <MERGE2 max_interval="100000" min_interval="20000"/>
             <FD_SOCK/>
-            <FD timeout="10000" max_tries="5" shun="true"/>
             <VERIFY_SUSPECT timeout="1500"/>
             <BARRIER/>
-            <pbcast.NAKACK 
-                           use_mcast_xmit="false" gc_lag="0"
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
                            retransmit_timeout="300,600,1200,2400,4800"
                            discard_delivered_msgs="true"/>
             <UNICAST timeout="300,600,1200,2400,3600"/>
@@ -204,9 +202,6 @@
 
             <pbcast.GMS print_local_addr="true" join_timeout="3000"
                 shun="false" view_bundling="true"/>
-            <FC max_credits="2000000" min_threshold="0.10"/>
-            <FRAG2 frag_size="60000"/>
-            <pbcast.STREAMING_STATE_TRANSFER/>
         </config>
       </attribute>
 
@@ -236,8 +231,8 @@
                  use_concurrent_stack="true"
 
                  thread_pool.enabled="true"
-                 thread_pool.min_threads="2"
-                 thread_pool.max_threads="8"
+                 thread_pool.min_threads="1"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
                  thread_pool.queue_enabled="true"
                  thread_pool.queue_max_size="1000"
@@ -273,7 +268,8 @@
             <FC max_credits="500000"
                     min_threshold="0.20"/>
             <FRAG2 frag_size="60000"  />
-            <pbcast.STATE_TRANSFER  />
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="20000"/>
         </config>
      </attribute>
    </mbean>

Modified: branches/Branch_Stable/src/etc/server/default/deploy/postgresql-persistence-service.xml
===================================================================
--- branches/Branch_Stable/src/etc/server/default/deploy/postgresql-persistence-service.xml	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/etc/server/default/deploy/postgresql-persistence-service.xml	2008-03-20 23:15:08 UTC (rev 3901)
@@ -177,14 +177,14 @@
                  use_concurrent_stack="true" 
                  thread_pool.enabled="true"
                  thread_pool.min_threads="1"
-                 thread_pool.max_threads="25"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
-                 thread_pool.queue_enabled="false" 
-                 thread_pool.queue_max_size="100"
+                 thread_pool.queue_enabled="true" 
+                 thread_pool.queue_max_size="500"
                  thread_pool.rejection_policy="run"
                  oob_thread_pool.enabled="true"
                  oob_thread_pool.min_threads="1"
-                 oob_thread_pool.max_threads="8" 
+                 oob_thread_pool.max_threads="100" 
                  oob_thread_pool.keep_alive_time="5000"
                  oob_thread_pool.queue_enabled="false"
                  oob_thread_pool.queue_max_size="100"
@@ -197,11 +197,9 @@
 		         num_ping_requests="3"/>
             <MERGE2 max_interval="100000" min_interval="20000"/>
             <FD_SOCK/>
-            <FD timeout="10000" max_tries="5" shun="true"/>
             <VERIFY_SUSPECT timeout="1500"/>
             <BARRIER/>
-            <pbcast.NAKACK 
-                           use_mcast_xmit="false" gc_lag="0"
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
                            retransmit_timeout="300,600,1200,2400,4800"
                            discard_delivered_msgs="true"/>
             <UNICAST timeout="300,600,1200,2400,3600"/>
@@ -211,9 +209,6 @@
 
             <pbcast.GMS print_local_addr="true" join_timeout="3000"
                 shun="false" view_bundling="true"/>
-            <FC max_credits="2000000" min_threshold="0.10"/>
-            <FRAG2 frag_size="60000"/>
-            <pbcast.STREAMING_STATE_TRANSFER/>
         </config>
       </attribute>
 
@@ -243,8 +238,8 @@
                  use_concurrent_stack="true"
 
                  thread_pool.enabled="true"
-                 thread_pool.min_threads="2"
-                 thread_pool.max_threads="8"
+                 thread_pool.min_threads="1"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
                  thread_pool.queue_enabled="true"
                  thread_pool.queue_max_size="1000"
@@ -280,7 +275,8 @@
             <FC max_credits="500000"
                     min_threshold="0.20"/>
             <FRAG2 frag_size="60000"  />
-            <pbcast.STATE_TRANSFER  />
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="20000"/>
         </config>
      </attribute>
    </mbean>

Modified: branches/Branch_Stable/src/etc/server/default/deploy/sybase-persistence-service.xml
===================================================================
--- branches/Branch_Stable/src/etc/server/default/deploy/sybase-persistence-service.xml	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/etc/server/default/deploy/sybase-persistence-service.xml	2008-03-20 23:15:08 UTC (rev 3901)
@@ -171,14 +171,14 @@
                  use_concurrent_stack="true" 
                  thread_pool.enabled="true"
                  thread_pool.min_threads="1"
-                 thread_pool.max_threads="25"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
-                 thread_pool.queue_enabled="false" 
-                 thread_pool.queue_max_size="100"
+                 thread_pool.queue_enabled="true" 
+                 thread_pool.queue_max_size="500"
                  thread_pool.rejection_policy="run"
                  oob_thread_pool.enabled="true"
                  oob_thread_pool.min_threads="1"
-                 oob_thread_pool.max_threads="8" 
+                 oob_thread_pool.max_threads="100" 
                  oob_thread_pool.keep_alive_time="5000"
                  oob_thread_pool.queue_enabled="false"
                  oob_thread_pool.queue_max_size="100"
@@ -191,11 +191,9 @@
 		         num_ping_requests="3"/>
             <MERGE2 max_interval="100000" min_interval="20000"/>
             <FD_SOCK/>
-            <FD timeout="10000" max_tries="5" shun="true"/>
             <VERIFY_SUSPECT timeout="1500"/>
             <BARRIER/>
-            <pbcast.NAKACK 
-                           use_mcast_xmit="false" gc_lag="0"
+            <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
                            retransmit_timeout="300,600,1200,2400,4800"
                            discard_delivered_msgs="true"/>
             <UNICAST timeout="300,600,1200,2400,3600"/>
@@ -205,9 +203,6 @@
 
             <pbcast.GMS print_local_addr="true" join_timeout="3000"
                 shun="false" view_bundling="true"/>
-            <FC max_credits="2000000" min_threshold="0.10"/>
-            <FRAG2 frag_size="60000"/>
-            <pbcast.STREAMING_STATE_TRANSFER/>
         </config>
       </attribute>
 
@@ -237,8 +232,8 @@
                  use_concurrent_stack="true"
 
                  thread_pool.enabled="true"
-                 thread_pool.min_threads="2"
-                 thread_pool.max_threads="8"
+                 thread_pool.min_threads="1"
+                 thread_pool.max_threads="200"
                  thread_pool.keep_alive_time="5000"
                  thread_pool.queue_enabled="true"
                  thread_pool.queue_max_size="1000"
@@ -274,7 +269,8 @@
             <FC max_credits="500000"
                     min_threshold="0.20"/>
             <FRAG2 frag_size="60000"  />
-            <pbcast.STATE_TRANSFER  />
+            <pbcast.STATE_TRANSFER/>
+            <pbcast.FLUSH timeout="20000"/>
         </config>
      </attribute>
    </mbean>

Modified: branches/Branch_Stable/src/main/org/jboss/jms/server/endpoint/ServerSessionEndpoint.java
===================================================================
--- branches/Branch_Stable/src/main/org/jboss/jms/server/endpoint/ServerSessionEndpoint.java	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/main/org/jboss/jms/server/endpoint/ServerSessionEndpoint.java	2008-03-20 23:15:08 UTC (rev 3901)
@@ -1031,7 +1031,7 @@
 	   			{
 	   				if (!delivered)
 	   				{
-	   				   log.trace("Cancelling delivery, as it came out of order");
+	   				   log.debug("Cancelling delivery, as it came out of order");
    	   				// Response has come back out of order - this can happen when the failover node is being changed
 	   					// E.g. failover node changes, replicates start getting sent to the new failover node,
 	   					// then the new node requests to collect the deliveries from this node, at which point we deliver

Modified: branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/ChannelSupport.java
===================================================================
--- branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/ChannelSupport.java	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/ChannelSupport.java	2008-03-20 23:15:08 UTC (rev 3901)
@@ -387,7 +387,7 @@
       {
          if (deliveringCount.get() > 0)
          {
-            throw new IllegalStateException("Cannot remove references while deliveries are in progress, there are " +
+            throw new IllegalStateException("Cannot remove references while deliveries are in progress (Channel " + channelID +"), there are " +
             		                           deliveringCount.get());
          }
 

Modified: branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/postoffice/GroupMember.java
===================================================================
--- branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/postoffice/GroupMember.java	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/postoffice/GroupMember.java	2008-03-20 23:15:08 UTC (rev 3901)
@@ -37,6 +37,7 @@
 import org.jboss.messaging.core.contract.ChannelFactory;
 import org.jgroups.Address;
 import org.jgroups.Channel;
+import org.jgroups.JChannel;
 import org.jgroups.MembershipListener;
 import org.jgroups.MergeView;
 import org.jgroups.Message;
@@ -144,7 +145,12 @@
       starting = true;
          
       controlChannel.connect(groupName + CONTROL_SUFFIX);
-         
+      
+      if (!((JChannel)controlChannel).flushSupported())
+      {
+         throw new IllegalStateException("Flush is not supported on the UDP Channel, please check your JGroups UDP stack as Flush is required");
+      }
+      
       //The first thing that happens after connect is a view change arrives
       //Then the state will arrive (if we are not the first member)
       //Then the control messages will start arriving.
@@ -160,9 +166,16 @@
          //Can now start accepting messages
          
          ready.set(true);
+
+         if (latch == null)
+         {
+            throw new IllegalStateException("Check your JGroups stack... You probably don't have pbs.flush in your stack what might cause problems on JBoss Messaging");
+         }
+         else
+         {
+            latch.countDown();
+         }
          
-         latch.countDown();
-         
          starting = false;
          
          log.debug("We are the first member of the group so no need to wait for state");

Modified: branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/postoffice/MessagingPostOffice.java
===================================================================
--- branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/postoffice/MessagingPostOffice.java	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/postoffice/MessagingPostOffice.java	2008-03-20 23:15:08 UTC (rev 3901)
@@ -82,7 +82,6 @@
 
 import EDU.oswego.cs.dl.util.concurrent.ConcurrentHashMap;
 import EDU.oswego.cs.dl.util.concurrent.LinkedQueue;
-import EDU.oswego.cs.dl.util.concurrent.QueuedExecutor;
 import EDU.oswego.cs.dl.util.concurrent.ReadWriteLock;
 import EDU.oswego.cs.dl.util.concurrent.ReentrantWriterPreferenceReadWriteLock;
 
@@ -216,11 +215,6 @@
    //use it
    private ServerPeer serverPeer;
    
-   //Note this MUST be a queued executor to ensure replicate repsonses arrive back in order
-   private QueuedExecutor replyExecutor;
-   
-   private QueuedExecutor replicateResponseExecutor;
-   
    private volatile int failoverNodeID = -1;
    
    private volatile boolean firstNode;
@@ -1247,24 +1241,10 @@
    		if (trace) { log.trace("Sending back response"); }
 	   	
 	   	final ClusterRequest request = new ReplicateDeliveryAckMessage(sessionID, deliveryID);
-	   		   		   	
-	   	//need to execute this on another thread
+
 	   	
-	   	replyExecutor.execute(
-		   	new Runnable()
-		   	{
-		   		public void run()
-		   		{
-		   			try
-		   			{
-		   				groupMember.unicastData(request, replyAddress);
-		   			}
-		   			catch (Exception e)
-		   			{
-		   				log.error("Failed to cast message", e);
-		   			}
-		   		}
-		   	});	   		   	   
+	   	
+			groupMember.unicastData(request, replyAddress);
    	}
    } 
 
@@ -1284,7 +1264,37 @@
    	{
 	   	//Needs to be executed on a different thread
 	  
-	   	replyExecutor.execute(new SendReplicatedDeliveriesRunnable(queueName, returnAddress));
+         if (serverPeer != null)
+         {        
+            Collection sessions = serverPeer.getSessions();
+            
+            Iterator iter = sessions.iterator();
+            
+            Map dels = new HashMap();        
+            
+            boolean gotSome = false;
+            
+            while (iter.hasNext())
+            {
+               ServerSessionEndpoint session = (ServerSessionEndpoint)iter.next();
+               
+               session.deliverAnyWaitingDeliveries(queueName);
+               
+               if (session.collectDeliveries(dels, firstNode, queueName))
+               {
+                  gotSome = true;
+               }                 
+            }                
+            
+            if (gotSome)
+            {
+               ClusterRequest req = new AddAllReplicatedDeliveriesMessage(thisNodeID, dels);
+               
+               groupMember.unicastData(req, returnAddress);
+            }
+                        
+         }
+	   	
    	}
    }          
    
@@ -1323,24 +1333,7 @@
    		return;
    	}   	   	
    	
-      //Execute on a different thread to avoid taking up JGroups thread for too long
-      //which can cause heartbeats to be missed and the member to be suspected
-      
-      replicateResponseExecutor.execute(
-            new Runnable()
-            {
-               public void run()
-               {
-                  try
-                  {
-                     session.replicateDeliveryResponseReceived(deliveryID);
-                  }
-                  catch (Exception e)
-                  {
-                     log.error("Failed to process response", e);
-                  }
-               }
-            });
+      session.replicateDeliveryResponseReceived(deliveryID);
    }
    
    public void handleAckAllReplicatedDeliveries(int nodeID) throws Exception
@@ -1627,10 +1620,6 @@
          leftSet = new ConcurrentHashSet();
       }
       
-      //NOTE, MUST be a QueuedExecutor so we ensure that responses arrive back in order
-      replyExecutor = new QueuedExecutor(new LinkedQueue());
-      
-      replicateResponseExecutor = new QueuedExecutor(new LinkedQueue());
    }
    
    private void deInit()
@@ -1652,9 +1641,6 @@
          leftSet = null;
       }
    	
-   	replyExecutor.shutdownNow();   
-      
-      replicateResponseExecutor.shutdownNow();
    }
    
    private void requestDeliveries(Queue queue) throws Exception
@@ -3067,61 +3053,6 @@
 
    // Inner classes --------------------------------------------------------------------------------
    
-   private class SendReplicatedDeliveriesRunnable implements Runnable
-   {
-   	private String queueName;
-   	
-   	private Address address;
-   	
-   	SendReplicatedDeliveriesRunnable(String queueName, Address address)
-   	{
-   		this.queueName = queueName;
-   		
-   		this.address = address;
-   	}
-   	
-   	public void run()
-   	{
-			try
-			{
-      		if (serverPeer != null)
-      		{			
-      			Collection sessions = serverPeer.getSessions();
-      			
-      			Iterator iter = sessions.iterator();
-      			
-      			Map dels = new HashMap();			
-      			
-      			boolean gotSome = false;
-      			
-      			while (iter.hasNext())
-      			{
-      				ServerSessionEndpoint session = (ServerSessionEndpoint)iter.next();
-      				
-      				session.deliverAnyWaitingDeliveries(queueName);
-      				
-      				if (session.collectDeliveries(dels, firstNode, queueName))
-      				{
-      					gotSome = true;
-      				}      				
-      			}   				  
-      			
-      			if (gotSome)
-      			{
-   	   			ClusterRequest req = new AddAllReplicatedDeliveriesMessage(thisNodeID, dels);
-   	   			
-   	   			groupMember.unicastData(req, address);
-      			}
-      			   			
-      		}
-			}
-			catch (Exception e)
-			{
-				log.error("Failed to collect and send request", e);
-			}
-   	}	
-   }
-   
    private class CastMessageCallback implements TxCallback
    {
    	private Integer nodeID;

Modified: branches/Branch_Stable/tests/build.xml
===================================================================
--- branches/Branch_Stable/tests/build.xml	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/tests/build.xml	2008-03-20 23:15:08 UTC (rev 3901)
@@ -113,7 +113,7 @@
    <property name="junit.fork" value="true"/>
    <property name="junit.includeantruntime" value="true"/>
    <property name="junit.timeout" value="5400000"/>             <!-- 90 mins -->
-   <property name="clustering.junit.timeout" value="9000000"/> <!-- 150 mins -->
+   <property name="clustering.junit.timeout" value="18000000"/> <!-- 150 mins -->
    <property name="clustering.stress.junit.timeout" value="5400000"/> <!-- 90 mins -->
    <property name="stress.junit.timeout" value="5400000"/>      <!-- 90 mins -->
    <property name="bridge.junit.timeout" value="5400000"/>     <!-- 90 mins -->

Modified: branches/Branch_Stable/tests/src/org/jboss/test/messaging/jms/clustering/DistributedTopicTest.java
===================================================================
--- branches/Branch_Stable/tests/src/org/jboss/test/messaging/jms/clustering/DistributedTopicTest.java	2008-03-20 22:40:21 UTC (rev 3900)
+++ branches/Branch_Stable/tests/src/org/jboss/test/messaging/jms/clustering/DistributedTopicTest.java	2008-03-20 23:15:08 UTC (rev 3901)
@@ -250,7 +250,6 @@
       }
    }
 
-
    // http://jira.jboss.org/jira/browse/JBMESSAGING-1216
    public void testDestinationTypeOnMessage() throws Exception
    {
@@ -261,6 +260,8 @@
       Session session0 = null;
       Session session1 = null;
       Session session2 = null;
+      
+      Session sessionProducer = null;
 
       try
       {
@@ -275,13 +276,16 @@
 
          session0 = connection0.createSession(true,
                Session.AUTO_ACKNOWLEDGE);
+         
+         sessionProducer = connection0.createSession(true, Session.AUTO_ACKNOWLEDGE);
 
          MessageConsumer subscriber0 = session0.createDurableSubscriber(
                topic[0], "sub");
-         TestListener messageListener0 = new TestListener();
+         TestListener messageListener0 = new TestListener(0);
          subscriber0.setMessageListener(messageListener0);
 
-         MessageProducer publisher = session0.createProducer(topic[0]);
+         MessageProducer publisher = sessionProducer.createProducer(topic[0]);
+         publisher.setDeliveryMode(DeliveryMode.PERSISTENT);
 
          session1 = connection1.createSession(true,
                Session.AUTO_ACKNOWLEDGE);
@@ -290,12 +294,12 @@
                topic[0], "sub2");
 
 
-         TestListener messageListener1 = new TestListener();
+         TestListener messageListener1 = new TestListener(1);
          subscriber1.setMessageListener(messageListener1);
 
          session2 = connection2.createSession(true, Session.AUTO_ACKNOWLEDGE);
          MessageConsumer subscriber2 = session2.createDurableSubscriber(topic[0], "sub3");
-         TestListener messageListener2 = new TestListener();
+         TestListener messageListener2 = new TestListener(2);
          subscriber2.setMessageListener(messageListener2);
 
 
@@ -305,8 +309,10 @@
 
 
          TextMessage message = session0.createTextMessage("Hello!");
+         log.info("Sending message");
          publisher.send(message);
-         session0.commit();
+         log.info("message sent " + message);
+         sessionProducer.commit();
 
          Message m0 = messageListener0.waitForMessage();
 
@@ -319,7 +325,7 @@
 
          Message m1 = messageListener1.waitForMessage();
          message = (TextMessage) m1;
-         Destination d1 = m1.getJMSDestination();
+
          assertTrue(m1.getJMSDestination() instanceof Topic);
          topicDest = (Topic)m1.getJMSDestination();
          log.info("******** topicName = " + topicDest.getTopicName());
@@ -333,7 +339,8 @@
          Destination d2 = m2.getJMSDestination();
          assertTrue(d2 instanceof Topic);
          assertEquals(topic[0].getTopicName(),((Topic)d2).getTopicName());
-
+         
+         log.info("Going to commit 0");
          session0.commit();
          session1.commit();
          session2.commit();
@@ -341,6 +348,10 @@
          subscriber0.close();
          subscriber1.close();
          subscriber2.close();
+         
+         assertEquals(1, messageListener0.received);
+         assertEquals(1, messageListener1.received);
+         assertEquals(1, messageListener2.received);
 
          session0.unsubscribe("sub");
          session1.unsubscribe("sub2");
@@ -1799,20 +1810,27 @@
       // Static --------------------------------------------------------
 
       // Attributes ----------------------------------------------------
+      
+      int received;
 
       private Message message;
+      
+      private int id;
 
       // Constructors --------------------------------------------------
 
-      public TestListener()
+      public TestListener(int id)
       {
+         this.id=id;
       }
 
       // MessageListener implementation --------------------------------
 
       public synchronized void onMessage(Message message)
       {
+         log.info("TestListener ID(" + id + ") Received message " + message);
          this.message = message;
+         received ++;
          notifyAll();
       }
 




More information about the jboss-cvs-commits mailing list