Re: [jgroups-dev] Connection expiration timeout in UNICAST2

Bela Ban <[email protected]> Sun, 01 Apr 2012 11:34:26 +0200
Newsgroups gmane.comp.java.javagroups.devel
Message-ID <[email protected]>
Hi Pedro,

UNICAST2 closes idle connections to targets from which we haven't 
received a message in a given time frame, or to which we haven't sent a 
message in a given time frame.

If there is a message to a target for which no connection exists, a new 
connection will be established, so I don't know why this should be an 
issue in SEQUENCER.

I'm not sure I understand the problem you describe below; if there are 
still messages in the forward-table of SEQUENCER, when they are sent and 
the connection was closed, a new connection should be established.



On 3/31/12 11:57 PM, Pedro Ruivo wrote:
> Hi Bela
>
> I was running some tests when I noticed that some nodes have been
> blocked waiting for the delivery of their own messages (the messages are
> sent in total order).
>
> I looked in the code and I've discovered that the connection to the
> coordinator is getting removed due to connection expiration timeout.
> However the send table still has "forward" messages to be delivered in
> the coordinator.
>
> Did not it should check if the send table has or not messages before
> removing it?
>
> The partial log is in below. Some of the messages are big, i.e. they can
> generate up to 10 fragmentation messages.
>
> Cheers,
> Pedro Ruivo
>
> ---
> 21:34:28,621 TRACE [SEQUENCER] forwarding msg [dst:<null>, src:
> node22-44738 (1 headers), size=53296 bytes, flags=NO_FC] (seqno 6) to
> coord (node20-1449)
> 21:34:28,621 TRACE [UNICAST2] node22-44738 -->  DATA(node20-1449: #34,
> conn_id=0)
> 21:34:28,621 TRACE [UDP] sending msg to node20-1449, src=node22-44738,
> headers are SEQUENCER: FORWARD (tag=[node22-44738|6]), UNICAST2: DATA,
> seqno=34, UDP: [channel_name=infinispan-cluster]
> ...
> 21:35:10,267 TRACE [UDP] received [dst: node22-44738, src: node20-1449
> (2 headers), size=0 bytes, flags=OOB], headers are UNICAST2: STABLE,
> seqno=32, UDP: [channel_name=infinispan-cluster]
> 21:35:10,267 TRACE [UNICAST2] node22-44738<-- STABLE(node20-1449:
> 32-32, conn_id=0)
> 21:35:10,268 TRACE [UDP] sending msg to node20-1449, src=node22-44738,
> headers are SEQUENCER: FORWARD (tag=[node22-44738|5]), UNICAST2: DATA,
> seqno=33, UDP: [channel_name=infinispan-cluster]
> 21:35:10,268 TRACE [UDP] sending msg to node20-1449, src=node22-44738,
> headers are SEQUENCER: FORWARD (tag=[node22-44738|6]), UNICAST2: DATA,
> seqno=34, UDP: [channel_name=infinispan-cluster]
> ...
> 21:36:10,268 TRACE [UDP] received [dst: node22-44738, src: node20-1449
> (2 headers), size=0 bytes, flags=OOB], headers are UNICAST2: STABLE,
> seqno=32, UDP: [channel_name=infinispan-cluster]
> 21:36:10,269 TRACE [UNICAST2] node22-44738<-- STABLE(node20-1449:
> 32-32, conn_id=0)
> 21:36:10,269 TRACE [UDP] sending msg to node20-1449, src=node22-44738,
> headers are SEQUENCER: FORWARD (tag=[node22-44738|5]), UNICAST2: DATA,
> seqno=33, UDP: [channel_name=infinispan-cluster]
> 21:36:10,269 TRACE [UDP] sending msg to node20-1449, src=node22-44738,
> headers are SEQUENCER: FORWARD (tag=[node22-44738|6]), UNICAST2: DATA,
> seqno=34, UDP: [channel_name=infinispan-cluster]
> 21:36:10,269 TRACE [TP$TransferQueueBundler] sending 1 msgs (54304 bytes
> (84.85% of max_bundle_size) to 1 destination(s)
> 21:36:10,270 TRACE [UDP] received [dst: node22-44738, src: node20-1449
> (2 headers), size=0 bytes, flags=OOB], headers are UNICAST2: STABLE,
> seqno=32, UDP: [channel_name=infinispan-cluster]
> 21:36:10,270 TRACE [UNICAST2] node22-44738<-- STABLE(node20-1449:
> 32-32, conn_id=0)
> 21:36:10,270 TRACE [UDP] sending msg to node20-1449, src=node22-44738,
> headers are SEQUENCER: FORWARD (tag=[node22-44738|5]), UNICAST2: DATA,
> seqno=33, UDP: [channel_name=infinispan-cluster]
> 21:36:10,270 TRACE [UDP] sending msg to node20-1449, src=node22-44738,
> headers are SEQUENCER: FORWARD (tag=[node22-44738|6]), UNICAST2: DATA,
> seqno=34, UDP: [channel_name=infinispan-cluster]
> ...
> 21:36:17,270 TRACE [UNICAST2] node22-44738 -->  STABLE(node20-1449: 2-2,
> conn_id=2)
> 21:36:17,270 TRACE [UDP] sending msg to node20-1449, src=node22-44738,
> headers are UNICAST2: STABLE, seqno=2, conn_id=2, UDP:
> [channel_name=infinispan-cluster]
> 21:36:17,270 DEBUG [UNICAST2] node22-44738: removed expired connection
> for node20-1449 (108649 ms old) from send_table
> 21:36:17,270 TRACE [UNICAST2] node22-44738 -->  STABLE(node20-1449: 2-2,
> conn_id=2)
> 21:36:17,270 TRACE [UDP] sending msg to node20-1449, src=node22-44738,
> headers are UNICAST2: STABLE, seqno=2, conn_id=2, UDP:
> [channel_name=infinispan-cluster]
> 21:36:17,270 DEBUG [UNICAST2] node22-44738: removed expired connection
> for node20-1449 (119581 ms old) from recv_table
>
>
> ------------------------------------------------------------------------------
> This SF email is sponsosred by:
> Try Windows Azure free for 90 days Click Here
> http://p.sf.net/sfu/sfd2d-msazure
> _______________________________________________
> Javagroups-development mailing list
>
>

-- 
Bela Ban, JGroups lead (http://www.jgroups.org)

------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Javagroups-development mailing list