GEODE-8789: Prevent region name from being incorrectly logged twice (#5850)
- The String containing the reason for the exception should
not contain the region name
Authored-by: Donal Evans <doevans@vmware.com>
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/BaseCommand.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/BaseCommand.java
index e8ccbbc..02ef1a7 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/BaseCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/BaseCommand.java
@@ -618,10 +618,10 @@
errorMsg.send(serverConnection);
}
- protected static void writeRegionDestroyedEx(Message msg, String regionName, String title,
+ protected static void writeRegionDestroyedEx(Message msg, String regionName, String reason,
ServerConnection serverConnection) throws IOException {
- String reason = serverConnection.getName() + ": Region named " + regionName + title;
- RegionDestroyedException ex = new RegionDestroyedException(reason, regionName);
+ String exceptionMessage = serverConnection.getName() + ": Region named " + regionName + reason;
+ RegionDestroyedException ex = new RegionDestroyedException(exceptionMessage, regionName);
if (serverConnection.getTransientFlag(REQUIRES_CHUNKED_RESPONSE)) {
writeChunkedException(msg, ex, serverConnection);
} else {
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/CreateRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/CreateRegion.java
index 4e40720..6c7aa4c 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/CreateRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/CreateRegion.java
@@ -89,9 +89,7 @@
Region parentRegion = serverConnection.getCache().getRegion(parentRegionName);
if (parentRegion == null) {
- String reason =
- String.format("%s was not found during subregion creation request",
- parentRegionName);
+ String reason = " was not found during subregion creation request";
writeRegionDestroyedEx(clientMessage, parentRegionName, reason, serverConnection);
serverConnection.setAsTrue(RESPONDED);
return;
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Destroy.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Destroy.java
index d356a5c..b0ecfaa 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Destroy.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Destroy.java
@@ -119,8 +119,7 @@
LocalRegion region = (LocalRegion) serverConnection.getCache().getRegion(regionName);
if (region == null) {
- String reason = String.format("%s was not found during destroy request",
- regionName);
+ String reason = " was not found during destroy request";
writeRegionDestroyedEx(clientMessage, regionName, reason, serverConnection);
serverConnection.setAsTrue(RESPONDED);
return;
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Destroy65.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Destroy65.java
index c093b6a..9e49712 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Destroy65.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Destroy65.java
@@ -210,8 +210,7 @@
final LocalRegion region = (LocalRegion) serverConnection.getCache().getRegion(regionName);
if (region == null) {
- String reason = String.format("%s was not found during destroy request",
- regionName);
+ String reason = " was not found during destroy request";
writeRegionDestroyedEx(clientMessage, regionName, reason, serverConnection);
serverConnection.setAsTrue(RESPONDED);
return;
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/DestroyRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/DestroyRegion.java
index 4d73278..642ef2e 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/DestroyRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/DestroyRegion.java
@@ -110,7 +110,7 @@
LocalRegion region = (LocalRegion) serverConnection.getCache().getRegion(regionName);
if (region == null) {
String reason =
- "Region was not found during destroy region request";
+ " was not found during destroy region request";
writeRegionDestroyedEx(clientMessage, regionName, reason, serverConnection);
serverConnection.setAsTrue(RESPONDED);
return;
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Get70.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Get70.java
index 155e4cc..895dd22 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Get70.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Get70.java
@@ -125,7 +125,7 @@
Region region = serverConnection.getCache().getRegion(regionName);
if (region == null) {
- String reason = String.format("%s was not found during get request", regionName);
+ String reason = " was not found during get request";
writeRegionDestroyedEx(clientMessage, regionName, reason, serverConnection);
serverConnection.setAsTrue(RESPONDED);
return;
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Invalidate.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Invalidate.java
index 69abb92..3aecc9f 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Invalidate.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Invalidate.java
@@ -113,8 +113,7 @@
}
LocalRegion region = (LocalRegion) serverConnection.getCache().getRegion(regionName);
if (region == null) {
- String reason = String.format("%s was not found during %s request",
- regionName, "invalidate");
+ String reason = " was not found during invalidate request";
writeRegionDestroyedEx(clientMessage, regionName, reason, serverConnection);
serverConnection.setAsTrue(RESPONDED);
return;
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/KeySet.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/KeySet.java
index c8e9487..2385461 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/KeySet.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/KeySet.java
@@ -86,8 +86,7 @@
LocalRegion region = (LocalRegion) serverConnection.getCache().getRegion(regionName);
if (region == null) {
- String reason = String.format("%s was not found during key set request",
- regionName);
+ String reason = " was not found during key set request";
writeRegionDestroyedEx(clientMessage, regionName, reason, serverConnection);
serverConnection.setAsTrue(RESPONDED);
return;
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Put.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Put.java
index 281831f..90ec9a4 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Put.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Put.java
@@ -119,8 +119,7 @@
LocalRegion region = (LocalRegion) serverConnection.getCache().getRegion(regionName);
if (region == null) {
- String reason =
- ": Region was not found during put request";
+ String reason = " was not found during put request";
writeRegionDestroyedEx(clientMessage, regionName, reason, serverConnection);
serverConnection.setAsTrue(RESPONDED);
return;
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Request.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Request.java
index b6c8f9c..d21d50a 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Request.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Request.java
@@ -116,8 +116,7 @@
} else {
Region region = serverConnection.getCache().getRegion(regionName);
if (region == null) {
- String reason = String.format("%s was not found during get request",
- regionName);
+ String reason = " was not found during get request";
writeRegionDestroyedEx(clientMessage, regionName, reason, serverConnection);
serverConnection.setAsTrue(RESPONDED);
} else {
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Size.java b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Size.java
index b8268d4..1bb15d8 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Size.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/Size.java
@@ -80,8 +80,7 @@
LocalRegion region = (LocalRegion) crHelper.getRegion(regionName);
if (region == null) {
- String reason = String.format("%s was not found during %s request",
- regionName, "size");
+ String reason = " was not found during size request";
writeRegionDestroyedEx(clientMessage, regionName, reason, serverConnection);
serverConnection.setAsTrue(RESPONDED);
return;