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

Gordon Sim commented on PROTON-2108:
------------------------------------

I don't think 'The values in this field are the symbolic descriptors of the 
outcomes that can be chosen on this link.' implies 'No outcomes set, means no 
outcomes are specified as choosable on this link.'. If the peer hasn't told 
them which outcomes are acceptable that does not mean that none are, it just 
means the peer did not provide that information.

To me a reasonable assumption is that if the peer hasn't limited the set of 
valid outcomes (and I can't come up with any good *practical* reason why it 
would), any of the outcomes are valid. That appears to be how most 
implementations treat things, since this issue has not caused any problem I 
have seen in the many, many years since the spec was published.

However, if what you are proposing is just hardcoding proton to always send the 
full set of outcomes, then while I think it is redundant and adds noise and 
bloat to an already bloated protocol, I would not object (I would just shudder 
slightly and force myself not to think about it!) and would presumably be 
simple.

(The spec also says 'At the target, the accepted outcome is used to indicate 
that an incoming message has been successfully processed', which I think is 
also intuitively what almost everyone would assume. Having only accepted as 
valid would imply every message was successfully processed which seems very 
wrong.)
  

> 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

Reply via email to