Skip to content

Inconsistent channel state in confirm mode while reconnecting #186

Open
@makometr

Description

@makometr

While testing reconnction behaviour in attemption loop with help of wi-fi connection drop I had managed to send my test message twice by PublishWithDeferredConfirmWithContext. It was possible due to publishConfirms returned after publish were with size 1 and contains nil pointer in publishConfirms[0] (it is check from example). This situation is possible while channel is not in confirm mode. sorry for bad screen
image
so the next publishing is ok

The Publisher sets a new channel to confirm mode in startPublishHandler function after receiving a reconnect message from the reconnectErrCh channel. The problem is caused that there is a period of time when the channel is ready to send a message, but the publisher has not set the confirm mode yet.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions