[
https://issues.apache.org/jira/browse/BOOKKEEPER-311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13409242#comment-13409242
]
Sijie Guo commented on BOOKKEEPER-311:
--------------------------------------
for consume request:
1) the changes break backward compatibility. it changed the consume semantic.
if existed applications used consume as async callback, it broken existed
applications' assumption. one way I think we might not change consume's
semantic, adding another call which returns only when consume request is
written to the channel. this new call name might be 'syncConsume' or other
better name.
2) even we have 'syncConsume' like method to ensure netty wrote the consume
request to server. we still can't guarantee the consume request is received and
processed by hub server. so adding such 'syncConsume' could not provide any
semantic guarantee to the consume behavior.
what kind of semantic for consume request is needed by JMS provider? the
request is wrote to the channel? the request is processed by the hub sever?
> Changes in hedwig client api to support JMS spec
> ------------------------------------------------
>
> Key: BOOKKEEPER-311
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-311
> Project: Bookkeeper
> Issue Type: Sub-task
> Reporter: Mridul Muralidharan
> Attachments: hedwig-client-consume.patch.1,
> hedwig-client-publish.patch.1, hedwig-client.patch
>
>
> Primary changes are :
> a) Add support for returning seq-id for a publish request. This is an api
> change (backwardly compatible for users).
> b) Make consume a sync consume, with addition of an asyncConsume - this is to
> ensure that invoking consume() ensure request makes to server before
> returning (with what reasonable gaurantees that netty allows).
> c) Ensure that explicit close'ing of session will flush buffered consume
> seq-id's when auto-ack is enabled (default in hedwig java client).
> In addition, there are also fixes for
> d) Fix NPE's observed as part of testing JMS provider.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira