All stacks get the same mcast_addr
lexsoto Sep 22, 2010 1:43 PMHello,
In JBoss 5.1, I've added the following protocol stack in file "cluster/jgroups-channelfactory.sar/META-INF/jgroups-channelfactory-stacks.xml"
<stack name="blogic-udp" description="Connects to Business logic cluster"> <config> <UDP singleton_name="blogic-udp" mcast_port="${jboss.jgroups.udp.mcast_port:45688}" mcast_addr="${blogic.partition.udpGroup}" tos="8" ucast_recv_buf_size="20000000" ucast_send_buf_size="640000" mcast_recv_buf_size="25000000" mcast_send_buf_size="640000" loopback="true" discard_incompatible_packets="true" enable_bundling="false" max_bundle_size="64000" max_bundle_timeout="30" use_incoming_packet_handler="true" ip_ttl="${jgroups.udp.ip_ttl:2}" thread_naming_pattern="cl" timer.num_threads="12" enable_diagnostics="${jboss.jgroups.enable_diagnostics:true}" diagnostics_addr="${jboss.jgroups.diagnostics_addr:224.0.0.75}" diagnostics_port="${jboss.jgroups.diagnostics_port:7500}" use_concurrent_stack="true" thread_pool.enabled="true" thread_pool.min_threads="20" thread_pool.max_threads="200" thread_pool.keep_alive_time="5000" thread_pool.queue_enabled="true" thread_pool.queue_max_size="1000" thread_pool.rejection_policy="discard" oob_thread_pool.enabled="true" oob_thread_pool.min_threads="1" oob_thread_pool.max_threads="20" 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"/> <PING timeout="2000" num_initial_members="3"/> <MERGE2 max_interval="100000" min_interval="20000"/> <FD_SOCK/> <FD timeout="6000" max_tries="5" shun="true"/> <VERIFY_SUSPECT timeout="1500"/> <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"/> <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000" max_bytes="400000"/> <pbcast.GMS print_local_addr="true" join_timeout="3000" shun="true" view_bundling="true" view_ack_collection_timeout="5000"/> <FC max_credits="2000000" min_threshold="0.10" ignore_synchronous_response="true"/> <FRAG2 frag_size="60000"/> <!-- pbcast.STREAMING_STATE_TRANSFER/ --> <pbcast.STATE_TRANSFER/> <pbcast.FLUSH timeout="0"/> </config> </stack>
Basically, I just copied the "udp" configuration and changed the multicast address entry so I can control it with system properties.
mcast_addr="${blogic.partition.udpGroup}"
I want this particular protocol stack to use a different multicast address than the rest of the stacks.
My problem is that when I run JBoss with the -u parameter, all the protocol stacks get the same address, regardless of what I put in the mcast_addr attribute.
For example, running JBoss with the JVM parameter:
-Dblogic.partition.udpGroup=228.11.11.13
and
-u 228.11.11.12
Causes my new protocol stack "blogic-udp" to use 228.11.11.12 instead of 228.11.11.13.
This behavior occurs even if I hard code the IP address right in the configuration file.
Am I doing something wrong?
How can I prevent this from happening?