[
https://issues.apache.org/jira/browse/GEODE-9338?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Owen Nichols closed GEODE-9338.
-------------------------------
> Remove strong guarantees for redis PUBLISH command response
> -----------------------------------------------------------
>
> Key: GEODE-9338
> URL: https://issues.apache.org/jira/browse/GEODE-9338
> Project: Geode
> Issue Type: Improvement
> Components: redis
> Reporter: Jens Deppe
> Assignee: Hale Bales
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.15.0
>
>
> Redis' {{PUBLISH}} command responds with the number of clients that have
> received the published message. Our current implementation attempts to
> respond with as accurate a number as possible. To that end, each publish (see
> {{PubSubImpl.publishMessageToSubscribers}} and
> {{AbstractSubscription.publishMessage}} are effectively synchronous
> operations. The current flow is:
> - PUBLISH some_message
> - Issue a fn call to each server and attempt to publish to each subscribed
> client
> - Count how many successful publish messages were written and return those
> - Respond to the redis client with the aggregated successful publishings
> In redis clustering mode, the response is only the number of local
> publishings. We can go even further and not attempt to first publish before
> subscribing, but simply respond with the current number of subscribers,
> regardless whether they are connected or not.
> We should be able to perform all pubsub work on the regular netty thread and
> completely remove the subscriber EventLoopGroup.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)