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

Sijie Guo commented on BOOKKEEPER-55:
-------------------------------------

another case: if client closesub during reconnecting, after reconnected 
subscription channel needs to disconnected after succeed. otherwise, from the 
client side, it knew that it already closed subscription channel but actual the 
subscription channel is still established due to resubscribe. I think this 
problem already fixed in cpp client. I will try to apply same solution for java 
client to keep them consistent. 

I will fix this bug after BOOKKEEPER-453 which extract commonality from simple 
and multiplex. I would finish them in these few days.
                
> SubscribeReconnectRetryTask might retry subscription endlessly when another 
> subscription is already successfully created previously
> -----------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: BOOKKEEPER-55
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-55
>             Project: Bookkeeper
>          Issue Type: Bug
>          Components: hedwig-client
>    Affects Versions: 4.0.0
>            Reporter: Gavin Li
>            Assignee: Sijie Guo
>             Fix For: 4.2.0
>
>         Attachments: patch
>
>
> For channelDisconnected envent, we try to automatically recover the 
> connection and subscription. But when users call HedwigSubscriber.subscribe() 
> at the same time, it might succeed before the auto recovery. Then the auto 
> recovery can never succeed as the server will report topic busy failure. Then 
> the SubscribeReconnectRetryTask will retry again and again endlessly. We 
> found this in our auto test.
> Fix is easy, we just need to firstly check if the channel for this topic and 
> subscribe id is null, if not it means some subscription is already created 
> before, we don't need to bother recover.

--
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

Reply via email to