<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ JBoss, Home of Professional Open Source.
  ~ Copyright 2011, Red Hat, Inc., and individual contributors
  ~ as indicated by the @author tags. See the copyright.txt file in the
  ~ distribution for a full listing of individual contributors.
  ~
  ~ This is free software; you can redistribute it and/or modify it
  ~ under the terms of the GNU Lesser General Public License as
  ~ published by the Free Software Foundation; either version 2.1 of
  ~ the License, or (at your option) any later version.
  ~
  ~ This software is distributed in the hope that it will be useful,
  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  ~ Lesser General Public License for more details.
  ~
  ~ You should have received a copy of the GNU Lesser General Public
  ~ License along with this software; if not, write to the Free
  ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  -->
<!-- N.B. This is *not* a usable protocol stack -->
<!-- This file supplies the internal defaults per protocol -->
<config xmlns="urn:org:jgroups">
   <UDP 
      ucast_send_buf_size="1m"
      mcast_send_buf_size="1m"
      ucast_recv_buf_size="20m"
      mcast_recv_buf_size="25m"
      ip_ttl="${jgroups.ip_ttl:2}"
      thread_naming_pattern="pl"
      enable_diagnostics="false"

      thread_pool.min_threads="${jgroups.thread_pool.min_threads:2}"
      thread_pool.max_threads="${jgroups.thread_pool.max_threads:30}"
      thread_pool.keep_alive_time="60000"
      thread_pool.queue_enabled="false"

      internal_thread_pool.min_threads="${jgroups.internal_thread_pool.min_threads:5}"
      internal_thread_pool.max_threads="${jgroups.internal_thread_pool.max_threads:20}"
      internal_thread_pool.keep_alive_time="60000"
      internal_thread_pool.queue_enabled="true"
      internal_thread_pool.queue_max_size="500"

      oob_thread_pool.min_threads="${jgroups.oob_thread_pool.min_threads:20}"
      oob_thread_pool.max_threads="${jgroups.oob_thread_pool.max_threads:200}"
      oob_thread_pool.keep_alive_time="60000"
      oob_thread_pool.queue_enabled="false"/>
   <TCP 
      enable_diagnostics="false"
      thread_naming_pattern="pl"
      send_buf_size="640k"
      sock_conn_timeout="300"

      thread_pool.min_threads="${jgroups.thread_pool.min_threads:2}"
      thread_pool.max_threads="${jgroups.thread_pool.max_threads:30}"
      thread_pool.keep_alive_time="60000"
      thread_pool.queue_enabled="false"

      internal_thread_pool.min_threads="${jgroups.internal_thread_pool.min_threads:5}"
      internal_thread_pool.max_threads="${jgroups.internal_thread_pool.max_threads:20}"
      internal_thread_pool.keep_alive_time="60000"
      internal_thread_pool.queue_enabled="true"
      internal_thread_pool.queue_max_size="500"

      oob_thread_pool.min_threads="${jgroups.oob_thread_pool.min_threads:20}"
      oob_thread_pool.max_threads="${jgroups.oob_thread_pool.max_threads:200}"
      oob_thread_pool.keep_alive_time="60000"
      oob_thread_pool.queue_enabled="false"/>
   <PING />
   <MPING 
      ip_ttl="${jgroups.udp.ip_ttl:2}"/>
   <MERGE2/>
   <MERGE3
      min_interval="10000"
      max_interval="30000"/>
   <FD_SOCK/>
   <FD timeout="6000" max_tries="5" msg_counts_as_heartbeat="false"/>
   <FD_ALL2 interval="3000" timeout="15000"/>
   <FD_ALL 
      timeout="60000" 
      interval="15000" 
      timeout_check_interval="5000"/>
   <VERIFY_SUSPECT 
      timeout="5000"/>
   <BARRIER/>
   <pbcast.NAKACK use_mcast_xmit="true"
      retransmit_timeout="300,600,1200,2400,4800"
      discard_delivered_msgs="true"/>
   <pbcast.NAKACK2 
      xmit_interval="1000"
      xmit_table_num_rows="50"
      xmit_table_msgs_per_row="1024"
      xmit_table_max_compaction_time="30000"
      max_msg_batch_size="100"
      resend_last_seqno="true"/>
   <UNICAST
      conn_expiry_timeout="0"/>
   <UNICAST2
      stable_interval="5000"
      max_bytes="1m"
      max_msg_batch_size="100"
      xmit_table_num_rows="20"
      xmit_table_msgs_per_row="10000"
      xmit_table_max_compaction_time="10000"
      conn_expiry_timeout="0"/>
   <UNICAST3 
      xmit_interval="500"
      xmit_table_num_rows="50"
      xmit_table_msgs_per_row="1024"
      xmit_table_max_compaction_time="30000"
      max_msg_batch_size="100"
      conn_expiry_timeout="0"/>
   <pbcast.STABLE 
      stability_delay="500"
      desired_avg_gossip="5000"
      max_bytes="1M"/>
   <pbcast.GMS 
      print_local_addr="false"
      join_timeout="15000"/>
   <UFC 
      max_credits="2m" 
      min_threshold="0.40"/>
   <MFC 
      max_credits="2m" 
      min_threshold="0.40"/>
   <FRAG2 />
   <RSVP timeout="60000" resend_interval="500" ack_on_delivery="false"/>
   <pbcast.STATE_TRANSFER/>
   <pbcast.FLUSH timeout="0" start_flush_timeout="10000"/>
</config>