This is an automated email from the ASF dual-hosted git repository.

zhouxj pushed a commit to branch feature/GEODE-9989
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 9b212e9b04048b87751e09c0748c86ce2e562c9d
Author: zhouxh <[email protected]>
AuthorDate: Tue Jan 25 17:18:51 2022 -0800

    GEODE-9989: add a few info level logs in PersistenceAdvisorImpl to identify 
splitbrain issue
---
 .../java/org/apache/geode/internal/cache/AbstractDiskRegion.java     | 1 +
 .../main/java/org/apache/geode/internal/cache/DistributedRegion.java | 5 +++++
 .../geode/internal/cache/persistence/PersistenceAdvisorImpl.java     | 5 +++++
 .../cache/persistence/PrepareNewPersistentMemberMessage.java         | 3 +++
 4 files changed, 14 insertions(+)

diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractDiskRegion.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractDiskRegion.java
index cfc911e..f80889a5 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractDiskRegion.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractDiskRegion.java
@@ -549,6 +549,7 @@ public abstract class AbstractDiskRegion implements 
DiskRegionView {
   @Override
   public void memberOffline(PersistentMemberID persistentID) {
     ds.memberOffline(this, persistentID);
+    logger.info("GGG:memberOffline:" + persistentID);
     if (logger.isTraceEnabled(LogMarker.PERSIST_VERBOSE)) {
       logger.trace(LogMarker.PERSIST_VERBOSE, "PersistentView {} - {} - member 
offline {}",
           getDiskStoreID().abbrev(), getName(), persistentID);
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
index 4a3783a..1d041a2 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
@@ -273,6 +273,8 @@ public class DistributedRegion extends LocalRegion 
implements InternalDistribute
     }
     if (persistenceAdvisor != null) {
       persistentId = persistenceAdvisor.generatePersistentID();
+      logger.info("GGG:Created newId " + (persistentId == null ? null : 
persistentId.getTimeStamp())
+          + " for region " + getFullPath());
     } else {
       persistentId = null;
     }
@@ -1083,6 +1085,9 @@ public class DistributedRegion extends LocalRegion 
implements InternalDistribute
             logger.debug("DistributedRegion.getInitialImageAndRecovery: 
Finished Recovery");
           }
           persistentMemberId = dskRgn.getMyPersistentID();
+          logger.info("GGG: recovered my oldId "
+              + (persistentMemberId == null ? null : 
persistentMemberId.getTimeStamp()) + " for "
+              + getFullPath());
         }
 
         // Create OQL indexes before starting GII.
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/persistence/PersistenceAdvisorImpl.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/persistence/PersistenceAdvisorImpl.java
index 073a632..9077ea2 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/persistence/PersistenceAdvisorImpl.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/persistence/PersistenceAdvisorImpl.java
@@ -673,6 +673,7 @@ public class PersistenceAdvisorImpl implements 
InternalPersistenceAdvisor {
       logger.debug(LogMarker.PERSIST_ADVISOR_VERBOSE, "{}-{}: Member removed. 
persistentID={}",
           shortDiskStoreId(), regionPath, id);
     }
+    logger.info("GGG:Member removed, id=" + (id == null ? null : 
id.getTimeStamp()));
 
     synchronized (lock) {
       recoveredMembers.remove(id);
@@ -1248,6 +1249,10 @@ public class PersistenceAdvisorImpl implements 
InternalPersistenceAdvisor {
       CacheProfile cp = (CacheProfile) profile;
       if (cp.persistentID != null && cp.persistenceInitialized) {
         memberOnline(profile.getDistributedMember(), cp.persistentID);
+        logger.info("GGG:memberOnline:" + cp.persistentID.getTimeStamp());
+      } else if (cp.persistentID != null) {
+        logger.info(
+            "GGG:initialized?" + cp.persistenceInitialized + ":" + 
cp.persistentID.getTimeStamp());
       }
     }
 
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/persistence/PrepareNewPersistentMemberMessage.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/persistence/PrepareNewPersistentMemberMessage.java
index f7ac3d7..412784e 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/persistence/PrepareNewPersistentMemberMessage.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/persistence/PrepareNewPersistentMemberMessage.java
@@ -76,6 +76,9 @@ public class PrepareNewPersistentMemberMessage extends 
HighPriorityDistributionM
     ReplyProcessor21 processor = new ReplyProcessor21(dm, members, 
cache.getCancelCriterion());
     PrepareNewPersistentMemberMessage msg =
         new PrepareNewPersistentMemberMessage(regionPath, oldId, newId, 
processor.getProcessorId());
+    logger.info("GGG:Sending PrepareNewPersistentMemberMessage oldId="
+        + (oldId == null ? null : oldId.getTimeStamp()) + ",newId="
+        + (newId == null ? null : newId.getTimeStamp()));
     msg.setRecipients(members);
     dm.putOutgoing(msg);
     processor.waitForRepliesUninterruptibly();

Reply via email to