You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Ted Ross (JIRA)" <ji...@apache.org> on 2017/03/13 13:09:41 UTC

[jira] [Updated] (DISPATCH-646) Link route tests which test the drain feature fail intermittently

     [ https://issues.apache.org/jira/browse/DISPATCH-646?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ted Ross updated DISPATCH-646:
------------------------------
    Fix Version/s: 0.8.0

> Link route tests which test the drain feature fail intermittently
> -----------------------------------------------------------------
>
>                 Key: DISPATCH-646
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-646
>             Project: Qpid Dispatch
>          Issue Type: Bug
>          Components: Container
>    Affects Versions: 0.7.0
>            Reporter: Ganesh Murthy
>            Assignee: Ted Ross
>             Fix For: 0.8.0
>
>
> There is test called test_www_drain_support_all_messages in system_tests_link_routes that fails intermittently. Here is the output of the test
> {noformat}
> [gmurthy@localhost build]$  /usr/bin/python "/home/gmurthy/opensource/dispatch/build/tests/run.py" "-m" "unittest" "-v" "system_tests_link_routes.LinkRouteTest.test_www_drain_support_all_messages"
> test_www_drain_support_all_messages (system_tests_link_routes.LinkRouteTest) ... 
> FAIL
> ======================================================================
> FAIL: test_www_drain_support_all_messages (system_tests_link_routes.LinkRouteTest)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/home/gmurthy/opensource/dispatch/tests/system_tests_link_routes.py", line 542, in test_www_drain_support_all_messages
>     self.assertEqual(None, drain_support.error)
> AssertionError: None != 'Timeout Expired: sent: 10 rcvd: 7'
> ----------------------------------------------------------------------
> Ran 1 test in 9.421s
> FAILED (failures=1)
> {noformat}
> The test uses 3 routers (routers A, B and C) with router A acting as the broker and the senders and receivers connected router C and they send/receive on link routed addresses. The messages sent to router C are link-routed to router B and go on to router A and are eventually link routed back to router B and finally to a receiver attached to router C.
> The sender sends 10 messages and the receiver initially issues a flow of 4 followed by a drain of 20. This means that the remaining 6 messages must come thru to the receiver. The problem in that in router B, the 6 transfers from router A to router B are followed by a response flow frame (drain=true). In router B, this flow frame sometimes  gets ahead of the transfers and shuts down the remaining transfers.
> The following frame trace shows the flow frame coming in from router C and being sent to router A which followed by 6 transfer frames and a response flow frame arriving from router A. Note now that the router B forwards 3 of the 6 transfers to router C and tries sending the response flow frame before the remaining 3 transfers. Because of this the receiver is not seeing all 10 messages.
> {noformat}
> Fri Mar  3 13:49:11 2017 SERVER (trace) [3]:4 <- @flow(19) [next-incoming-id=4, incoming-window=2147483647, next-outgoing-id=0, outgoing-window=2147483647, handle=0, delivery-count=4, link-credit=20, drain=true] (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 ROUTER_CORE (trace) Core action 'link_flow' (/home/gmurthy/opensource/dispatch/src/router_core/router_core_thread.c:82)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [2]:0 -> @flow(19) [next-incoming-id=4, incoming-window=2147483647, next-outgoing-id=0, outgoing-window=2147483647, handle=0, delivery-count=4, link-credit=20, drain=true] (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [2]:0 <- @transfer(20) [handle=0, delivery-id=4, delivery-tag=b"\x04\x00\x00\x00\x00\x00\x00\x00", message-format=0, settled=true, more=false] (96) "\x00Sp\xd0\x00\x00\x00\x0b\x00\x00\x00\x05BP\x04@BR\x00\x00Ss\xd0\x00\x00\x00"\x00\x00\x00\x0d@@@@@@@@\x83\x00\x00\x00\x00\x00\x00\x00\x00\x83\x00\x00\x00\x00\x00\x00\x00\x00@R\x00@\x00St\xd1\x00\x00\x00\x0b\x00\x00\x00\x02\xa0\x03seqT\x04\x00Sw\xa0\x0bHello World" (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [2]:0 <- @transfer(20) [handle=0, delivery-id=5, delivery-tag=b"\x05\x00\x00\x00\x00\x00\x00\x00", message-format=0, settled=true, more=false] (96) "\x00Sp\xd0\x00\x00\x00\x0b\x00\x00\x00\x05BP\x04@BR\x00\x00Ss\xd0\x00\x00\x00"\x00\x00\x00\x0d@@@@@@@@\x83\x00\x00\x00\x00\x00\x00\x00\x00\x83\x00\x00\x00\x00\x00\x00\x00\x00@R\x00@\x00St\xd1\x00\x00\x00\x0b\x00\x00\x00\x02\xa0\x03seqT\x05\x00Sw\xa0\x0bHello World" (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [2]:0 <- @transfer(20) [handle=0, delivery-id=6, delivery-tag=b"\x06\x00\x00\x00\x00\x00\x00\x00", message-format=0, settled=true, more=false] (96) "\x00Sp\xd0\x00\x00\x00\x0b\x00\x00\x00\x05BP\x04@BR\x00\x00Ss\xd0\x00\x00\x00"\x00\x00\x00\x0d@@@@@@@@\x83\x00\x00\x00\x00\x00\x00\x00\x00\x83\x00\x00\x00\x00\x00\x00\x00\x00@R\x00@\x00St\xd1\x00\x00\x00\x0b\x00\x00\x00\x02\xa0\x03seqT\x06\x00Sw\xa0\x0bHello World" (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [2]:0 <- @transfer(20) [handle=0, delivery-id=7, delivery-tag=b"\x07\x00\x00\x00\x00\x00\x00\x00", message-format=0, settled=true, more=false] (96) "\x00Sp\xd0\x00\x00\x00\x0b\x00\x00\x00\x05BP\x04@BR\x00\x00Ss\xd0\x00\x00\x00"\x00\x00\x00\x0d@@@@@@@@\x83\x00\x00\x00\x00\x00\x00\x00\x00\x83\x00\x00\x00\x00\x00\x00\x00\x00@R\x00@\x00St\xd1\x00\x00\x00\x0b\x00\x00\x00\x02\xa0\x03seqT\x07\x00Sw\xa0\x0bHello World" (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [2]:0 <- @transfer(20) [handle=0, delivery-id=8, delivery-tag=b"\x08\x00\x00\x00\x00\x00\x00\x00", message-format=0, settled=true, more=false] (96) "\x00Sp\xd0\x00\x00\x00\x0b\x00\x00\x00\x05BP\x04@BR\x00\x00Ss\xd0\x00\x00\x00"\x00\x00\x00\x0d@@@@@@@@\x83\x00\x00\x00\x00\x00\x00\x00\x00\x83\x00\x00\x00\x00\x00\x00\x00\x00@R\x00@\x00St\xd1\x00\x00\x00\x0b\x00\x00\x00\x02\xa0\x03seqT\x08\x00Sw\xa0\x0bHello World" (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [2]:0 <- @transfer(20) [handle=0, delivery-id=9, delivery-tag=b"\x09\x00\x00\x00\x00\x00\x00\x00", message-format=0, settled=true, more=false] (96) "\x00Sp\xd0\x00\x00\x00\x0b\x00\x00\x00\x05BP\x04@BR\x00\x00Ss\xd0\x00\x00\x00"\x00\x00\x00\x0d@@@@@@@@\x83\x00\x00\x00\x00\x00\x00\x00\x00\x83\x00\x00\x00\x00\x00\x00\x00\x00@R\x00@\x00St\xd1\x00\x00\x00\x0b\x00\x00\x00\x02\xa0\x03seqT\x09\x00Sw\xa0\x0bHello World" (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [2]:0 <- @flow(19) [next-incoming-id=0, incoming-window=2147483647, next-outgoing-id=10, outgoing-window=2147483647, handle=0, delivery-count=24, link-credit=0, drain=true] (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [3]:4 -> @transfer(20) [handle=0, delivery-id=4, delivery-tag=b"\x04\x00\x00\x00\x00\x00\x00\x00", message-format=0, settled=true, more=false] (96) "\x00Sp\xd0\x00\x00\x00\x0b\x00\x00\x00\x05BP\x04@BR\x00\x00Ss\xd0\x00\x00\x00"\x00\x00\x00\x0d@@@@@@@@\x83\x00\x00\x00\x00\x00\x00\x00\x00\x83\x00\x00\x00\x00\x00\x00\x00\x00@R\x00@\x00St\xd1\x00\x00\x00\x0b\x00\x00\x00\x02\xa0\x03seqT\x04\x00Sw\xa0\x0bHello World" (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [3]:4 -> @transfer(20) [handle=0, delivery-id=5, delivery-tag=b"\x05\x00\x00\x00\x00\x00\x00\x00", message-format=0, settled=true, more=false] (96) "\x00Sp\xd0\x00\x00\x00\x0b\x00\x00\x00\x05BP\x04@BR\x00\x00Ss\xd0\x00\x00\x00"\x00\x00\x00\x0d@@@@@@@@\x83\x00\x00\x00\x00\x00\x00\x00\x00\x83\x00\x00\x00\x00\x00\x00\x00\x00@R\x00@\x00St\xd1\x00\x00\x00\x0b\x00\x00\x00\x02\xa0\x03seqT\x05\x00Sw\xa0\x0bHello World" (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [3]:4 -> @transfer(20) [handle=0, delivery-id=6, delivery-tag=b"\x06\x00\x00\x00\x00\x00\x00\x00", message-format=0, settled=true, more=false] (96) "\x00Sp\xd0\x00\x00\x00\x0b\x00\x00\x00\x05BP\x04@BR\x00\x00Ss\xd0\x00\x00\x00"\x00\x00\x00\x0d@@@@@@@@\x83\x00\x00\x00\x00\x00\x00\x00\x00\x83\x00\x00\x00\x00\x00\x00\x00\x00@R\x00@\x00St\xd1\x00\x00\x00\x0b\x00\x00\x00\x02\xa0\x03seqT\x06\x00Sw\xa0\x0bHello World" (/home/gmurthy/opensource/dispatch/src/server.c:197)
> Fri Mar  3 13:49:11 2017 SERVER (trace) [3]:4 -> @flow(19) [next-incoming-id=0, incoming-window=2147483647, next-outgoing-id=7, outgoing-window=2147483647, handle=0, delivery-count=24, link-credit=0, drain=true] (/home/gmurthy/opensource/dispatch/src/server.c:197)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org