Skip to content

Resolve PubSub post-commit feedback

Nathan Harris requested to merge pubsub-feedback into master

Motivation:

To ship PubSub faster, it was merged to the master branch without a peer review. This commit is to address the critical points of feedback given in a post-commit review.

Modifications:

  • Add: New RedisClientError case where a "race condition" of removing a pubsub handler and subscription can happen
  • Add: New state to RedisPubSubHandler for when it has been removed from a ChannelPipeline
  • Change: RedisPubSubHandler to require an eventLoop in its initializer
  • Change: The subscribe and unsubscribe methods on RedisPubSubHandler to handle the EventLoop hopping to be thread-safe

Result:

PubSub should have a more robust and thread-safe implementation.

Merge request reports