[ https://issues.apache.org/jira/browse/PROTON-2108?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16937516#comment-16937516 ]
Robbie Gemmell commented on PROTON-2108: ---------------------------------------- I think what you describe would be a reasonable behaviour and what it should have said (explicitly), but I don't think that is what it says/allows given the continuing outline that not setting outcomes means the default outcome applies to all transfers, and what is true if that is also not set. Prior discussions on this from the authors conveyed the same understanding I'm holding of the text, but that's how I would read it myself, though to be clear I do think its ridiculous. On the way implementations treating things, I think its true that most folks have just largely ignored this entire area of the spec entirely since its annoying, and I've been guilty of that myself. It only takes one bit to implement what it says to cause problems, and as https://github.com/apache/activemq-artemis/pull/2847 shows someone else has actually done so, and had it not been caught in review it would likely later be causing problems. The simple way to avoid that ever causing problems is for clients to advertise what they support using the mechanism that exists to do that. I am as you thought just proposing sending the full set since the bindings already use and handle them that way. To your last point, I agree it seems wrong, and rather silly. There is potentially possibility though that a peer could also e.g detach the link with an error rather than accept and silently swallow the messages though. That is what the spec says to do in some cases such as if a transaction coordinator doesn't support the rejected outcome at a point its use would be needed for example. > supported source outcomes not set > --------------------------------- > > Key: PROTON-2108 > URL: https://issues.apache.org/jira/browse/PROTON-2108 > Project: Qpid Proton > Issue Type: Bug > Affects Versions: proton-c-0.29.0 > Reporter: Robbie Gemmell > Priority: Critical > > From looking at some recent traces, it appears that the bindings (at least > for python, but probably others) do no set the outcomes (or default-outcome) > field on its source terminus, although they do use/support all the outcomes. > To a peer that actually inspects the outcomes to influence behaviour this > strictly means only Accepted is supported, which can lead to issues (e.g it > might accept a message then drop it, rather than release/modify/reject it, > under cases it couldn't be processed). -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org