Kirk Lund created GEODE-2827:
--------------------------------
Summary: ClientCacheFactory might ignore a provided PoolFactory
Key: GEODE-2827
URL: https://issues.apache.org/jira/browse/GEODE-2827
Project: Geode
Issue Type: Bug
Components: client/server, core
Reporter: Kirk Lund
I found a weird double assignment of the GemFireCacheImpl variable
"poolFactory" that is most likely a bug. This might result in
ClientCacheFactory replacing a provided poolFactory with a default poolFactory.
{noformat}
private PoolFactory poolFactory;
{noformat}
The constructor accepts an argument and sets it to that value:
{noformat}
private GemFireCacheImpl(boolean isClient, PoolFactory pf, DistributedSystem
system, CacheConfig cacheConfig, boolean asyncEventListeners, TypeRegistry
typeRegistry) {
this.isClient = isClient;
this.poolFactory = pf;
{noformat}
But then in "private void initialize()" it blindly sets it to null thus wiping
out whatever was passed in:
{noformat}
this.poolFactory = null;
{noformat}
Later during "private void initializeDeclarativeCache()" it calls
"determineDefaultPool()" but only if isClient is true:
{noformat}
if (this.poolFactory == null) {
Map<String, Pool> pools = PoolManager.getAll();
if (pools.isEmpty()) {
this.poolFactory = createDefaultPF();
{noformat}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)