This is an automated email from the ASF dual-hosted git repository. zhouxj pushed a commit to branch feature/GEM-883 in repository https://gitbox.apache.org/repos/asf/geode.git
The following commit(s) were added to refs/heads/feature/GEM-883 by this push: new 213c7d9 GEM-883: double check if some code is necessary 213c7d9 is described below commit 213c7d9221f178fd4327590a168e05de9052b0e3 Author: zhouxh <gz...@pivotal.io> AuthorDate: Mon Jan 22 17:13:53 2018 -0800 GEM-883: double check if some code is necessary --- .../geode/internal/cache/AbstractRegionMap.java | 34 ++++++++++++++++++++-- .../apache/geode/internal/cache/LocalRegion.java | 5 ++-- .../cache/entries/AbstractRegionEntry.java | 1 + 3 files changed, 36 insertions(+), 4 deletions(-) diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegionMap.java b/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegionMap.java index 75d8484..e2b2279 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegionMap.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegionMap.java @@ -1183,7 +1183,10 @@ public abstract class AbstractRegionMap implements RegionMap { true/* conflict with clear */, duringRI, true); doPart3 = true; } catch (ConcurrentCacheModificationException ccme) { - event.isConcurrencyConflict(true); + if (!event.isConcurrencyConflict()) { + logger.info("GGG:destroy1:" + event, new Exception()); + event.isConcurrencyConflict(true); + } VersionTag tag = event.getVersionTag(); if (tag != null && tag.isTimeStampUpdated()) { // Notify gateways of new time-stamp. @@ -1237,6 +1240,10 @@ public abstract class AbstractRegionMap implements RegionMap { true /* conflict with clear */, duringRI, true); doPart3 = true; } catch (ConcurrentCacheModificationException ccme) { + if (!event.isConcurrencyConflict()) { + logger.info("GGG:destroy2:" + event, new Exception()); + event.isConcurrencyConflict(true); + } VersionTag tag = event.getVersionTag(); if (tag != null && tag.isTimeStampUpdated()) { // Notify gateways of new time-stamp. @@ -1388,6 +1395,10 @@ public abstract class AbstractRegionMap implements RegionMap { event.setVersionTag(getVersionTagFromStamp(tombstone.getVersionStamp())); } } catch (ConcurrentCacheModificationException ccme) { + if (!event.isConcurrencyConflict()) { + logger.info("GGG:destroy3:" + event, new Exception()); + event.isConcurrencyConflict(true); + } VersionTag tag = event.getVersionTag(); if (tag != null && tag.isTimeStampUpdated()) { // Notify gateways of new time-stamp. @@ -1542,6 +1553,10 @@ public abstract class AbstractRegionMap implements RegionMap { } } // synchronized re } catch (ConcurrentCacheModificationException ccme) { + if (!event.isConcurrencyConflict()) { + logger.info("GGG:destroy4:" + event, new Exception()); + event.isConcurrencyConflict(true); + } VersionTag tag = event.getVersionTag(); if (tag != null && tag.isTimeStampUpdated()) { // Notify gateways of new time-stamp. @@ -2093,6 +2108,10 @@ public abstract class AbstractRegionMap implements RegionMap { } } // !opCompleted } catch (ConcurrentCacheModificationException ccme) { + if (!event.isConcurrencyConflict()) { + logger.info("GGG:invalidate1:" + event, new Exception()); + event.isConcurrencyConflict(true); + } event.isConcurrencyConflict(true); VersionTag tag = event.getVersionTag(); if (tag != null && tag.isTimeStampUpdated()) { @@ -2174,6 +2193,10 @@ public abstract class AbstractRegionMap implements RegionMap { // that's okay - when writing a tombstone into a disk, the // region has been cleared (including this tombstone) } catch (ConcurrentCacheModificationException ccme) { + if (!event.isConcurrencyConflict()) { + logger.info("GGG:invalidate2:" + event, new Exception()); + event.isConcurrencyConflict(true); + } VersionTag tag = event.getVersionTag(); if (tag != null && tag.isTimeStampUpdated()) { // Notify gateways of new time-stamp. @@ -2249,6 +2272,10 @@ public abstract class AbstractRegionMap implements RegionMap { _getOwner().recordEvent(event); clearOccured = true; } catch (ConcurrentCacheModificationException ccme) { + if (!event.isConcurrencyConflict()) { + logger.info("GGG:invalidate3:" + event, new Exception()); + event.isConcurrencyConflict(true); + } VersionTag tag = event.getVersionTag(); if (tag != null && tag.isTimeStampUpdated()) { // Notify gateways of new time-stamp. @@ -2851,7 +2878,10 @@ public abstract class AbstractRegionMap implements RegionMap { clearOccured = true; owner.recordEvent(event); } catch (ConcurrentCacheModificationException ccme) { - event.isConcurrencyConflict(true); + if (!event.isConcurrencyConflict()) { + logger.info("GGG:basicPut:" + event, new Exception()); + event.isConcurrencyConflict(true); + } VersionTag tag = event.getVersionTag(); if (tag != null && tag.isTimeStampUpdated()) { // Notify gateways of new time-stamp. diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java index 38f74ec..f08a30b 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java @@ -2853,8 +2853,9 @@ public class LocalRegion extends AbstractRegion implements LoaderHelperFactory, logger.debug("caught concurrent modification attempt when applying {}", event); } notifyBridgeClients(event); - notifyGatewaySender(event.getOperation().isUpdate() ? EnumListenerEvent.AFTER_UPDATE - : EnumListenerEvent.AFTER_CREATE, event); + logger.info("GGG:findObjectInSystem:" + event); + // notifyGatewaySender(event.getOperation().isUpdate() ? EnumListenerEvent.AFTER_UPDATE + // : EnumListenerEvent.AFTER_CREATE, event); } if (!getDataView().isDeferredStats()) { getCachePerfStats().endPut(startPut, event.isOriginRemote()); diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/entries/AbstractRegionEntry.java b/geode-core/src/main/java/org/apache/geode/internal/cache/entries/AbstractRegionEntry.java index 59ba989..7d07d42 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/entries/AbstractRegionEntry.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/entries/AbstractRegionEntry.java @@ -1799,6 +1799,7 @@ public abstract class AbstractRegionEntry implements RegionEntry, HashEntry<Obje // The new value in event is not from GII, even it could be tombstone basicProcessVersionTag(r, tag, false, eventHasDelta, dmId, originator, conflictCheck); } catch (ConcurrentCacheModificationException ex) { + logger.info("GGG:ARE after set CME:" + event, new Exception()); event.isConcurrencyConflict(true); throw ex; } -- To stop receiving notification emails like this one, please contact zho...@apache.org.