Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed non-merge bug with TCPGOSSIP. Was fixed a long time ago in mast…

…er, no need to forward-port
  • Loading branch information...
commit 02f83c762ab2af0215ba1b12cd48b5b323409942 1 parent 35ee58d
@belaban authored
View
2  build.xml
@@ -6,7 +6,7 @@
build.xml file for JGroups. Needs Ant (jakarta.apache.org) to run
</description>
- <property name="version" value="2.12.3.Final"/>
+ <property name="version" value="2.12.4.Final"/>
<property name="build.properties.file" value="build.properties"/>
<property file="${build.properties.file}"/>
<property name="root.dir" value="${basedir}"/>
View
2  conf/manifest.mf
@@ -1,4 +1,4 @@
Manifest-Version: 1.0
Created-By: Apache Ant 1.6.5
Main-Class: org.jgroups.Version
-Implementation-Version: 2.12.3.Final
+Implementation-Version: 2.12.4.Final
View
84 conf/tcpgossip.xml
@@ -1,56 +1,56 @@
- <!--
- ************ JGroups Protocol Stack Configuration **************
- -->
- <!-- generated by XmlConfigurator on Mon Apr 26 11:26:18 PDT 2004 -->
- <!-- input file: tcpgossip.old.xml -->
-
<config xmlns="urn:org:jgroups" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema/JGroups-2.12.xsd">
- <TCP bind_port="7800" loopback="true"
- recv_buf_size="${tcp.recv_buf_size:20M}"
- send_buf_size="${tcp.send_buf_size:640K}"
- discard_incompatible_packets="true"
- max_bundle_size="64K"
- max_bundle_timeout="30"
- enable_bundling="true"
- use_send_queues="true"
- sock_conn_timeout="300"
+ <TCP bind_port="7800"
+ loopback="true"
+ recv_buf_size="${tcp.recv_buf_size:20M}"
+ send_buf_size="${tcp.send_buf_size:640K}"
+ discard_incompatible_packets="true"
+ max_bundle_size="64K"
+ max_bundle_timeout="30"
+ enable_bundling="true"
+ use_send_queues="true"
+ sock_conn_timeout="500"
- timer_type="new"
- timer.min_threads="4"
- timer.max_threads="10"
- timer.keep_alive_time="3000"
- timer.queue_max_size="500"
+ timer_type="new"
+ timer.min_threads="4"
+ timer.max_threads="10"
+ timer.keep_alive_time="3000"
+ timer.queue_max_size="500"
- thread_pool.enabled="true"
- thread_pool.min_threads="1"
- thread_pool.max_threads="10"
- thread_pool.keep_alive_time="5000"
- thread_pool.queue_enabled="false"
- thread_pool.queue_max_size="100"
- thread_pool.rejection_policy="discard"
+ thread_pool.enabled="true"
+ thread_pool.min_threads="2"
+ thread_pool.max_threads="8"
+ thread_pool.keep_alive_time="5000"
+ thread_pool.queue_enabled="true"
+ thread_pool.queue_max_size="10000"
+ thread_pool.rejection_policy="discard"
- oob_thread_pool.enabled="true"
- oob_thread_pool.min_threads="1"
- oob_thread_pool.max_threads="8"
- 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="discard" />
+ oob_thread_pool.enabled="true"
+ oob_thread_pool.min_threads="1"
+ oob_thread_pool.max_threads="8"
+ 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="discard" />
<TCPGOSSIP timeout="3000"
initial_hosts="${jgroups.tunnel.gossip_router_hosts:localhost[12001]}"
num_initial_members="3" />
- <MERGE2 max_interval="30000" min_interval="10000" />
- <FD timeout="2000" max_tries="4" />
- <VERIFY_SUSPECT timeout="1500" />
- <pbcast.NAKACK use_mcast_xmit="false" gc_lag="100"
- retransmit_timeout="600,1200,2400,4800" />
+ <MERGE2 max_interval="100000" min_interval="20000" />
+ <FD_SOCK/>
+ <FD timeout="10000" max_tries="6" />
+ <VERIFY_SUSPECT timeout="4500" />
+ <pbcast.NAKACK use_mcast_xmit="false" gc_lag="0"
+ retransmit_timeout="600,1200,2400,4800"
+ discard_delivered_msgs="true"/>
<UNICAST timeout="300,600,1200" />
- <pbcast.STABLE stability_delay="1000" desired_avg_gossip="20000"
- max_bytes="4m" />
- <pbcast.GMS print_local_addr="true" join_timeout="5000" />
+ <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
+ max_bytes="400K" />
+ <pbcast.GMS print_local_addr="true"
+ join_timeout="3000"
+ leave_timeout="3000"
+ view_bundling="true"/>
<UFC max_credits="2M"
min_threshold="0.4"/>
<MFC max_credits="2M"
View
2  pom.xml
@@ -5,7 +5,7 @@
<artifactId>jgroups</artifactId>
<packaging>bundle</packaging>
<name>JGroups</name>
- <version>2.12.3.Final</version>
+ <version>2.12.4.Final</version>
<url>http://www.jgroups.org</url>
<description>
Reliable cluster communication toolkit
View
4 src/org/jgroups/Version.java
@@ -21,8 +21,8 @@
public class Version {
public static final short major = 2;
public static final short minor = 12;
- public static final short micro = 3;
- public static final String description="2.12.3.Final";
+ public static final short micro = 4;
+ public static final String description="2.12.4.Final";
public static final short version=encode(major, minor, micro);
public static final String string_version=print(version);
View
15 src/org/jgroups/protocols/TCPGOSSIP.java
@@ -1,21 +1,20 @@
package org.jgroups.protocols;
-import java.net.InetSocketAddress;
-import java.util.*;
-import java.util.concurrent.CopyOnWriteArrayList;
-
import org.jgroups.*;
import org.jgroups.annotations.DeprecatedProperty;
import org.jgroups.annotations.ManagedOperation;
import org.jgroups.annotations.Property;
import org.jgroups.conf.PropertyConverters;
-import org.jgroups.stack.RouterStubManager;
import org.jgroups.stack.RouterStub;
+import org.jgroups.stack.RouterStubManager;
import org.jgroups.util.Promise;
import org.jgroups.util.Tuple;
import org.jgroups.util.UUID;
+import java.net.InetSocketAddress;
+import java.util.*;
+import java.util.concurrent.CopyOnWriteArrayList;
/**
* The TCPGOSSIP protocol layer retrieves the initial membership (used by the
@@ -170,7 +169,9 @@ public void sendGetMembersRequest(String cluster_name, Promise promise, ViewId v
log.trace("consolidated mbrs from GossipRouter(s) are " + initial_mbrs);
PhysicalAddress physical_addr=(PhysicalAddress)down_prot.down(new Event(Event.GET_PHYSICAL_ADDRESS, local_addr));
- PingData data=new PingData(local_addr, null, false, UUID.get(local_addr), Arrays.asList(physical_addr));
+ PingData data=null;
+ if(view_id == null)
+ data=new PingData(local_addr, null, false, UUID.get(local_addr), Arrays.asList(physical_addr));
for (Address mbr_addr : initial_mbrs) {
Message msg = new Message(mbr_addr);
@@ -179,7 +180,7 @@ public void sendGetMembersRequest(String cluster_name, Promise promise, ViewId v
hdr.view_id=view_id;
msg.putHeader(this.id, hdr);
if (log.isTraceEnabled())
- log.trace("[FIND_INITIAL_MBRS] sending GET_MBRS_REQ request to " + mbr_addr);
+ log.trace("[FIND_INITIAL_MBRS] sending GET_MBRS_REQ request to " + mbr_addr);
down_prot.down(new Event(Event.MSG, msg));
}
}
Please sign in to comment.
Something went wrong with that request. Please try again.