[
https://issues.apache.org/jira/browse/GEODE-2257?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15787941#comment-15787941
]
ASF subversion and git services commented on GEODE-2257:
--------------------------------------------------------
Commit e3cb1b74710fc94b8e100f6031e0ea8f2c48b5f4 in geode's branch
refs/heads/develop from [~bschuchardt]
[ https://git-wip-us.apache.org/repos/asf?p=geode.git;h=e3cb1b7 ]
GEODE-2257 Client configured to use locator with addPoolServer fails to connect
The first byte that a client sends is a connection-type that is >= 100.
The first bytes expected by a locator are the 4 bytes of an integer
indicating the protocol version. I've changed the locator to read
the first byte and, if it's >= 100 send a reply byte back to the client
telling it that it's trying to contact a locator using a client/server
handshake.
The client has a new reply code that the locator is now using. If the
client sees this reply code it will throw a GemFireConfigException. Some
of these exceptions will be thrown in the background and get logged but
the thread initiating cache creation will also get this exception when
it invokes ClientCacheFactory.create().
The client-side error message will be in this form:
_Improperly configured client detected. Server at 10.154.30.28 is actually
a locator. Use addPoolLocator to configure locators_.
The locator will also log a warning in this form so that alerts will be
raised:
_Unable to process request from 10.118.33.195 exception=Improperly
configured client detected - use addPoolLocator to configure its
locators instead of addPoolServer_.
> Client configured to use locator with addPoolServer fails to connect
> --------------------------------------------------------------------
>
> Key: GEODE-2257
> URL: https://issues.apache.org/jira/browse/GEODE-2257
> Project: Geode
> Issue Type: Bug
> Components: client/server
> Reporter: Bruce Schuchardt
> Fix For: 1.1.0
>
>
> If a client cache is incorrectly configured to use a locator address with
> ClientConnectionFactory.addPoolServer() instead of addPoolLocator() it is
> very difficult to figure out why it's unable to connect. The locator rejects
> all attempts to contact it because the client tries to perform a
> server-handshake with it and the locator just closes the connection without a
> response. The client ends up having an empty connection pool and is unable
> to find any of the available servers.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)