You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by nr...@apache.org on 2018/01/19 16:25:50 UTC
[geode] branch develop updated: GEODE-427: Prevent out of order
message processing (#1307)
This is an automated email from the ASF dual-hosted git repository.
nreich pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git
The following commit(s) were added to refs/heads/develop by this push:
new 90617d0 GEODE-427: Prevent out of order message processing (#1307)
90617d0 is described below
commit 90617d0c7dfb7df4f8d89b3edfe888700a701a50
Author: Nick Reich <nr...@pivotal.io>
AuthorDate: Fri Jan 19 08:25:47 2018 -0800
GEODE-427: Prevent out of order message processing (#1307)
* This test could fail if two messages are sent close enough in time that
* they are processed out of order, as the test expects each message to be
* processed in order, though there is no product requirement for that
* behavior
---
.../management/MemoryThresholdsDUnitTest.java | 34 +++++++++++++++-------
1 file changed, 23 insertions(+), 11 deletions(-)
diff --git a/geode-core/src/test/java/org/apache/geode/cache/management/MemoryThresholdsDUnitTest.java b/geode-core/src/test/java/org/apache/geode/cache/management/MemoryThresholdsDUnitTest.java
index 17e8d79..4f00717 100644
--- a/geode-core/src/test/java/org/apache/geode/cache/management/MemoryThresholdsDUnitTest.java
+++ b/geode-core/src/test/java/org/apache/geode/cache/management/MemoryThresholdsDUnitTest.java
@@ -71,6 +71,7 @@ import org.apache.geode.distributed.internal.membership.InternalDistributedMembe
import org.apache.geode.internal.AvailablePortHelper;
import org.apache.geode.internal.cache.DistributedRegion;
import org.apache.geode.internal.cache.GemFireCacheImpl;
+import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.cache.PartitionedRegion;
import org.apache.geode.internal.cache.PartitionedRegionHelper;
import org.apache.geode.internal.cache.control.HeapMemoryMonitor;
@@ -438,7 +439,6 @@ public class MemoryThresholdsDUnitTest extends ClientServerTestCase {
*
* @throws Exception
*/
- @Category(FlakyTest.class) // GEODE-427: random ports, time sensitive, waitForCriterions
@Test
public void testEventDelivery() throws Exception {
final Host host = Host.getHost(0);
@@ -458,7 +458,7 @@ public class MemoryThresholdsDUnitTest extends ClientServerTestCase {
// NORMAL -> CRITICAL
server2.invoke(new SerializableCallable("NORMAL->CRITICAL") {
public Object call() throws Exception {
- GemFireCacheImpl gfCache = (GemFireCacheImpl) getCache();
+ InternalCache gfCache = getCache();
getCache().getLoggerI18n().fine(addExpectedExString);
gfCache.getInternalResourceManager().getHeapMonitor().updateStateAndSendEvent(950);
getCache().getLoggerI18n().fine(removeExpectedExString);
@@ -477,7 +477,7 @@ public class MemoryThresholdsDUnitTest extends ClientServerTestCase {
// CRITICAL -> EVICTION
server2.invoke(new SerializableCallable("CRITICAL->EVICTION") {
public Object call() throws Exception {
- GemFireCacheImpl gfCache = (GemFireCacheImpl) getCache();
+ InternalCache gfCache = getCache();
getCache().getLoggerI18n().fine(addExpectedBelow);
gfCache.getInternalResourceManager().getHeapMonitor().updateStateAndSendEvent(850);
getCache().getLoggerI18n().fine(removeExpectedBelow);
@@ -494,7 +494,7 @@ public class MemoryThresholdsDUnitTest extends ClientServerTestCase {
// EVICTION -> EVICTION
server2.invoke(new SerializableCallable("EVICTION->EVICTION") {
public Object call() throws Exception {
- GemFireCacheImpl gfCache = (GemFireCacheImpl) getCache();
+ InternalCache gfCache = getCache();
gfCache.getInternalResourceManager().getHeapMonitor().updateStateAndSendEvent(840);
return null;
}
@@ -509,7 +509,7 @@ public class MemoryThresholdsDUnitTest extends ClientServerTestCase {
// EVICTION -> NORMAL
server2.invoke(new SerializableCallable("EVICTION->NORMAL") {
public Object call() throws Exception {
- GemFireCacheImpl gfCache = (GemFireCacheImpl) getCache();
+ InternalCache gfCache = getCache();
gfCache.getInternalResourceManager().getHeapMonitor().updateStateAndSendEvent(750);
return null;
}
@@ -522,17 +522,29 @@ public class MemoryThresholdsDUnitTest extends ClientServerTestCase {
verifyListenerValue(server1, MemoryState.EVICTION, 2, true);
verifyListenerValue(server1, MemoryState.NORMAL, 1, true);
- LogWriterUtils.getLogWriter().info("before NORMAL->CRITICAL->NORMAL");
- // NORMAL -> EVICTION -> NORMAL
- server2.invoke(new SerializableCallable("NORMAL->CRITICAL->NORMAL") {
+ // NORMAL -> CRITICAL
+ server2.invoke(new SerializableCallable("NORMAL->CRITICAL") {
public Object call() throws Exception {
- GemFireCacheImpl gfCache = (GemFireCacheImpl) getCache();
+ InternalCache gfCache = getCache();
gfCache.getInternalResourceManager().getHeapMonitor().updateStateAndSendEvent(950);
+ return null;
+ }
+ });
+
+ verifyListenerValue(server2, MemoryState.CRITICAL, 2, true);
+ verifyListenerValue(server2, MemoryState.EVICTION, 3, true);
+ verifyListenerValue(server2, MemoryState.NORMAL, 1, true);
+ verifyListenerValue(server1, MemoryState.CRITICAL, 2, true);
+ verifyListenerValue(server1, MemoryState.EVICTION, 3, true);
+ verifyListenerValue(server1, MemoryState.NORMAL, 1, true);
+
+ server2.invoke(new SerializableCallable("CRITICAL->NORMAL") {
+ public Object call() throws Exception {
+ InternalCache gfCache = getCache();
gfCache.getInternalResourceManager().getHeapMonitor().updateStateAndSendEvent(750);
return null;
}
});
- LogWriterUtils.getLogWriter().info("after NORMAL->CRITICAL->NORMAL");
verifyListenerValue(server2, MemoryState.CRITICAL, 2, true);
verifyListenerValue(server2, MemoryState.EVICTION, 3, true);
@@ -544,7 +556,7 @@ public class MemoryThresholdsDUnitTest extends ClientServerTestCase {
// NORMAL -> EVICTION
server2.invoke(new SerializableCallable("NORMAL->EVICTION") {
public Object call() throws Exception {
- GemFireCacheImpl gfCache = (GemFireCacheImpl) getCache();
+ InternalCache gfCache = getCache();
gfCache.getInternalResourceManager().getHeapMonitor().updateStateAndSendEvent(850);
return null;
}
--
To stop receiving notification emails like this one, please contact
['"commits@geode.apache.org" <co...@geode.apache.org>'].