[
https://issues.apache.org/jira/browse/GEODE-10063?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17498241#comment-17498241
]
ASF subversion and git services commented on GEODE-10063:
---------------------------------------------------------
Commit 45cbe7f8df39704899b0305729749dc1cc9ffe89 in geode's branch
refs/heads/develop from Eric Shu
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=45cbe7f ]
GEODE-10063: Correctly set primary queue connection. (#7382)
* When adding QueueConnection to connectionList, also checks if
the connection has been destroyed by another thread to prevent
a bad connection is being added to the list.
* Schedule RedundancySatisfierTask after remove connection so
that bad connection can be detected.
* During recoveryPrimary in RedundancySatisfierTask also
check if primary connection is destroyed. If so, connection
from backups will be promoted to primary.
> A closed/destroyed connection can be set as a primary queueConnection in
> QueueManager
> -------------------------------------------------------------------------------------
>
> Key: GEODE-10063
> URL: https://issues.apache.org/jira/browse/GEODE-10063
> Project: Geode
> Issue Type: Bug
> Components: client queues, security
> Affects Versions: 1.15.0
> Reporter: Eric Shu
> Assignee: Eric Shu
> Priority: Major
> Labels: GeodeOperationAPI, blocks-1.15.0, pull-request-available
>
> In certain race cases, a destroyed connection is set to be the primary queue
> connection connected to servers. If re-auth is enabled, and server pauses the
> primary queue waiting for the re-auth token, there will be no client to
> server connection available to send the valid re-auth token for server to
> unpause the queue. And the said client can not receive any events afterwards.
> The situation should be detected during RedundancySatisfierTask, but it could
> not.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)