App running in TPCF failed with error "Could not create a new connection to server localhost:40404" When connecting to GemFire cluster.
search cancel

App running in TPCF failed with error "Could not create a new connection to server localhost:40404" When connecting to GemFire cluster.

book

Article ID: 431610

calendar_today

Updated On:

Products

VMware Tanzu Gemfire

Issue/Introduction

When you upgrade JAVA or spring boot gemfire version for the app.

App fails with below error.

Error: causeStackorg.apache.geode.cache.client.ServerConnectivityException: Could not create a new connection to server localhost:40404 2026-02-2T12:22:33.666+03:30 [APP/PROC/WEB/0] [OUT] org.apache.geode.cache.client.NoAvailableServersException: org.apache.geode.cache.client.ServerConnectivityException: Could not create a new connection to server localhost:40404 at org.apache.geode.cache.client.internal.pooling.ClusterConnectionManagerStarted.createConnectionToLeastLoadedServer(ClusterConnectionManagerStarted.java:545) at org.apache.geode.cache.client.internal.pooling.ClusterConnectionManagerStarted.findOrCreateConnectionExcludingServers(ClusterConnectionManagerStarted.java:379) at org.apache.geode.cache.client.internal.pooling.ClusterConnectionManagerStarted.borrowConnection(ClusterConnectionManagerStarted.java:192) at org.apache.geode.cache.client.internal.pooling.ClusterConnectionManager.borrowConnection(ClusterConnectionManager.java:78) at org.apache.geode.cache.client.internal.OpExecutorImpl.execute(OpExecutorImpl.java:156)

Environment

PCC ( GemFire)

APP ( TPCF )

Cause

This will be issue with dependencies/format mentioned in pom.xml file.

For example

<!-- Updated Dependency Versions -->
<springBootForGemFire.version>2.0.0</springBootForGemFire.version>
<vmwareGemFire.version>10.2.1</vmwareGemFire.version>


<dependency>
    <groupId>com.vmware.gemfire</groupId>
    <artifactId>spring-boot-3.5-gemfire-core-10.2</artifactId>

 

When using the newer spring-boot-3.5-gemfire-core-10.2 dependency, the application is defaulting to a standalone/local configuration (trying to find a GemFire server on localhost:40404). In the spring-boot-3.5-gemfire-10.2, auto-detecting the Cloud Foundry VCAP_SERVICES environment variables to locate the actual PCC locators and servers.

 

Resolution

First check the compatibility of the components 

https://techdocs.broadcom.com/us/en/vmware-tanzu/data-solutions/spring-boot-for-tanzu-gemfire/2-0/gf-sb/compatibility.html


Replace  <artifactId>spring-boot-3.5-gemfire-core-10.2</artifactId> with <artifactId>spring-boot-3.5-gemfire-10.2</artifactId> in pom.xml

<springBootForGemFire.version>2.0.0</springBootForGemFire.version>
<vmwareGemFire.version>10.2.1</vmwareGemFire.version>


<dependency>
    <groupId>com.vmware.gemfire</groupId>
    <artifactId>spring-boot-3.5-gemfire-10.2</artifactId>
    <version>${springBootForGemFire.version}</version>
</dependency>

 

The artifact ID format is spring-boot-{version}-gemfire-{version}.


When we use core Dependencies, it does not include the logic to parse the VCAP_SERVICES environment variable. Therefore, it has no idea how to find the locators. Where you need to define the Pool and Locators in a properties file and do not want any Spring Boot auto-configuration.

So we need to use <artifactId>spring-boot-3.5-gemfire-10.2</artifactId>

In addition, add below lines in application.properties file.

    "JBP_CONFIG_SPRING_AUTO_RECONFIGURATION": "{enabled: true}",

    "SPRING_CLOUD_BINDINGS_COMPATIBILITY_ENABLED": "true",

    "SPRING_CLOUD_BINDINGS_ENABLED": "true",