code: private ManagedConnectionPool getManagedConnectionPool(Credential credential)
     {
        ManagedConnectionPool mcp = pools.get(credential);
  
        if (mcp == null)
        {
           synchronized (this)
           {
              mcp = pools.get(credential);
  
              if (mcp == null)
              {
                 ManagedConnectionPool newMcp = createManagedConnectionPool(credential);
                 mcp = pools.putIfAbsent(credential, newMcp);
                 if (mcp == null)
                 {
                    mcp = newMcp;
  
                    if (Tracer.isEnabled())
                       Tracer.createManagedConnectionPool(poolConfiguration.getId(), mcp);
                 }
                 else
                 {
                    newMcp.shutdown();
                 }
              }
           }
        }
        return mcp;
     }
docs: Get from existing pools or create mcp w/ specified credential
  It's used during prefill operation
  
  @param credential credential used to match
  @return