[ 
https://issues.apache.org/jira/browse/PROTON-2005?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16767297#comment-16767297
 ] 

Chuck Rolke commented on PROTON-2005:
-------------------------------------

The file attachments are:
 * selftest-printf.txt.txt - print statements in the python test code showing 
which messages were aborted or not.
 * router-print-debug.txt - verbose logging in router message.c to 1) show all 
the proton event entry and exit counter details, 
and 2) details of each call to pn_link_send. Look at line 2615, time 
0461.141453 S to see the what happened at the abort call.
 * router-scrape.html - the scraper output file of the merged routers. The 
protocol error is at time 7:41.141514. 
For convenient viewing in the Connections, Connections by ConnectionId section 
view only connection A1_4. (Deselect All, then check only that connection.

 

> [proton-c] AMQP error if delivery is aborted with session_outgoing bytes > 0
> ----------------------------------------------------------------------------
>
>                 Key: PROTON-2005
>                 URL: https://issues.apache.org/jira/browse/PROTON-2005
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: proton-c
>    Affects Versions: proton-c-0.26.0, proton-c-0.27.0
>            Reporter: Chuck Rolke
>            Priority: Critical
>         Attachments: PROTON-2005-router-print-debug.txt, 
> PROTON-2005-router-scrape.html, PROTON-2005-selftest-printf.txt.txt
>
>
> Running the test case in https://issues.apache.org/jira/browse/DISPATCH-1265
> The self test is  a two-router network with a test sender sending to router A 
> and a test receiver receiving from router B. The test sender is sending some 
> number of bytes and then aborting the delivery. In the observations here 
> router A is transmitting incorrect AMQP over the interrouter link to router B 
> in response to the abort.
>  * A 400K byte message is being transmitted. 320K bytes have already gone 
> over the wire
>  * The message is aborted. with  session_outgoing 84992
>  * Over the wire six transfers send the 84992 bytes with the same delivery-id 
> and with abort=true
> A dispatch log scraper trace of router A for the interrouter link to router B:
>  
> {{  delivery 21 is in progress}}
> {{2019-02-08 05:07:41.140975 A0#1480 A [A0_4] -> [B0_1] B transfer [0,10] 
> (21) more transfer_93 - 16346 bytes (pending)}}
> {{2019-02-08 05:07:41.141066 A0#1486 A [A0_4] -> [B0_1] B transfer [0,10] 
> (21) more transfer_99 - 16346 bytes (pending)}}
> {{2019-02-08 05:07:41.141087 A0#1488 A [A0_4] -> [B0_1] B transfer [0,10] 
> (21) more transfer_102 - 228 bytes (pending)}}
> {{2019-02-08 05:07:41.141169 A0#1492 A [A0_4] <- [B0_1] B flow [0,10] 
> (14,250)}}
> {{  delivery 21 is aborted with session_outgoing 84992}}
> {{  over the wire the session bytes are bled down with multiple transfers 
> that have both 'more' and 'aborted' set true}}
> {{2019-02-08 05:07:41.141514 A0#1513 A [A0_4] -> [B0_1] B transfer [0,10] 
> (21) settled more aborted transfer_93 - 16342 bytes transfer presettled}}
> {{2019-02-08 05:07:41.141538 A0#1514 A [A0_4] -> [B0_1] B transfer [0,10] 
> (21) settled more aborted transfer_94 - 16342 bytes transfer presettled}}
> {{2019-02-08 05:07:41.141564 A0#1517 A [A0_4] -> [B0_1] B transfer [0,10] 
> (21) settled more aborted transfer_96 - 16342 bytes transfer presettled}}
> {{2019-02-08 05:07:41.141603 A0#1521 A [A0_4] -> [B0_1] B transfer [0,10] 
> (21) settled more aborted transfer_99 - 16342 bytes transfer presettled}}
> {{2019-02-08 05:07:41.141669 A0#1527 A [A0_4] -> [B0_1] B transfer [0,10] 
> (21) settled more aborted transfer_92 - 16342 bytes transfer presettled}}
> {{2019-02-08 05:07:41.141722 A0#1531 A [A0_4] -> [B0_1] B transfer [0,10] 
> (21) settled aborted transfer_93 - 13522 bytes transfer presettled}}
> {{  delivery 22 is started}}
> {{2019-02-08 05:07:41.142542 A0#1576 A [A0_4] -> [B0_1] B transfer [0,10] 
> (22) more transfer_107 - 16346 bytes (pending)}}
> {{2019-02-08 05:07:41.142578 A0#1579 A [A0_4] -> [B0_1] B transfer [0,10] 
> (22) more transfer_108 - 16346 bytes (pending)}}
> {{2019-02-08 05:07:41.142608 A0#1581 A [A0_4] -> [B0_1] B transfer [0,10] 
> (22) more transfer_109 - 16346 bytes (pending) ...}}
> {{  eventually peer router B closes the connection}}
> {{2019-02-08 05:07:41.144746 A0#1730 A [A0_4] <- [B0_1] B close [0] error 
> :"amqp:session:invalid-field" "sequencing error, expected delivery-id 22, got 
> 21"}}
> {{2019-02-08 05:07:41.144767 A0#1732 A [A0_4] <- [B0_1] B EOS}}
> The transfer at 05:07:41.141514 settles the delivery and the next transfer is 
> an AMQP protocol violation.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to