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

Added auto reconnect while listening. #2

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

carsondarling
Copy link

The function signature is now: cumin.listen(queueName, autoReconnect, handler). If autoReconnect is a truthy value, then handlers are attached to both the block and the non-blocking client, so when a Redis connection drops, the process won't exit. In addition, when the blocking client reconnects, it restarts listening for items from the queue. This is still backwards compatible with old code, and should have no effect on existing code that depends on cumin.

I haven't added any tests for this functionality (I didn't want to expose the Redis clients just for testing), but I would be happy to add them if you have a suggested way of doing it.

The function signature is now: `cumin.listen(queueName, handler, autoReconnect)`. If `autoReconnect` is a truthy value,
then handlers are attached to both the block and the non-blocking client, so when a Redis connection drops, the process
won't exit. In addition, when the blocking client reconnects, it restarts listening for items from the queue.

I haven't added any tests for this functionality (I didn't want to expose the redis-clients just for testing), but I
would be happy to add them if you have a suggested way of doing it.
Also added argument shuffle to make sure we didn't break backward compatibility
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

Successfully merging this pull request may close these issues.

None yet

1 participant