You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bookkeeper.apache.org by "Ivan Kelly (JIRA)" <ji...@apache.org> on 2012/12/12 11:59:22 UTC
[jira] [Updated] (BOOKKEEPER-37) Ordering of published messages is
not preserved when doing asynchronous publication
[ https://issues.apache.org/jira/browse/BOOKKEEPER-37?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ivan Kelly updated BOOKKEEPER-37:
---------------------------------
Priority: Blocker (was: Major)
> Ordering of published messages is not preserved when doing asynchronous publication
> -----------------------------------------------------------------------------------
>
> Key: BOOKKEEPER-37
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-37
> Project: Bookkeeper
> Issue Type: Bug
> Components: hedwig-client
> Affects Versions: 4.0.0
> Reporter: Matthieu Morel
> Assignee: Matthieu Morel
> Priority: Blocker
> Fix For: 4.3.0
>
> Attachments: BOOKKEEPER-37.patch, ClientMessageOrderingTest.java
>
>
> Symptoms:
> - if a publisher sends messages asynchronously through the asyncPublish method, the ordering is not preserved in Hedwig
> Example:
> - a publisher sends M1, M2, M3 by invoking the asyncPublish method
> The Hedwig broker may see these messages in the following order: M2, M1, M3
> A subscriber will also see messages as M2, M1, M3
> How to reproduce:
> - see attached test case: synchronous publishing preserves ordering, but asynchronous publishing does not.
> The cause of the problem:
> - my understanding is that this is due to asynchronous creation of multiple netty channels on the publisher side. There is no ordering since messages are not sent through the same channel.
> Suggested solution:
> Some buffering on the publisher side would allow to reuse the same channel and maintain ordering.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira