I have Sequoia 2.10.8 embedded in my application, using JGroups for
group communication. My application requires a newer version of
JGroups. I'm currently using 2.5.1, but Sequoia is released with 2.3.
Everything works fine when I connect to my sequoia controller with
one JDBC connection and do inserts. However, I'm seeing problems
when I connect with numerous threads simultaneously.
My test basically spawns 100 threads that each connect to Sequoia, do
10 database inserts, and disconnect. If I just use one thread, I
have no problems. I've see the problem even with 10 threads. With
the heavier load, I'll get a few messages (2 or 3) like this...
2007-10-18 15:51:13,358 [WARN] SEQUENCER message seqno
(10.172.194.249:61620::3827 has already been received (highest
received=3828); discarding duplicate message
... and some of my threads hang. In that case I never get the full
1000 rows inserted.
The same test, when running Sequoia stand-alone (which uses JGroups
2.3) works fine.
The same test, when running Sequoia stand-alone but replacing the
JGroups jar with a newer one shows the problem I described.
I know this isn't a "supported" configuration, but can anyone help?
Here is my protocol stack, in case it helps:
<config>
<UDP mcast_port="45503"
mcast_addr="228.10.1.13"
tos="${dds.jgroups.udp.tos:0}"
ucast_recv_buf_size="20000000"
ucast_send_buf_size="640000"
mcast_recv_buf_size="25000000"
mcast_send_buf_size="640000"
loopback="false"
discard_incompatible_packets="true"
max_bundle_size="64000"
max_bundle_timeout="30"
use_incoming_packet_handler="true"
ip_ttl="${jgroups.udp.ip_ttl:2}"
enable_bundling="true"
enable_diagnostics="true"
thread_naming_pattern="cl"
use_concurrent_stack="true"
thread_pool.enabled="true"
thread_pool.min_threads="1"
thread_pool.max_threads="25"
thread_pool.keep_alive_time="5000"
thread_pool.queue_enabled="false"
thread_pool.queue_max_size="100"
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.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="10000"
min_interval="5000"/>
<FD_SOCK/>
<FD timeout="10000" max_tries="5" shun="true"/>
<VERIFY_SUSPECT timeout="1500"/>
<BARRIER />
<pbcast.NAKACK max_xmit_size="60000"
use_mcast_xmit="false" gc_lag="0"
retransmit_timeout="100,200,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"/>
<VIEW_SYNC avg_send_interval="60000"/>
<pbcast.GMS print_local_addr="false" join_timeout="3000"
join_retry_timeout="2000" shun="true"
handle_concurrent_startup="true" />
<SEQUENCER/>
<FC max_credits="2000000" min_threshold="0.10"/>
<FRAG2 frag_size="60000"/>
<!-- pbcast.STATE_TRANSFER /-->
</config>
Thanks,
Chris
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia