[ https://issues.apache.org/jira/browse/GEODE-1653?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Amey Barve reassigned GEODE-1653: --------------------------------- Assignee: Amey Barve > Executing a fire-and-forget function on all servers doesn't actually execute > on all servers > ------------------------------------------------------------------------------------------- > > Key: GEODE-1653 > URL: https://issues.apache.org/jira/browse/GEODE-1653 > Project: Geode > Issue Type: Bug > Components: functions > Reporter: Barry Oglesby > Assignee: Amey Barve > > Executing a fire-and-forget function on all servers only executes on the ones > the client is currently connected to. > The two {{ExecuteFunctionNoAckOp execute}} methods get the servers to execute > against using code like: > {noformat} > pool.getCurrentServers(); > {noformat} > This method just gets all the {{EndpointManager's endpointMap's > ServerLocations}}. > What should be done is more like what the {{ExecuteFunctionOp execute}} > methods do: > {noformat} > private static List<ServerLocation> getAllServers(PoolImpl pool) { > List<ServerLocation> servers = null; > if (pool.getLocators() == null || pool.getLocators().isEmpty()) { > servers = ((ExplicitConnectionSourceImpl) > pool.getConnectionSource()).getAllServers(); > } else { > servers = ((AutoConnectionSourceImpl) > pool.getConnectionSource()).findAllServers(); // n/w call on locator > } > return servers; > } > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)