Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace (or patch) pull-pushable #35

Closed
DamonOehlman opened this issue Apr 29, 2015 · 0 comments
Closed

Replace (or patch) pull-pushable #35

DamonOehlman opened this issue Apr 29, 2015 · 0 comments

Comments

@DamonOehlman
Copy link
Member

OK, I've finally tracked down the problem as to why signaller is not reconnecting to a websocket (or other endpoint) when I thought it should be, and like all things it's quite obvious once you know.

Basically, the outbound message queue is a pull-pushable instance (created here and only one is created for the lifetime of the signaller. This is a problem, however, as when the transport sink stream ends, the pushable source goes into an ended state and will henceforce report itself as ended (which in turn ends the sink, noticeable in most cases by the websocket closing).

While one option would be creating a new pushable instance to use a source when invoking the reconnect code, but would require copying any existing buffered messages stored in the current queue across to the new queue. Another would be to implement a function that allows the resetting the ended state of the pull-pushable source.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant