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)

Reply via email to