[
https://issues.apache.org/jira/browse/FLUME-1896?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13574914#comment-13574914
]
Hari Shreedharan commented on FLUME-1896:
-----------------------------------------
The underlying blocking calls - the append and appendBatch calls in the Thrift
client, call the sendBase method in thrift which increments the seq id of the
message. If the next response received is not the same sequence id, then an
IllegalStateException is thrown. Basically after a message is sent, the
response received *must* be of the same sequence id. So we need to make our
methods synchronized/locked to make sure a different thread does not call
append/appendBatch methods.
I think the implementation in the current patch is reasonably clean, and is a
standard implementation technique used in distributed systems.
> Implement Thrift RpcClient
> --------------------------
>
> Key: FLUME-1896
> URL: https://issues.apache.org/jira/browse/FLUME-1896
> Project: Flume
> Issue Type: Sub-task
> Reporter: Hari Shreedharan
> Assignee: Hari Shreedharan
> Attachments: FLUME-1896-1.patch, FLUME-1896-2.patch,
> FLUME-1896-3.patch, FLUME-1896-4.patch, FLUME-1896-5.patch, FLUME-1896.patch
>
>
--
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