[geode] branch develop updated: GEODE-9070: Improve ClientServerSessionCacheDUnitTest and add additional logging (#6567)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 400dee1 GEODE-9070: Improve ClientServerSessionCacheDUnitTest and add additional logging (#6567) 400dee1 is described below commit 400dee12fa2d35d59adb81655bf811898d311d6c Author: Sarah AuthorDate: Tue Jul 20 10:11:51 2021 -0400 GEODE-9070: Improve ClientServerSessionCacheDUnitTest and add additional logging (#6567) --- .../util/ClientServerSessionCacheDUnitTest.java| 80 +++--- .../distributed/internal/DistributionImpl.java | 6 +- 2 files changed, 46 insertions(+), 40 deletions(-) diff --git a/extensions/geode-modules/src/distributedTest/java/org/apache/geode/modules/util/ClientServerSessionCacheDUnitTest.java b/extensions/geode-modules/src/distributedTest/java/org/apache/geode/modules/util/ClientServerSessionCacheDUnitTest.java index 87bd506..9b06cc3 100644 --- a/extensions/geode-modules/src/distributedTest/java/org/apache/geode/modules/util/ClientServerSessionCacheDUnitTest.java +++ b/extensions/geode-modules/src/distributedTest/java/org/apache/geode/modules/util/ClientServerSessionCacheDUnitTest.java @@ -49,7 +49,6 @@ import org.apache.geode.internal.cache.execute.metrics.FunctionStats; import org.apache.geode.internal.cache.execute.metrics.FunctionStatsManager; import org.apache.geode.modules.session.catalina.ClientServerSessionCache; import org.apache.geode.modules.session.catalina.SessionManager; -import org.apache.geode.test.dunit.DistributedTestUtils; import org.apache.geode.test.dunit.VM; import org.apache.geode.test.dunit.rules.CacheRule; import org.apache.geode.test.dunit.rules.ClientCacheRule; @@ -57,9 +56,9 @@ import org.apache.geode.test.dunit.rules.DistributedRule; public class ClientServerSessionCacheDUnitTest implements Serializable { private static final String SESSION_REGION_NAME = RegionHelper.NAME + "_sessions"; - private CacheRule cacheRule = new CacheRule(); - private DistributedRule distributedRule = new DistributedRule(); - private ClientCacheRule clientCacheRule = new ClientCacheRule(); + private final CacheRule cacheRule = new CacheRule(); + private final DistributedRule distributedRule = new DistributedRule(); + private final ClientCacheRule clientCacheRule = new ClientCacheRule(); @Rule public transient RuleChain ruleChain = RuleChain.outerRule(distributedRule) @@ -78,12 +77,12 @@ public class ClientServerSessionCacheDUnitTest implements Serializable { client.invoke(this::startClientSessionCache); -server0.invoke(this::validateServer); -server1.invoke(this::validateServer); +server0.invoke(() -> await().untilAsserted(this::validateServer)); +server1.invoke(() -> await().untilAsserted(this::validateServer)); } @Test - public void addServerToExistingClusterCreatesSessionRegion() { + public void addServerToExistingClusterCopiesSessionRegion() { final VM server0 = VM.getVM(0); final VM server1 = VM.getVM(1); final VM client = VM.getVM(2); @@ -92,7 +91,7 @@ public class ClientServerSessionCacheDUnitTest implements Serializable { client.invoke(this::startClientSessionCache); -server0.invoke(this::validateServer); +server0.invoke(() -> await().untilAsserted(this::validateServer)); server1.invoke(this::startCacheServer); @@ -101,60 +100,62 @@ public class ClientServerSessionCacheDUnitTest implements Serializable { } @Test - public void startingAClientWithoutServersFails() { -final VM client = VM.getVM(2); - -assertThatThrownBy(() -> client.invoke(this::startClientSessionCache)) -.hasCauseInstanceOf(NoAvailableServersException.class); - } - - @Test - public void canPreCreateSessionRegionBeforeStartingClient() { + public void addServerToExistingClusterDoesNotCopyPreCreatedSessionRegion() { final VM server0 = VM.getVM(0); final VM server1 = VM.getVM(1); final VM client = VM.getVM(2); server0.invoke(this::startCacheServer); -server1.invoke(this::startCacheServer); - server0.invoke(this::createSessionRegion); -server1.invoke(this::createSessionRegion); +server0.invoke(() -> await().untilAsserted(this::validateSessionRegion)); client.invoke(this::startClientSessionCache); +server1.invoke(this::startCacheServer); + +server0.invoke(() -> await().untilAsserted(this::validateServer)); +server1.invoke(() -> await().untilAsserted(this::validateBootstrapped)); + +// server1 should not have created the session region +// If the user precreated the region, they must manually +// create it on all servers +server1.invoke(() -> { + Region region = cacheRule.getCache().getRegion(SESSION_REGION_NAME); + assertThat(region).isNull(); +}); -s
[geode] branch develop updated (5b57483 -> 8fcf7f8)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 5b57483 add 1.13.3 to old versions and set as Benchmarks baseline on develop (#6644) add 8fcf7f8 Temporarily remove sabbey37 from Radish CODEOWNERs (#6647) No new revisions were added by this update. Summary of changes: CODEOWNERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
[geode-benchmarks] branch develop updated: Add ManualRedisTopology test for hosts and ports (#151)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode-benchmarks.git The following commit(s) were added to refs/heads/develop by this push: new dfbe030 Add ManualRedisTopology test for hosts and ports (#151) dfbe030 is described below commit dfbe030bb97043dfc93ea6be4166c6f747e1249c Author: Sarah AuthorDate: Mon May 17 12:27:42 2021 -0400 Add ManualRedisTopology test for hosts and ports (#151) --- .../benchmark/redis/topology/ManualRedisTopologyTest.java | 15 ++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/geode-benchmarks/src/test/java/org/apache/geode/benchmark/redis/topology/ManualRedisTopologyTest.java b/geode-benchmarks/src/test/java/org/apache/geode/benchmark/redis/topology/ManualRedisTopologyTest.java index 44da9e7..5326607 100644 --- a/geode-benchmarks/src/test/java/org/apache/geode/benchmark/redis/topology/ManualRedisTopologyTest.java +++ b/geode-benchmarks/src/test/java/org/apache/geode/benchmark/redis/topology/ManualRedisTopologyTest.java @@ -45,7 +45,7 @@ public class ManualRedisTopologyTest { @Test @SetSystemProperty(key = WITH_REDIS_SERVERS_PROPERTY, value = "a;b;c") - public void configureWithMultipleServer() { + public void configureWithMultipleServers() { final TestConfig testConfig = new TestConfig(); ManualRedisTopology.configure(testConfig); assertThat(testConfig.getBefore().stream().map(TestStep::getTask) @@ -57,6 +57,19 @@ public class ManualRedisTopologyTest { } @Test + @SetSystemProperty(key = WITH_REDIS_SERVERS_PROPERTY, value = "a:1;b:2;c:3") + public void configureWithMultipleServersWithHostsAndPorts() { +final TestConfig testConfig = new TestConfig(); +ManualRedisTopology.configure(testConfig); +assertThat(testConfig.getBefore().stream().map(TestStep::getTask) +.filter(InitRedisServersAttribute.class::isInstance) +.map(InitRedisServersAttribute.class::cast) +.findFirst()).hasValueSatisfying(t -> assertThat(t.getServers()).containsExactly( +createUnresolved("a", 1), createUnresolved("b", 2), +createUnresolved("c", 3))); + } + + @Test @ClearSystemProperty(key = WITH_REDIS_SERVERS_PROPERTY) public void configureWithNoServersThrows() { final TestConfig testConfig = new TestConfig();
[geode] branch develop updated: GEODE-9006: fix flaky native Redis memory usage test (#6456)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 6d53987 GEODE-9006: fix flaky native Redis memory usage test (#6456) 6d53987 is described below commit 6d5398747871a5c27c1eb936b299ba311a1444c1 Author: John Hutchison AuthorDate: Fri May 14 09:48:30 2021 -0400 GEODE-9006: fix flaky native Redis memory usage test (#6456) - rename test to be more specific - increase size of data added in test - remove unused fields and methods --- .../MemoryStatsNativeRedisAcceptanceTest.java | 2 +- .../AbstractRedisMemoryStatsIntegrationTest.java | 44 +- 2 files changed, 19 insertions(+), 27 deletions(-) diff --git a/geode-apis-compatible-with-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/server/MemoryStatsNativeRedisAcceptanceTest.java b/geode-apis-compatible-with-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/server/MemoryStatsNativeRedisAcceptanceTest.java index 4f2d34a..efd7f25 100644 --- a/geode-apis-compatible-with-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/server/MemoryStatsNativeRedisAcceptanceTest.java +++ b/geode-apis-compatible-with-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/server/MemoryStatsNativeRedisAcceptanceTest.java @@ -31,7 +31,7 @@ public class MemoryStatsNativeRedisAcceptanceTest extends AbstractRedisMemorySta @Override public void configureMemoryAndEvictionPolicy(Jedis jedis) { -jedis.configSet("maxmemory", "200"); +jedis.configSet("maxmemory", "1000"); jedis.configSet("maxmemory-policy", "allkeys-lru"); } } diff --git a/geode-apis-compatible-with-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/server/AbstractRedisMemoryStatsIntegrationTest.java b/geode-apis-compatible-with-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/server/AbstractRedisMemoryStatsIntegrationTest.java index d190425..0a7092d 100644 --- a/geode-apis-compatible-with-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/server/AbstractRedisMemoryStatsIntegrationTest.java +++ b/geode-apis-compatible-with-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/server/AbstractRedisMemoryStatsIntegrationTest.java @@ -21,12 +21,9 @@ import java.util.Map; import org.junit.After; import org.junit.Before; -import org.junit.BeforeClass; import org.junit.Test; import redis.clients.jedis.Jedis; -import org.apache.geode.internal.statistics.EnabledStatisticsClock; -import org.apache.geode.internal.statistics.StatisticsClock; import org.apache.geode.redis.RedisIntegrationTest; import org.apache.geode.test.awaitility.GeodeAwaitility; @@ -34,16 +31,8 @@ public abstract class AbstractRedisMemoryStatsIntegrationTest implements RedisIn private static final int TIMEOUT = (int) GeodeAwaitility.getTimeout().toMillis(); private static final String EXISTING_HASH_KEY = "Existing_Hash"; - private static final String EXISTING_STRING_KEY = "Existing_String"; - private static final String EXISTING_SET_KEY_1 = "Existing_Set_1"; - private static final String EXISTING_SET_KEY_2 = "Existing_Set_2"; private Jedis jedis; - private static long START_TIME; - private static StatisticsClock statisticsClock; - - private long preTestConnectionsReceived = 0; - private long preTestConnectedClients = 0; private static final String MAX_MEMORY = "maxmemory"; private static final String USED_MEMORY = "used_memory"; @@ -51,13 +40,6 @@ public abstract class AbstractRedisMemoryStatsIntegrationTest implements RedisIn public void configureMemoryAndEvictionPolicy(Jedis jedis) {} - // --- Setup -- // - @BeforeClass - public static void beforeClass() { -statisticsClock = new EnabledStatisticsClock(); -START_TIME = statisticsClock.getTime(); - } - @Before public void before() { jedis = new Jedis("localhost", getPort(), TIMEOUT); @@ -80,23 +62,24 @@ public abstract class AbstractRedisMemoryStatsIntegrationTest implements RedisIn @Test public void memoryFragmentationRatio_shouldBeGreaterThanZero() { -double memoryFragmentationRatio = Double.valueOf(getInfo(jedis).get(MEM_FRAGMENTATION_RATIO)); +double memoryFragmentationRatio = +Double.parseDouble(getInfo(jedis).get(MEM_FRAGMENTATION_RATIO)); assertThat(memoryFragmentationRatio).isGreaterThan(0.0); } @Test - public void usedMemory_shouldReflectActualMemoryUsage() { -long initialUsedMemory = Long.valueOf(getInfo(jedis).get(USED_MEMORY)); + public void usedMemory_should
[geode] branch develop updated (884d399 -> 2c5b213)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 884d399 GEODE-9004: Align results of queries with and without map indexes (#6279) add 2c5b213 GEODE-8990: Resolve memory issue with Jetty9 Cargo Test (#6443) No new revisions were added by this update. Summary of changes: .../src/main/java/org/apache/geode/session/tests/ServerContainer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
[geode] branch develop updated (5ec5c8f -> 9ba75f0)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 5ec5c8f Fix codeowners rules that weren't capturing what they were intended to (#6448) add 9ba75f0 Revert "GEODE-9239: Update PersistDUnitTest to use JedisCluster (#6438)" (#6442) No new revisions were added by this update. Summary of changes: .../internal/executor/key/ExistsDUnitTest.java | 67 +++ .../internal/executor/key/ExpireDUnitTest.java | 204 + .../internal/executor/key/PersistDUnitTest.java| 9 +- 3 files changed, 275 insertions(+), 5 deletions(-) create mode 100644 geode-apis-compatible-with-redis/src/distributedTest/java/org/apache/geode/redis/internal/executor/key/ExistsDUnitTest.java create mode 100644 geode-apis-compatible-with-redis/src/distributedTest/java/org/apache/geode/redis/internal/executor/key/ExpireDUnitTest.java
[geode] branch develop updated: GEODE-9208: Allow StressNewTest to pick up tests from all directories (#6391)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 f260ddd GEODE-9208: Allow StressNewTest to pick up tests from all directories (#6391) f260ddd is described below commit f260ddd16fa3db1215aabc3b3985000a5f8c1536 Author: Sarah AuthorDate: Thu Apr 29 09:26:29 2021 -0400 GEODE-9208: Allow StressNewTest to pick up tests from all directories (#6391) --- ci/scripts/repeat-new-tests.sh | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ci/scripts/repeat-new-tests.sh b/ci/scripts/repeat-new-tests.sh index f56a1cd..73fa648 100755 --- a/ci/scripts/repeat-new-tests.sh +++ b/ci/scripts/repeat-new-tests.sh @@ -60,11 +60,11 @@ function create_gradle_test_targets() { echo $(${JAVA_HOME}/bin/java -cp $(cat /tmp/classpath.txt) org.apache.geode.test.util.StressNewTestHelper $@) } -UNIT_TEST_CHANGES=$(changes_for_path '*/src/test/java') || exit $? -INTEGRATION_TEST_CHANGES=$(changes_for_path '*/src/integrationTest/java') || exit $? -DISTRIBUTED_TEST_CHANGES=$(changes_for_path '*/src/distributedTest/java') || exit $? -ACCEPTANCE_TEST_CHANGES=$(changes_for_path '*/src/acceptanceTest/java') || exit $? -UPGRADE_TEST_CHANGES=$(changes_for_path '*/src/upgradeTest/java') || exit $? +UNIT_TEST_CHANGES=$(changes_for_path ':(glob)**/src/test/java/**') || exit $? +INTEGRATION_TEST_CHANGES=$(changes_for_path ':(glob)**/src/integrationTest/java/**') || exit $? +DISTRIBUTED_TEST_CHANGES=$(changes_for_path ':(glob)**/src/distributedTest/java/**') || exit $? +ACCEPTANCE_TEST_CHANGES=$(changes_for_path ':(glob)**/src/acceptanceTest/java/**') || exit $? +UPGRADE_TEST_CHANGES=$(changes_for_path ':(glob)**/src/upgradeTest/java/**') || exit $? CHANGED_FILES_ARRAY=( $UNIT_TEST_CHANGES $INTEGRATION_TEST_CHANGES $DISTRIBUTED_TEST_CHANGES $ACCEPTANCE_TEST_CHANGES $UPGRADE_TEST_CHANGES ) NUM_CHANGED_FILES=${#CHANGED_FILES_ARRAY[@]}
[geode] branch develop updated (465173c -> b18836c)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 465173c GEODE-9174: fix displaying the result of a gfsh query containing a UUID (#6365) add b18836c GEODE-9163: Mark docs for apis compatible with Redis as experimental (#6374) No new revisions were added by this update. Summary of changes: geode-apis-compatible-with-redis/README.md | 3 ++- geode-book/master_middleman/source/subnavs/geode-subnav.erb | 2 +- .../tools_modules/geode_apis_compatible_with_redis.html.md.erb | 6 -- 3 files changed, 7 insertions(+), 4 deletions(-)
[geode] branch develop updated (69834d5 -> ac4ebe9)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 69834d5 GEODE-9122: Avoid possible ConcurrentModificationException with group-transaction-events=true (#6278) add ac4ebe9 GEODE-9113: Extend wait period for hscanSnaphots_shouldExpireAfterExpiryPeriod (#6303) No new revisions were added by this update. Summary of changes: .../test/java/org/apache/geode/redis/internal/data/RedisHashTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
[geode] 10/11: GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled (#5724)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit 814482d186f094b388076194b1e1f1189f4dc9b4 Author: Jens Deppe AuthorDate: Wed Nov 11 08:40:48 2020 -0800 GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled (#5724) Co-Authored-by: Jens Deppe Co-Authored-by: Sarah Abbey (cherry picked from commit ba8f9015530af10c3e9d1df1e73524bdc6c8a3cc) --- .../modules/session/catalina/DeltaSession.java | 4 +++ .../geode/session/tests/TomcatContainer.java | 15 + .../apache/geode/session/tests/TomcatInstall.java | 36 -- .../apache/geode/session/tests/CargoTestBase.java | 9 +++--- .../tests/Tomcat6CachingClientServerTest.java | 2 +- .../session/tests/Tomcat6ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat6Test.java| 3 +- .../tests/Tomcat7CachingClientServerTest.java | 2 +- .../session/tests/Tomcat7ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat7Test.java| 3 +- .../tests/Tomcat8CachingClientServerTest.java | 2 +- .../session/tests/Tomcat8ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat8Test.java| 3 +- .../tests/Tomcat9CachingClientServerTest.java | 2 +- ...mcat9CachingClientServerValveDisabledTest.java} | 4 +-- .../session/tests/Tomcat9ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat9Test.java| 3 +- .../Tomcat8ClientServerRollingUpgradeTest.java | 4 +-- ...omcatSessionBackwardsCompatibilityTestBase.java | 8 ++--- 19 files changed, 76 insertions(+), 36 deletions(-) diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java index 1968550..e745ffe 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java @@ -413,6 +413,10 @@ public class DeltaSession extends StandardSession @Override public void setMaxInactiveInterval(int interval) { super.setMaxInactiveInterval(interval); + +if (!isCommitEnabled() && id != null) { + putInRegion(getOperatingRegion(), true, null); +} } @Override diff --git a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java index 38d262d..b0d4168 100644 --- a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java +++ b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java @@ -65,17 +65,16 @@ public class TomcatContainer extends ServerContainer { setConfigFile(contextXMLFile.getAbsolutePath(), DEFAULT_TOMCAT_XML_REPLACEMENT_DIR, DEFAULT_TOMCAT_CONTEXT_XML_REPLACEMENT_NAME); -if (install.getConnectionType() == ContainerInstall.ConnectionType.CLIENT_SERVER) { - // using proxy region, override the default client/server setting to set to false +if (install.getConnectionType() == ContainerInstall.ConnectionType.CLIENT_SERVER || +install.getConnectionType() == ContainerInstall.ConnectionType.CACHING_CLIENT_SERVER) { setCacheProperty("enableLocalCache", String.valueOf(install.getConnectionType().enableLocalCache())); -} else { - // using default, either setting it explicitly or leave it off should have the same effect - if (System.currentTimeMillis() % 2 == 0) { -setCacheProperty("enableLocalCache", -String.valueOf(install.getConnectionType().enableLocalCache())); - } } + +if (install.getCommitValve() != TomcatInstall.CommitValve.DEFAULT) { + setCacheProperty("enableCommitValve", install.getCommitValve().getValue()); +} + setCacheProperty("className", install.getContextSessionManagerClass()); // Deploy war file to container configuration diff --git a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java index 322558e..af7d955 100644 --- a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java +++ b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java @@ -89,6 +89,26 @@ public class TomcatInstall extends ContainerInstall { } /** + * This determines the setting for 'enableCommit
[geode] 11/11: GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit 31d2613189f623373fb997e88af9fca7746c2a0f Author: Barry Oglesby AuthorDate: Mon Dec 14 12:07:45 2020 -0800 GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache (cherry picked from commit bda0d3fbf13ebdf37db8d710cf7f4d4b892a1646) --- .../modules/session/catalina/DeltaSessionManager.java | 6 +- .../session/catalina/PeerToPeerSessionCache.java | 19 +++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java index a42b0d8..997c424 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java @@ -551,7 +551,11 @@ public abstract class DeltaSessionManager getMaxActive()) { setMaxActive(currentActiveSessions); if (getLogger().isDebugEnabled()) { diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java index d5031c1..04e197d 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java @@ -27,6 +27,8 @@ import org.apache.geode.cache.execute.Execution; import org.apache.geode.cache.execute.Function; import org.apache.geode.cache.execute.FunctionService; import org.apache.geode.cache.execute.ResultCollector; +import org.apache.geode.distributed.internal.InternalDistributedSystem; +import org.apache.geode.internal.cache.InternalCache; import org.apache.geode.modules.session.catalina.callback.LocalSessionCacheLoader; import org.apache.geode.modules.session.catalina.callback.LocalSessionCacheWriter; import org.apache.geode.modules.session.catalina.callback.SessionExpirationCacheListener; @@ -47,6 +49,7 @@ public class PeerToPeerSessionCache extends AbstractSessionCache { public PeerToPeerSessionCache(SessionManager sessionManager, Cache cache) { super(sessionManager); this.cache = cache; +addReconnectListener(); } @Override @@ -242,4 +245,20 @@ public class PeerToPeerSessionCache extends AbstractSessionCache { Execution getExecutionForFunctionOnMembersWithArguments(Object[] arguments) { return FunctionService.onMembers().setArguments(arguments); } + + private void addReconnectListener() { +InternalDistributedSystem.addReconnectListener( +new InternalDistributedSystem.ReconnectListener() { + @Override + public void onReconnect(InternalDistributedSystem oldSystem, + InternalDistributedSystem newSystem) { +reinitialize(newSystem.getCache()); + } +}); + } + + private void reinitialize(InternalCache reconnectedCache) { +this.cache = reconnectedCache; +initialize(); + } }
[geode] 08/11: GEODE-8217: Deserialize attribute before update and remove. (#5256)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit 7095050b299886ea07f8587668d814b10187375a Author: Jacob Barrett AuthorDate: Thu Jun 25 13:57:17 2020 -0700 GEODE-8217: Deserialize attribute before update and remove. (#5256) When preferDeserializedForm is true we deserialize the previous attributes before update or remove. Deprecates preferDeserializedForm since when false it's unclear when you will get serialized or unserialized forms of attributes. (cherry picked from commit 9cc61bf2c0cb91f1a6b551fef6984214e23730e2) --- .../AbstractDeltaSessionIntegrationTest.java | 110 +++ .../catalina/AbstractDeltaSessionManagerTest.java | 4 +- .../catalina/AbstractDeltaSessionTest.java}| 57 ++-- .../session/catalina/DeltaSession7Test.java} | 25 +- .../session/catalina/DeltaSession7Test.java| 147 + .../catalina/Tomcat7DeltaSessionManagerTest.java | 3 +- .../session/catalina/DeltaSession8Test.java} | 25 +- .../session/catalina/DeltaSession8Test.java| 147 + .../catalina/Tomcat8DeltaSessionManagerTest.java | 3 +- .../session/catalina/DeltaSession9Test.java} | 23 +- .../session/catalina/DeltaSession9Test.java| 147 + .../catalina/Tomcat9DeltaSessionManagerTest.java | 3 +- .../modules/session/catalina/DeltaSession.java | 346 - .../session/catalina/DeltaSessionManager.java | 163 +- java => DeltaSessionManagerConfiguration.java} | 46 ++- .../session/catalina/JvmRouteBinderValve.java | 10 +- .../modules/session/catalina/SessionManager.java | 4 + .../catalina/Tomcat6CommitSessionValve.java| 3 +- .../callback/SessionExpirationCacheListener.java | 2 +- .../session/AccessAttributeValueListener.java} | 20 +- .../src/main/webapp/WEB-INF/web.xml| 4 + .../apache/geode/session/tests/CargoTestBase.java | 41 ++- .../org/apache/geode/session/tests/LogChecker.java | 126 23 files changed, 1156 insertions(+), 303 deletions(-) diff --git a/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/AbstractDeltaSessionIntegrationTest.java b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/AbstractDeltaSessionIntegrationTest.java new file mode 100644 index 000..5008b17 --- /dev/null +++ b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/AbstractDeltaSessionIntegrationTest.java @@ -0,0 +1,110 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.apache.geode.modules.session.catalina; + +import static org.apache.geode.cache.RegionShortcut.PARTITION; +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.spy; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.verifyNoMoreInteractions; +import static org.mockito.Mockito.when; + +import java.io.IOException; + +import javax.servlet.http.HttpSession; +import javax.servlet.http.HttpSessionAttributeListener; +import javax.servlet.http.HttpSessionBindingEvent; + +import org.apache.catalina.Context; +import org.apache.juli.logging.Log; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.mockito.ArgumentCaptor; + +import org.apache.geode.cache.Region; +import org.apache.geode.internal.util.BlobHelper; +import org.apache.geode.modules.session.catalina.callback.SessionExpirationCacheListener; +import org.apache.geode.modules.session.catalina.internal.DeltaSessionStatistics; +import org.apache.geode.test.junit.rules.ServerStarterRule; + +public abstract class AbstractDeltaSessionIntegrationTest, DeltaSessionT extends DeltaSession> { + protected static final String KEY = "key1"; + protected static final String REGION_NAME = "sessions"; + + protected Region region; + protected final DeltaSessionManagerT manager; + protected final Context context = mock(Con
[geode] 05/11: GEODE-8221: Refactor tests to run in appropriate projects. (#5244)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit 45d9f5cfdb9af0066a0c41c57bdfcedb69108f5d Author: Jacob Barrett AuthorDate: Thu Jun 11 16:55:54 2020 -0700 GEODE-8221: Refactor tests to run in appropriate projects. (#5244) (cherry picked from commit cb5990cd437244bc0ac8abdc6e12552e686e7c7a) --- ...SessionsBase.java => AbstractSessionsTest.java} | 143 - ...t.java => AbstractDeltaSessionManagerTest.java} | 187 ++-- .../ClientServerSessionCacheJUnitTest.java | 334 - ...ionsJUnitTest.java => Tomcat7SessionsTest.java} | 10 +- ...st.java => Tomcat7DeltaSessionManagerTest.java} | 6 +- ...st.java => Tomcat8DeltaSessionManagerTest.java} | 2 +- ...st.java => Tomcat9DeltaSessionManagerTest.java} | 2 +- ...ionsJUnitTest.java => Tomcat6SessionsTest.java} | 4 +- .../catalina/AbstractSessionCacheTest.java}| 26 +- .../catalina/ClientServerSessionCacheTest.java | 301 ++- .../session/catalina/DeltaSessionFacadeTest.java} | 6 +- .../session/catalina/DeltaSessionTest.java}| 74 ++--- .../catalina/PeerToPeerSessionCacheTest.java} | 26 +- .../SessionExpirationCacheListenerTest.java} | 10 +- .../DeltaSessionAttributeEventBatchTest.java} | 17 +- .../DeltaSessionDestroyAttributeEventTest.java}| 9 +- .../internal/DeltaSessionStatisticsTest.java} | 11 +- .../DeltaSessionUpdateAttributeEventTest.java} | 10 +- .../modules/util/CreateRegionFunctionTest.java}| 17 +- ...TouchPartitionedRegionEntriesFunctionTest.java} | 16 +- .../TouchReplicatedRegionEntriesFunctionTest.java} | 20 +- 21 files changed, 597 insertions(+), 634 deletions(-) diff --git a/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/TestSessionsBase.java b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/AbstractSessionsTest.java similarity index 72% rename from extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/TestSessionsBase.java rename to extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/AbstractSessionsTest.java index a46eec3..e30a15d 100644 --- a/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/TestSessionsBase.java +++ b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/AbstractSessionsTest.java @@ -45,7 +45,7 @@ import org.apache.geode.cache.Region; import org.apache.geode.modules.session.catalina.DeltaSessionManager; import org.apache.geode.modules.session.catalina.PeerToPeerCacheLifecycleListener; -public abstract class TestSessionsBase { +public abstract class AbstractSessionsTest { protected static int port; private static EmbeddedTomcat server; private static StandardWrapper servlet; @@ -53,13 +53,13 @@ public abstract class TestSessionsBase { protected static DeltaSessionManager sessionManager; // Set up the servers we need - protected static void setupServer(DeltaSessionManager manager) throws Exception { + protected static void setupServer(final DeltaSessionManager manager) throws Exception { FileUtils.copyDirectory(Paths.get("..", "resources", "integrationTest", "tomcat").toFile(), new File("./tomcat")); port = SocketUtils.findAvailableTcpPort(); server = new EmbeddedTomcat(port, "JVM-1"); -PeerToPeerCacheLifecycleListener p2pListener = new PeerToPeerCacheLifecycleListener(); +final PeerToPeerCacheLifecycleListener p2pListener = new PeerToPeerCacheLifecycleListener(); p2pListener.setProperty(MCAST_PORT, "0"); p2pListener.setProperty(LOG_LEVEL, "config"); server.getEmbedded().addLifecycleListener(p2pListener); @@ -91,19 +91,20 @@ public abstract class TestSessionsBase { region.clear(); } - private WebResponse setCallbackAndExecuteGet(Callback callback) throws IOException, SAXException { + private WebResponse setCallbackAndExecuteGet(final Callback callback) + throws IOException, SAXException { servlet.getServletContext().setAttribute("callback", callback); -WebConversation wc = new WebConversation(); -WebRequest req = new GetMethodWebRequest(String.format("http://localhost:%d/test";, port)); +final WebConversation wc = new WebConversation(); +final WebRequest req = new GetMethodWebRequest(String.format("http://localhost:%d/test";, port)); req.setParameter("cmd", QueryCommand.CALLBACK.name()); req.setParameter("param", "callback"); return wc.getResponse(req); } - private WebRequest prepareRequest(String key, String value) { -WebRequest req = new GetMethodWebReques
[geode] branch support/1.13 updated (b32e20b -> 31d2613)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git. from b32e20b GEODE-8623: Retry getting local host if it fails. (#5743) new ccdb502 Revert "GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled" new de2238d Revert "GEODE-8513: Remove (de)serialization of local sessions." new 618eea0 Revert "GEODE-7896 Update tomcat support" new 8d87057 Revert "GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache" new 45d9f5c GEODE-8221: Refactor tests to run in appropriate projects. (#5244) new d5bc7e8 GEODE-7896 Update tomcat support new 8c849ec GEODE-8221: Commits session data prior to sending output to browser (#5246) new 7095050 GEODE-8217: Deserialize attribute before update and remove. (#5256) new 29bb5a2 GEODE-8513: Remove (de)serialization of local sessions. (#5532) new 814482d GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled (#5724) new 31d2613 GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache The 11 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: ...SessionsBase.java => AbstractSessionsTest.java} | 143 - ...AbstractCommitSessionValveIntegrationTest.java} | 42 ++- .../AbstractDeltaSessionIntegrationTest.java | 110 +++ ...t.java => AbstractDeltaSessionManagerTest.java} | 77 ++--- ...UnitTest.java => AbstractDeltaSessionTest.java} | 103 +++--- .../AbstractSessionValveIntegrationTest.java | 0 .../ClientServerSessionCacheJUnitTest.java | 334 extensions/geode-modules-tomcat7/build.gradle | 1 + ...ionsJUnitTest.java => Tomcat7SessionsTest.java} | 10 +- .../CommitSessionValveIntegrationTest.java | 57 .../session/catalina/DeltaSession7Test.java} | 38 +-- .../catalina/Tomcat7CommitSessionOutputBuffer.java | 53 .../catalina/Tomcat7CommitSessionValve.java| 58 .../catalina/Tomcat7DeltaSessionManager.java | 12 +- .../session/catalina/DeltaSession7Test.java| 147 + .../Tomcat7CommitSessionOutputBufferTest.java | 63 .../catalina/Tomcat7CommitSessionValveTest.java| 98 ++ ...st.java => Tomcat7DeltaSessionManagerTest.java} | 7 +- .../CommitSessionValveIntegrationTest.java | 57 .../session/catalina/DeltaSession8Test.java} | 38 +-- .../modules/session/catalina/DeltaSession8.java| 1 + .../catalina/Tomcat8CommitSessionOutputBuffer.java | 60 .../catalina/Tomcat8CommitSessionValve.java| 59 .../catalina/Tomcat8DeltaSessionManager.java | 8 +- .../session/catalina/DeltaSession8Test.java| 147 + .../Tomcat8CommitSessionOutputBufferTest.java | 77 + .../catalina/Tomcat8CommitSessionValveTest.java| 98 ++ ...st.java => Tomcat8DeltaSessionManagerTest.java} | 3 +- .../CommitSessionValveIntegrationTest.java | 52 .../session/catalina/DeltaSession9Test.java} | 40 +-- .../catalina/Tomcat9CommitSessionOutputBuffer.java | 53 .../catalina/Tomcat9CommitSessionValve.java| 58 .../catalina/Tomcat9DeltaSessionManager.java | 7 +- .../session/catalina/DeltaSession9Test.java| 147 + .../Tomcat9CommitSessionOutputBufferTest.java | 60 .../catalina/Tomcat9CommitSessionValveTest.java| 94 ++ ...st.java => Tomcat9DeltaSessionManagerTest.java} | 3 +- ...ionsJUnitTest.java => Tomcat6SessionsTest.java} | 4 +- .../catalina/AbstractCommitSessionValve.java | 83 + .../session/catalina/CommitSessionValve.java | 69 .../modules/session/catalina/DeltaSession.java | 346 - .../session/catalina/DeltaSessionManager.java | 130 java => DeltaSessionManagerConfiguration.java} | 46 ++- .../session/catalina/JvmRouteBinderValve.java | 10 +- .../{SessionManager.java => SessionCommitter.java} | 37 +-- .../modules/session/catalina/SessionManager.java | 4 + ...Manager.java => Tomcat6CommitSessionValve.java} | 36 +-- .../catalina/Tomcat6DeltaSessionManager.java | 7 +- .../callback/SessionExpirationCacheListener.java | 2 +- .../catalina/AbstractSessionCacheTest.java}| 26 +- .../catalina/ClientServerSessionCacheTest.java | 301 +- .../session/catalina/DeltaSessionFacadeTest.java} | 6 +- .../catalina/PeerToPeerSessionCacheTest.java} | 26 +- .../SessionExp
[geode] 01/11: Revert "GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled"
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit ccdb502dd7f94aecaa75cbace114518ce0ff09bc Author: Sarah AuthorDate: Mon Apr 12 09:22:03 2021 -0400 Revert "GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled" This reverts commit cab4bcfd8d95c2d70ca40ad50e2beb761c798ca0. --- .../modules/session/catalina/DeltaSession.java | 4 --- .../geode/session/tests/TomcatContainer.java | 15 - .../apache/geode/session/tests/TomcatInstall.java | 36 ++ .../apache/geode/session/tests/CargoTestBase.java | 9 +++--- .../tests/Tomcat6CachingClientServerTest.java | 2 +- .../session/tests/Tomcat6ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat6Test.java| 3 +- .../tests/Tomcat7CachingClientServerTest.java | 2 +- .../session/tests/Tomcat7ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat7Test.java| 3 +- .../tests/Tomcat8CachingClientServerTest.java | 2 +- .../session/tests/Tomcat8ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat8Test.java| 3 +- .../tests/Tomcat9CachingClientServerTest.java | 2 +- ...omcat9CachingClientServerValveDisabledTest.java | 28 - .../session/tests/Tomcat9ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat9Test.java| 3 +- .../Tomcat8ClientServerRollingUpgradeTest.java | 4 +-- ...omcatSessionBackwardsCompatibilityTestBase.java | 8 ++--- 19 files changed, 34 insertions(+), 102 deletions(-) diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java index 3d9e627..4e5e969 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java @@ -362,10 +362,6 @@ public class DeltaSession extends StandardSession @Override public void setMaxInactiveInterval(int interval) { super.setMaxInactiveInterval(interval); - -if (!isCommitEnabled() && id != null) { - putInRegion(getOperatingRegion(), true, null); -} } @Override diff --git a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java index b0d4168..38d262d 100644 --- a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java +++ b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java @@ -65,16 +65,17 @@ public class TomcatContainer extends ServerContainer { setConfigFile(contextXMLFile.getAbsolutePath(), DEFAULT_TOMCAT_XML_REPLACEMENT_DIR, DEFAULT_TOMCAT_CONTEXT_XML_REPLACEMENT_NAME); -if (install.getConnectionType() == ContainerInstall.ConnectionType.CLIENT_SERVER || -install.getConnectionType() == ContainerInstall.ConnectionType.CACHING_CLIENT_SERVER) { +if (install.getConnectionType() == ContainerInstall.ConnectionType.CLIENT_SERVER) { + // using proxy region, override the default client/server setting to set to false setCacheProperty("enableLocalCache", String.valueOf(install.getConnectionType().enableLocalCache())); +} else { + // using default, either setting it explicitly or leave it off should have the same effect + if (System.currentTimeMillis() % 2 == 0) { +setCacheProperty("enableLocalCache", +String.valueOf(install.getConnectionType().enableLocalCache())); + } } - -if (install.getCommitValve() != TomcatInstall.CommitValve.DEFAULT) { - setCacheProperty("enableCommitValve", install.getCommitValve().getValue()); -} - setCacheProperty("className", install.getContextSessionManagerClass()); // Deploy war file to container configuration diff --git a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java index af7d955..322558e 100644 --- a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java +++ b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java @@ -89,26 +89,6 @@ public class TomcatInstall extends ContainerInstall { } /** - * This determines the setting for 'enableCommitValve' in Tomcat's context.xml when configuring - * t
[geode] 09/11: GEODE-8513: Remove (de)serialization of local sessions. (#5532)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit 29bb5a2f94bcd5e5ab4c11ba211d2f564e75f165 Author: Jacob Barrett AuthorDate: Tue Sep 29 09:57:53 2020 -0700 GEODE-8513: Remove (de)serialization of local sessions. (#5532) * Removes query that resulted in casting issue in antlr. * Clears all locally cached entries. * Remove dead code and tests. (cherry picked from commit d4b9ecd8569281f257e384d397422e7ef4336fb9) --- .../catalina/AbstractDeltaSessionManagerTest.java | 223 + .../session/catalina/DeltaSessionManager.java | 354 + 2 files changed, 14 insertions(+), 563 deletions(-) diff --git a/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/AbstractDeltaSessionManagerTest.java b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/AbstractDeltaSessionManagerTest.java index d5fea45..c28256c 100644 --- a/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/AbstractDeltaSessionManagerTest.java +++ b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/AbstractDeltaSessionManagerTest.java @@ -17,50 +17,28 @@ package org.apache.geode.modules.session.catalina; import static org.apache.geode.modules.util.RegionConfiguration.DEFAULT_MAX_INACTIVE_INTERVAL; import static org.assertj.core.api.Assertions.assertThat; -import static org.assertj.core.api.Assertions.assertThatThrownBy; -import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.anyString; -import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; -import static org.mockito.Mockito.withSettings; import java.beans.PropertyChangeEvent; -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; import java.io.IOException; -import java.io.ObjectInputStream; -import java.io.ObjectOutputStream; import java.util.HashSet; import java.util.Set; import javax.servlet.http.HttpSession; import org.apache.catalina.Context; -import org.apache.catalina.Loader; import org.apache.catalina.Session; -import org.apache.catalina.session.StandardSession; import org.apache.juli.logging.Log; import org.junit.Test; import org.apache.geode.cache.Cache; import org.apache.geode.cache.Region; -import org.apache.geode.cache.query.FunctionDomainException; -import org.apache.geode.cache.query.NameResolutionException; -import org.apache.geode.cache.query.Query; -import org.apache.geode.cache.query.QueryInvocationTargetException; -import org.apache.geode.cache.query.SelectResults; -import org.apache.geode.cache.query.TypeMismatchException; -import org.apache.geode.cache.query.internal.InternalQueryService; -import org.apache.geode.cache.query.internal.LinkedResultSet; import org.apache.geode.internal.cache.GemFireCacheImpl; import org.apache.geode.modules.session.catalina.internal.DeltaSessionStatistics; @@ -217,142 +195,15 @@ public abstract class AbstractDeltaSessionManagerTest manager.unload()).isInstanceOf(IOException.class) -.hasMessage(exceptionMessage); - -verify((StandardSession) session, times(0)).writeObjectData(oos); -verify(bos).close(); -verify(fos).close(); - } - - @Test - public void unloadDoesNotWriteSessionToDiskAndClosesOutputStreamsWhenSessionIsWrongClass() - throws IOException, NameResolutionException, TypeMismatchException, - QueryInvocationTargetException, FunctionDomainException { -final String sessionId = "sessionId"; -final DeltaSession session = mock(DeltaSession.class); -final FileOutputStream fos = mock(FileOutputStream.class); -final BufferedOutputStream bos = mock(BufferedOutputStream.class); -final ObjectOutputStream oos = mock(ObjectOutputStream.class); - -prepareMocksForUnloadTest(sessionId, fos, bos, oos, session); - -final Session invalidSession = -mock(Session.class, withSettings().extraInterfaces(DeltaSessionInterface.class)); - -doReturn(invalidSession).when(manager).findSession(sessionId); - -assertThatThrownBy(() -> manager.unload()).isInstanceOf(IOException.class); - -verify((StandardSession) session, times(0)).writeObjectData(oos); -verify(oos).close(); - } - - @Test public void successfulUnloadWithClientServerSessionCachePerformsLocalDestroy() - throws IOException, NameResolutionException, TypeMismatchException, - QueryInvocationTa
[geode] 07/11: GEODE-8221: Commits session data prior to sending output to browser (#5246)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit 8c849ec535540d1643369f59b5653aed5ba809cb Author: Jacob Barrett AuthorDate: Fri Jun 19 10:38:46 2020 -0700 GEODE-8221: Commits session data prior to sending output to browser (#5246) * Refactors abstraction of CommitSessionValve. * Wraps Coyote OutputBuffer to commit sessions when data is sent to client. (cherry picked from commit 9939cc0f2f1caad051bd104a0a06a4e1737d3830) --- ...AbstractCommitSessionValveIntegrationTest.java} | 42 +- .../AbstractSessionValveIntegrationTest.java | 0 extensions/geode-modules-tomcat7/build.gradle | 1 + .../CommitSessionValveIntegrationTest.java | 57 + .../catalina/Tomcat7CommitSessionOutputBuffer.java | 53 .../catalina/Tomcat7CommitSessionValve.java| 58 + .../catalina/Tomcat7DeltaSessionManager.java | 12 ++- .../Tomcat7CommitSessionOutputBufferTest.java | 63 ++ .../catalina/Tomcat7CommitSessionValveTest.java| 98 ++ .../CommitSessionValveIntegrationTest.java | 57 + .../modules/session/catalina/DeltaSession8.java| 1 + .../catalina/Tomcat8CommitSessionOutputBuffer.java | 60 + .../catalina/Tomcat8CommitSessionValve.java| 59 + .../catalina/Tomcat8DeltaSessionManager.java | 8 +- .../Tomcat8CommitSessionOutputBufferTest.java | 77 + .../catalina/Tomcat8CommitSessionValveTest.java| 98 ++ .../CommitSessionValveIntegrationTest.java | 52 .../catalina/Tomcat9CommitSessionOutputBuffer.java | 53 .../catalina/Tomcat9CommitSessionValve.java| 58 + .../catalina/Tomcat9DeltaSessionManager.java | 7 +- .../Tomcat9CommitSessionOutputBufferTest.java | 60 + .../catalina/Tomcat9CommitSessionValveTest.java| 94 + .../catalina/AbstractCommitSessionValve.java | 83 ++ .../session/catalina/CommitSessionValve.java | 69 --- .../session/catalina/DeltaSessionManager.java | 9 +- .../session/catalina/SessionCommitter.java}| 26 ++ .../catalina/Tomcat6CommitSessionValve.java} | 26 ++ .../catalina/Tomcat6DeltaSessionManager.java | 7 +- geode-assembly/geode-assembly-test/build.gradle| 2 + .../integrationTest/resources/assembly_content.txt | 6 +- 30 files changed, 1157 insertions(+), 139 deletions(-) diff --git a/extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/catalina/CommitSessionValveIntegrationTest.java b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/AbstractCommitSessionValveIntegrationTest.java similarity index 83% rename from extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/catalina/CommitSessionValveIntegrationTest.java rename to extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/AbstractCommitSessionValveIntegrationTest.java index c7e056e..7849d99 100644 --- a/extensions/geode-modules/src/integrationTest/java/org/apache/geode/modules/session/catalina/CommitSessionValveIntegrationTest.java +++ b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/AbstractCommitSessionValveIntegrationTest.java @@ -19,7 +19,6 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -35,35 +34,34 @@ import org.apache.catalina.Manager; import org.apache.catalina.connector.Request; import org.apache.catalina.connector.Response; import org.apache.juli.logging.Log; -import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.apache.geode.cache.RegionShortcut; @RunWith(JUnitParamsRunner.class) -public class CommitSessionValveIntegrationTest extends AbstractSessionValveIntegrationTest { - private Request request; - private Response response; - private TestValve testValve; - private CommitSessionValve commitSessionValve; - private DeltaSessionFacade deltaSessionFacade; - - @Before - public void setUp() { -request = spy(Request.class); -response = spy(Response.class); +public abstract class AbstractCommitSessionValveIntegrationTest> +extends AbstractSessionValveIntegrationTest { + protected Request request; + protected Response response; + protected final TestValve testValve; + protected final CommitSessionVal
[geode] 06/11: GEODE-7896 Update tomcat support
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit d5bc7e891fc4570ed57fcc8817972d3b13bd1bee Author: Anthony Baker AuthorDate: Wed May 13 12:04:43 2020 -0700 GEODE-7896 Update tomcat support Update tomcat integration to work with versions after 9.0.21. (cherry picked from commit 70fe060bbdba951512403cc0795f29bd2d7d21d6) --- .../gradle/plugins/DependencyConstraints.groovy| 2 +- .../modules/session/catalina/DeltaSession.java | 24 +- .../apache/geode/session/tests/TomcatInstall.java | 2 +- 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy b/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy index 9098324..ec8449e 100644 --- a/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy +++ b/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy @@ -53,7 +53,7 @@ class DependencyConstraints implements Plugin { deps.put("tomcat6.version", "6.0.37") deps.put("tomcat7.version", "7.0.99") deps.put("tomcat8.version", "8.5.50") -deps.put("tomcat9.version", "9.0.12") +deps.put("tomcat9.version", "9.0.33") // The jetty version is also hard-coded in geode-assembly:test // at o.a.g.sessions.tests.GenericAppServerInstall.java diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java index aa8b3f5..4e5e969 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java @@ -366,7 +366,29 @@ public class DeltaSession extends StandardSession @Override public void localUpdateAttribute(String name, Object value) { -super.setAttribute(name, value, false); // don't do notification since this is a replication +if (this.manager == null) { + // Name cannot be null + if (name == null) { +throw new IllegalArgumentException(sm.getString("standardSession.setAttribute.namenull")); + } + + // Null value is the same as removeAttribute() + if (value == null) { +removeAttribute(name); +return; + } + + // Validate our current state + if (!isValidInternal()) { +throw new IllegalStateException( +sm.getString("standardSession.setAttribute.ise", getIdInternal())); + } + + // Replace or add this attribute + getAttributes().put(name, value); +} else { + super.setAttribute(name, value, false); // don't do notification since this is a replication +} } @Override diff --git a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java index 90eeaa5..322558e 100644 --- a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java +++ b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java @@ -43,7 +43,7 @@ public class TomcatInstall extends ContainerInstall { TOMCAT6(6, "tomcat-6.0.37.zip"), TOMCAT7(7, "tomcat-7.0.99.zip"), TOMCAT8(8, "tomcat-8.5.50.zip"), -TOMCAT9(9, "tomcat-9.0.12.zip"); +TOMCAT9(9, "tomcat-9.0.33.zip"); private final int version;
[geode] 04/11: Revert "GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache"
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit 8d8705743b8f05c39e28bd1b554523c88ce3587f Author: Sarah AuthorDate: Mon Apr 12 09:22:48 2021 -0400 Revert "GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache" This reverts commit 4022403a996efd3235fa03cc62952c05675225c8. --- .../modules/session/catalina/DeltaSessionManager.java | 6 +- .../session/catalina/PeerToPeerSessionCache.java | 19 --- 2 files changed, 1 insertion(+), 24 deletions(-) diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java index e8fb0e2..2af36fe 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java @@ -550,11 +550,7 @@ public abstract class DeltaSessionManager extends ManagerBase TimerTask task = new TimerTask() { @Override public void run() { -int currentActiveSessions = 0; -try { - currentActiveSessions = getSessionCache().size(); -} catch (Exception ignore) { -} +int currentActiveSessions = getSessionCache().size(); if (currentActiveSessions > getMaxActive()) { setMaxActive(currentActiveSessions); if (getLogger().isDebugEnabled()) { diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java index 04e197d..d5031c1 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java @@ -27,8 +27,6 @@ import org.apache.geode.cache.execute.Execution; import org.apache.geode.cache.execute.Function; import org.apache.geode.cache.execute.FunctionService; import org.apache.geode.cache.execute.ResultCollector; -import org.apache.geode.distributed.internal.InternalDistributedSystem; -import org.apache.geode.internal.cache.InternalCache; import org.apache.geode.modules.session.catalina.callback.LocalSessionCacheLoader; import org.apache.geode.modules.session.catalina.callback.LocalSessionCacheWriter; import org.apache.geode.modules.session.catalina.callback.SessionExpirationCacheListener; @@ -49,7 +47,6 @@ public class PeerToPeerSessionCache extends AbstractSessionCache { public PeerToPeerSessionCache(SessionManager sessionManager, Cache cache) { super(sessionManager); this.cache = cache; -addReconnectListener(); } @Override @@ -245,20 +242,4 @@ public class PeerToPeerSessionCache extends AbstractSessionCache { Execution getExecutionForFunctionOnMembersWithArguments(Object[] arguments) { return FunctionService.onMembers().setArguments(arguments); } - - private void addReconnectListener() { -InternalDistributedSystem.addReconnectListener( -new InternalDistributedSystem.ReconnectListener() { - @Override - public void onReconnect(InternalDistributedSystem oldSystem, - InternalDistributedSystem newSystem) { -reinitialize(newSystem.getCache()); - } -}); - } - - private void reinitialize(InternalCache reconnectedCache) { -this.cache = reconnectedCache; -initialize(); - } }
[geode] 02/11: Revert "GEODE-8513: Remove (de)serialization of local sessions."
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit de2238da9d8db2fbfe8cd9f5832ce90e093e3560 Author: Sarah AuthorDate: Mon Apr 12 09:22:21 2021 -0400 Revert "GEODE-8513: Remove (de)serialization of local sessions." This reverts commit 247d373b8ee678e6cb3699047a5a0dcfc81f6d51. --- .../catalina/DeltaSessionManagerJUnitTest.java | 223 - .../session/catalina/DeltaSessionManager.java | 356 - 2 files changed, 565 insertions(+), 14 deletions(-) diff --git a/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManagerJUnitTest.java b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManagerJUnitTest.java index 835575b..fec8571 100644 --- a/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManagerJUnitTest.java +++ b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManagerJUnitTest.java @@ -17,28 +17,50 @@ package org.apache.geode.modules.session.catalina; import static org.apache.geode.modules.util.RegionConfiguration.DEFAULT_MAX_INACTIVE_INTERVAL; import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; +import static org.mockito.Mockito.withSettings; import java.beans.PropertyChangeEvent; +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; import java.util.HashSet; import java.util.Set; import javax.servlet.http.HttpSession; import org.apache.catalina.Context; +import org.apache.catalina.Loader; import org.apache.catalina.Session; +import org.apache.catalina.session.StandardSession; import org.apache.juli.logging.Log; import org.junit.Test; import org.apache.geode.cache.Cache; import org.apache.geode.cache.Region; +import org.apache.geode.cache.query.FunctionDomainException; +import org.apache.geode.cache.query.NameResolutionException; +import org.apache.geode.cache.query.Query; +import org.apache.geode.cache.query.QueryInvocationTargetException; +import org.apache.geode.cache.query.SelectResults; +import org.apache.geode.cache.query.TypeMismatchException; +import org.apache.geode.cache.query.internal.InternalQueryService; +import org.apache.geode.cache.query.internal.LinkedResultSet; import org.apache.geode.internal.cache.GemFireCacheImpl; import org.apache.geode.modules.session.catalina.internal.DeltaSessionStatistics; @@ -195,15 +217,142 @@ public abstract class DeltaSessionManagerJUnitTest { } @Test + public void loadActivatesAndAddsSingleSessionWithValidIdAndMoreRecentAccessTime() + throws IOException, ClassNotFoundException { +String contextPath = "contextPath"; +String expectedStoreDir = ""; +DeltaSession newSession = mock(DeltaSession.class); +DeltaSession existingSession = mock(DeltaSession.class); + +prepareMocksForLoadTest(contextPath, newSession, existingSession, expectedStoreDir); + +manager.load(); + +verify(newSession).activate(); +verify(manager).add(newSession); + } + + @Test + public void loadLogsWarningAndDoesNotAddSessionWhenSessionStoreNotFound() + throws IOException, ClassNotFoundException { +String contextPath = "contextPath"; +String expectedStoreDir = ""; +DeltaSession newSession = mock(DeltaSession.class); +DeltaSession existingSession = mock(DeltaSession.class); + +prepareMocksForLoadTest(contextPath, newSession, existingSession, expectedStoreDir); + +doReturn(null).when(manager).getFileAtPath(any(), any()); + +manager.load(); + +verify(logger).debug("No session store file found"); +verify(manager, times(0)).add(any()); + } + + @Test + public void loadDoesNotAddSessionToManagerWithValidIdAndLessRecentAccessTime() + throws IOException, ClassNotFoundException { +String contextPath = "contextPath"; +String expectedStoreDir = ""; +DeltaSession newSession = mock(DeltaSession.class); +DeltaSession existingSession = mock(DeltaSession.class); + +prepareMocksForLo
[geode] 03/11: Revert "GEODE-7896 Update tomcat support"
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git commit 618eea0dd393359f65802b5f73a917a2c1eb9f64 Author: Sarah AuthorDate: Mon Apr 12 09:22:35 2021 -0400 Revert "GEODE-7896 Update tomcat support" This reverts commit 937326e1f9717c3d9132d78a58e81db7bd6c929e. --- .../gradle/plugins/DependencyConstraints.groovy| 2 +- .../modules/session/catalina/DeltaSession.java | 24 +- .../apache/geode/session/tests/TomcatInstall.java | 2 +- 3 files changed, 3 insertions(+), 25 deletions(-) diff --git a/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy b/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy index ec8449e..9098324 100644 --- a/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy +++ b/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy @@ -53,7 +53,7 @@ class DependencyConstraints implements Plugin { deps.put("tomcat6.version", "6.0.37") deps.put("tomcat7.version", "7.0.99") deps.put("tomcat8.version", "8.5.50") -deps.put("tomcat9.version", "9.0.33") +deps.put("tomcat9.version", "9.0.12") // The jetty version is also hard-coded in geode-assembly:test // at o.a.g.sessions.tests.GenericAppServerInstall.java diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java index 4e5e969..aa8b3f5 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java @@ -366,29 +366,7 @@ public class DeltaSession extends StandardSession @Override public void localUpdateAttribute(String name, Object value) { -if (this.manager == null) { - // Name cannot be null - if (name == null) { -throw new IllegalArgumentException(sm.getString("standardSession.setAttribute.namenull")); - } - - // Null value is the same as removeAttribute() - if (value == null) { -removeAttribute(name); -return; - } - - // Validate our current state - if (!isValidInternal()) { -throw new IllegalStateException( -sm.getString("standardSession.setAttribute.ise", getIdInternal())); - } - - // Replace or add this attribute - getAttributes().put(name, value); -} else { - super.setAttribute(name, value, false); // don't do notification since this is a replication -} +super.setAttribute(name, value, false); // don't do notification since this is a replication } @Override diff --git a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java index 322558e..90eeaa5 100644 --- a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java +++ b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java @@ -43,7 +43,7 @@ public class TomcatInstall extends ContainerInstall { TOMCAT6(6, "tomcat-6.0.37.zip"), TOMCAT7(7, "tomcat-7.0.99.zip"), TOMCAT8(8, "tomcat-8.5.50.zip"), -TOMCAT9(9, "tomcat-9.0.33.zip"); +TOMCAT9(9, "tomcat-9.0.12.zip"); private final int version;
[geode] branch support/1.13 updated: GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/support/1.13 by this push: new cab4bcf GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled cab4bcf is described below commit cab4bcfd8d95c2d70ca40ad50e2beb761c798ca0 Author: Sarah AuthorDate: Fri Apr 9 09:29:50 2021 -0400 GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled Co-Authored-by: Jens Deppe Co-Authored-by: Sarah Abbey (cherry picked from commit ba8f9015530af10c3e9d1df1e73524bdc6c8a3cc) --- .../modules/session/catalina/DeltaSession.java | 4 +++ .../geode/session/tests/TomcatContainer.java | 15 + .../apache/geode/session/tests/TomcatInstall.java | 36 -- .../apache/geode/session/tests/CargoTestBase.java | 9 +++--- .../tests/Tomcat6CachingClientServerTest.java | 2 +- .../session/tests/Tomcat6ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat6Test.java| 3 +- .../tests/Tomcat7CachingClientServerTest.java | 2 +- .../session/tests/Tomcat7ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat7Test.java| 3 +- .../tests/Tomcat8CachingClientServerTest.java | 2 +- .../session/tests/Tomcat8ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat8Test.java| 3 +- .../tests/Tomcat9CachingClientServerTest.java | 2 +- ...mcat9CachingClientServerValveDisabledTest.java} | 4 +-- .../session/tests/Tomcat9ClientServerTest.java | 3 +- .../apache/geode/session/tests/Tomcat9Test.java| 3 +- .../Tomcat8ClientServerRollingUpgradeTest.java | 4 +-- ...omcatSessionBackwardsCompatibilityTestBase.java | 8 ++--- 19 files changed, 76 insertions(+), 36 deletions(-) diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java index 4e5e969..3d9e627 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java @@ -362,6 +362,10 @@ public class DeltaSession extends StandardSession @Override public void setMaxInactiveInterval(int interval) { super.setMaxInactiveInterval(interval); + +if (!isCommitEnabled() && id != null) { + putInRegion(getOperatingRegion(), true, null); +} } @Override diff --git a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java index 38d262d..b0d4168 100644 --- a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java +++ b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatContainer.java @@ -65,17 +65,16 @@ public class TomcatContainer extends ServerContainer { setConfigFile(contextXMLFile.getAbsolutePath(), DEFAULT_TOMCAT_XML_REPLACEMENT_DIR, DEFAULT_TOMCAT_CONTEXT_XML_REPLACEMENT_NAME); -if (install.getConnectionType() == ContainerInstall.ConnectionType.CLIENT_SERVER) { - // using proxy region, override the default client/server setting to set to false +if (install.getConnectionType() == ContainerInstall.ConnectionType.CLIENT_SERVER || +install.getConnectionType() == ContainerInstall.ConnectionType.CACHING_CLIENT_SERVER) { setCacheProperty("enableLocalCache", String.valueOf(install.getConnectionType().enableLocalCache())); -} else { - // using default, either setting it explicitly or leave it off should have the same effect - if (System.currentTimeMillis() % 2 == 0) { -setCacheProperty("enableLocalCache", -String.valueOf(install.getConnectionType().enableLocalCache())); - } } + +if (install.getCommitValve() != TomcatInstall.CommitValve.DEFAULT) { + setCacheProperty("enableCommitValve", install.getCommitValve().getValue()); +} + setCacheProperty("className", install.getContextSessionManagerClass()); // Deploy war file to container configuration diff --git a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java index 322558e..af7d955 100644 --- a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java +++ b/geode-assembly/geode-assembly-test/src/m
[geode] branch support/1.13 updated (937326e -> 247d373)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git. from 937326e GEODE-7896 Update tomcat support add 247d373 GEODE-8513: Remove (de)serialization of local sessions. No new revisions were added by this update. Summary of changes: .../catalina/DeltaSessionManagerJUnitTest.java | 223 + .../session/catalina/DeltaSessionManager.java | 356 + 2 files changed, 14 insertions(+), 565 deletions(-)
[geode] branch support/1.13 updated (4022403 -> 937326e)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git. from 4022403 GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache add 937326e GEODE-7896 Update tomcat support No new revisions were added by this update. Summary of changes: .../gradle/plugins/DependencyConstraints.groovy| 2 +- .../modules/session/catalina/DeltaSession.java | 24 +- .../apache/geode/session/tests/TomcatInstall.java | 2 +- 3 files changed, 25 insertions(+), 3 deletions(-)
[geode] branch support/1.13 updated: GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/support/1.13 by this push: new 4022403 GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache 4022403 is described below commit 4022403a996efd3235fa03cc62952c05675225c8 Author: Sarah AuthorDate: Fri Apr 9 09:27:12 2021 -0400 GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache (cherry picked from commit bda0d3fbf13ebdf37db8d710cf7f4d4b892a1646) Co-authored-by: Barry Oglesby --- .../modules/session/catalina/DeltaSessionManager.java | 6 +- .../session/catalina/PeerToPeerSessionCache.java | 19 +++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java index 2af36fe..e8fb0e2 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java @@ -550,7 +550,11 @@ public abstract class DeltaSessionManager extends ManagerBase TimerTask task = new TimerTask() { @Override public void run() { -int currentActiveSessions = getSessionCache().size(); +int currentActiveSessions = 0; +try { + currentActiveSessions = getSessionCache().size(); +} catch (Exception ignore) { +} if (currentActiveSessions > getMaxActive()) { setMaxActive(currentActiveSessions); if (getLogger().isDebugEnabled()) { diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java index d5031c1..04e197d 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java @@ -27,6 +27,8 @@ import org.apache.geode.cache.execute.Execution; import org.apache.geode.cache.execute.Function; import org.apache.geode.cache.execute.FunctionService; import org.apache.geode.cache.execute.ResultCollector; +import org.apache.geode.distributed.internal.InternalDistributedSystem; +import org.apache.geode.internal.cache.InternalCache; import org.apache.geode.modules.session.catalina.callback.LocalSessionCacheLoader; import org.apache.geode.modules.session.catalina.callback.LocalSessionCacheWriter; import org.apache.geode.modules.session.catalina.callback.SessionExpirationCacheListener; @@ -47,6 +49,7 @@ public class PeerToPeerSessionCache extends AbstractSessionCache { public PeerToPeerSessionCache(SessionManager sessionManager, Cache cache) { super(sessionManager); this.cache = cache; +addReconnectListener(); } @Override @@ -242,4 +245,20 @@ public class PeerToPeerSessionCache extends AbstractSessionCache { Execution getExecutionForFunctionOnMembersWithArguments(Object[] arguments) { return FunctionService.onMembers().setArguments(arguments); } + + private void addReconnectListener() { +InternalDistributedSystem.addReconnectListener( +new InternalDistributedSystem.ReconnectListener() { + @Override + public void onReconnect(InternalDistributedSystem oldSystem, + InternalDistributedSystem newSystem) { +reinitialize(newSystem.getCache()); + } +}); + } + + private void reinitialize(InternalCache reconnectedCache) { +this.cache = reconnectedCache; +initialize(); + } }
[geode] branch support/1.12 updated: GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.12 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/support/1.12 by this push: new 15a2adf GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache 15a2adf is described below commit 15a2adf58b33c0c70d0e47d417611b36bee74eaf Author: Sarah AuthorDate: Fri Apr 9 09:25:13 2021 -0400 GEODE-8781: Added ReconnectListener to PeerToPeerSessionCache (cherry picked from commit bda0d3fbf13ebdf37db8d710cf7f4d4b892a1646) Co-authored-by: Barry Oglesby --- .../modules/session/catalina/DeltaSessionManager.java | 6 +- .../session/catalina/PeerToPeerSessionCache.java | 19 +++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java index ec49b5d..0c6f1fd 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManager.java @@ -533,7 +533,11 @@ public abstract class DeltaSessionManager extends ManagerBase TimerTask task = new TimerTask() { @Override public void run() { -int currentActiveSessions = getSessionCache().size(); +int currentActiveSessions = 0; +try { + currentActiveSessions = getSessionCache().size(); +} catch (Exception ignore) { +} if (currentActiveSessions > getMaxActive()) { setMaxActive(currentActiveSessions); if (getLogger().isDebugEnabled()) { diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java index d5031c1..04e197d 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/PeerToPeerSessionCache.java @@ -27,6 +27,8 @@ import org.apache.geode.cache.execute.Execution; import org.apache.geode.cache.execute.Function; import org.apache.geode.cache.execute.FunctionService; import org.apache.geode.cache.execute.ResultCollector; +import org.apache.geode.distributed.internal.InternalDistributedSystem; +import org.apache.geode.internal.cache.InternalCache; import org.apache.geode.modules.session.catalina.callback.LocalSessionCacheLoader; import org.apache.geode.modules.session.catalina.callback.LocalSessionCacheWriter; import org.apache.geode.modules.session.catalina.callback.SessionExpirationCacheListener; @@ -47,6 +49,7 @@ public class PeerToPeerSessionCache extends AbstractSessionCache { public PeerToPeerSessionCache(SessionManager sessionManager, Cache cache) { super(sessionManager); this.cache = cache; +addReconnectListener(); } @Override @@ -242,4 +245,20 @@ public class PeerToPeerSessionCache extends AbstractSessionCache { Execution getExecutionForFunctionOnMembersWithArguments(Object[] arguments) { return FunctionService.onMembers().setArguments(arguments); } + + private void addReconnectListener() { +InternalDistributedSystem.addReconnectListener( +new InternalDistributedSystem.ReconnectListener() { + @Override + public void onReconnect(InternalDistributedSystem oldSystem, + InternalDistributedSystem newSystem) { +reinitialize(newSystem.getCache()); + } +}); + } + + private void reinitialize(InternalCache reconnectedCache) { +this.cache = reconnectedCache; +initialize(); + } }
[geode] branch support/1.12 updated: GEODE-7896 Update tomcat support (#6289)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.12 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/support/1.12 by this push: new bc05e41 GEODE-7896 Update tomcat support (#6289) bc05e41 is described below commit bc05e41217cd06197d566ac055d10216efae95df Author: BenjaminPerryRoss AuthorDate: Fri Apr 9 06:23:56 2021 -0700 GEODE-7896 Update tomcat support (#6289) Update tomcat integration to work with versions after 9.0.21. (cherry picked from commit 70fe060bbdba951512403cc0795f29bd2d7d21d6) Co-authored-by: Anthony Baker --- .../gradle/plugins/DependencyConstraints.groovy| 2 +- .../modules/session/catalina/DeltaSession.java | 24 +- .../apache/geode/session/tests/TomcatInstall.java | 2 +- 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy b/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy index c6758c5..c5c9d42 100644 --- a/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy +++ b/buildSrc/src/main/groovy/org/apache/geode/gradle/plugins/DependencyConstraints.groovy @@ -53,7 +53,7 @@ class DependencyConstraints implements Plugin { deps.put("tomcat6.version", "6.0.37") deps.put("tomcat7.version", "7.0.96") deps.put("tomcat8.version", "8.5.46") -deps.put("tomcat9.version", "9.0.12") +deps.put("tomcat9.version", "9.0.33") // The jetty version is also hard-coded in geode-assembly:test // at o.a.g.sessions.tests.GenericAppServerInstall.java diff --git a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java index aa8b3f5..4e5e969 100644 --- a/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java +++ b/extensions/geode-modules/src/main/java/org/apache/geode/modules/session/catalina/DeltaSession.java @@ -366,7 +366,29 @@ public class DeltaSession extends StandardSession @Override public void localUpdateAttribute(String name, Object value) { -super.setAttribute(name, value, false); // don't do notification since this is a replication +if (this.manager == null) { + // Name cannot be null + if (name == null) { +throw new IllegalArgumentException(sm.getString("standardSession.setAttribute.namenull")); + } + + // Null value is the same as removeAttribute() + if (value == null) { +removeAttribute(name); +return; + } + + // Validate our current state + if (!isValidInternal()) { +throw new IllegalStateException( +sm.getString("standardSession.setAttribute.ise", getIdInternal())); + } + + // Replace or add this attribute + getAttributes().put(name, value); +} else { + super.setAttribute(name, value, false); // don't do notification since this is a replication +} } @Override diff --git a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java index a7da1ff..572fa20 100644 --- a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java +++ b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java @@ -43,7 +43,7 @@ public class TomcatInstall extends ContainerInstall { TOMCAT6(6, "tomcat-6.0.37.zip"), TOMCAT7(7, "tomcat-7.0.96.zip"), TOMCAT8(8, "tomcat-8.5.46.zip"), -TOMCAT9(9, "tomcat-9.0.12.zip"); +TOMCAT9(9, "tomcat-9.0.33.zip"); private final int version;
[geode] branch support/1.12 updated: GEODE-8513: Remove (de)serialization of local sessions.
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.12 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/support/1.12 by this push: new 5eb8521 GEODE-8513: Remove (de)serialization of local sessions. 5eb8521 is described below commit 5eb8521253986c06b52ff02d00086380626bb262 Author: Sarah AuthorDate: Fri Apr 9 09:22:34 2021 -0400 GEODE-8513: Remove (de)serialization of local sessions. * Removes query that resulted in casting issue in antlr. * Clears all locally cached entries. * Remove dead code and tests. (cherry picked from commit d4b9ecd8569281f257e384d397422e7ef4336fb9) Co-authored-by: Jacob Barrett --- .../catalina/DeltaSessionManagerJUnitTest.java | 223 + .../session/catalina/DeltaSessionManager.java | 356 + 2 files changed, 14 insertions(+), 565 deletions(-) diff --git a/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManagerJUnitTest.java b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManagerJUnitTest.java index fec8571..835575b 100644 --- a/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManagerJUnitTest.java +++ b/extensions/geode-modules-test/src/main/java/org/apache/geode/modules/session/catalina/DeltaSessionManagerJUnitTest.java @@ -17,50 +17,28 @@ package org.apache.geode.modules.session.catalina; import static org.apache.geode.modules.util.RegionConfiguration.DEFAULT_MAX_INACTIVE_INTERVAL; import static org.assertj.core.api.Assertions.assertThat; -import static org.assertj.core.api.Assertions.assertThatThrownBy; -import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.anyString; -import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; -import static org.mockito.Mockito.withSettings; import java.beans.PropertyChangeEvent; -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; import java.io.IOException; -import java.io.ObjectInputStream; -import java.io.ObjectOutputStream; import java.util.HashSet; import java.util.Set; import javax.servlet.http.HttpSession; import org.apache.catalina.Context; -import org.apache.catalina.Loader; import org.apache.catalina.Session; -import org.apache.catalina.session.StandardSession; import org.apache.juli.logging.Log; import org.junit.Test; import org.apache.geode.cache.Cache; import org.apache.geode.cache.Region; -import org.apache.geode.cache.query.FunctionDomainException; -import org.apache.geode.cache.query.NameResolutionException; -import org.apache.geode.cache.query.Query; -import org.apache.geode.cache.query.QueryInvocationTargetException; -import org.apache.geode.cache.query.SelectResults; -import org.apache.geode.cache.query.TypeMismatchException; -import org.apache.geode.cache.query.internal.InternalQueryService; -import org.apache.geode.cache.query.internal.LinkedResultSet; import org.apache.geode.internal.cache.GemFireCacheImpl; import org.apache.geode.modules.session.catalina.internal.DeltaSessionStatistics; @@ -217,142 +195,15 @@ public abstract class DeltaSessionManagerJUnitTest { } @Test - public void loadActivatesAndAddsSingleSessionWithValidIdAndMoreRecentAccessTime() - throws IOException, ClassNotFoundException { -String contextPath = "contextPath"; -String expectedStoreDir = ""; -DeltaSession newSession = mock(DeltaSession.class); -DeltaSession existingSession = mock(DeltaSession.class); - -prepareMocksForLoadTest(contextPath, newSession, existingSession, expectedStoreDir); - -manager.load(); - -verify(newSession).activate(); -verify(manager).add(newSession); - } - - @Test - public void loadLogsWarningAndDoesNotAddSessionWhenSessionStoreNotFound() - throws IOException, ClassNotFoundException { -String contextPath = "contextPath"; -String expectedStoreDir = ""; -DeltaSession newSession = mock(DeltaSession.class); -DeltaSession existingSession = mock(DeltaSession.class); - -prepareMocksForLoadTest(contextPath, newSession, existingSession, expectedStoreDir); - -doReturn(null).when(manager).getFileAtPath(any(), any()); - -manager.load(); - -verify(logger).debug("No session store file found"); -verify(manager, ti
[geode] branch develop updated (69af78a -> 0abd766)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 69af78a GEODE-9041: Add albertogpz to several sections of CODEWATCHERS (#6145) add 0abd766 GEODE-9043: A register interest attempt from a newer client to an older server throws a NoSubscriptionServersAvailableException instead of a ServerRefusedConnectionException No new revisions were added by this update. Summary of changes: ...dCompatibilityHigherVersionClientDUnitTest.java | 12 +++--- .../client/internal/QueueManagerJUnitTest.java | 28 ++ .../cache/client/internal/QueueManagerImpl.java| 4 +++- 3 files changed, 40 insertions(+), 4 deletions(-)
[geode] branch support/1.14 updated: GEODE-9009: Finish support for functionality compatible with Redis DECRBY command
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.14 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/support/1.14 by this push: new 7053443 GEODE-9009: Finish support for functionality compatible with Redis DECRBY command 7053443 is described below commit 70534438cc68bebfbdda75b7f567c1000f9d04db Author: John Hutchison AuthorDate: Tue Mar 16 10:57:53 2021 -0400 GEODE-9009: Finish support for functionality compatible with Redis DECRBY command (cherry-picked from <39c0abf96ae93a2a49fd0ab28ad2e96c1fa9e7a8>) --- .../internal/executor/string/StringsDUnitTest.java | 18 ++- .../string/AbstractDecrByIntegrationTest.java | 135 +++-- .../geode/redis/internal/RedisCommandType.java | 2 +- .../redis/internal/SupportedCommandsJUnitTest.java | 2 +- 4 files changed, 118 insertions(+), 39 deletions(-) diff --git a/geode-redis/src/distributedTest/java/org/apache/geode/redis/internal/executor/string/StringsDUnitTest.java b/geode-redis/src/distributedTest/java/org/apache/geode/redis/internal/executor/string/StringsDUnitTest.java index 2b18a13..b21fbed 100644 --- a/geode-redis/src/distributedTest/java/org/apache/geode/redis/internal/executor/string/StringsDUnitTest.java +++ b/geode-redis/src/distributedTest/java/org/apache/geode/redis/internal/executor/string/StringsDUnitTest.java @@ -98,7 +98,7 @@ public class StringsDUnitTest { } @Test - public void set_shoulddistributeDataAmongMultipleServers_givenMultipleClients() { + public void set_shouldDistributeDataAmongMultipleServers_givenMultipleClients() { List keys = makeStringList(LIST_SIZE, "key1-"); List values = makeStringList(LIST_SIZE, "values1-"); @@ -220,7 +220,7 @@ public class StringsDUnitTest { } @Test - public void decr_shouldDecrementWhileDoingConcurrentDecrs() { + public void decr_shouldDecrementWhileDoingConcurrentDecr() { String key = "key"; int initialValue = NUM_ITERATIONS * 2; jedis1.set(key, String.valueOf(initialValue)); @@ -234,6 +234,19 @@ public class StringsDUnitTest { } @Test + public void decrby_shouldDecrementReliably_givenConcurrentThreadsPerformingDecrby() { +String key = "key"; +int initialValue = NUM_ITERATIONS * 6; +jedis1.set(key, String.valueOf(initialValue)); + +new ConcurrentLoopingThreads(NUM_ITERATIONS, +(i) -> jedis1.decrBy(key, 4), +(i) -> jedis2.decrBy(key, 2)).run(); + +assertThat(jedis1.get(key)).isEqualTo("0"); + } + + @Test public void strLen_returnsStringLengthWhileUpdatingValues() { for (int i = 0; i < LIST_SIZE; i++) { jedis1.set("key-" + i, "value-" + i); @@ -257,6 +270,7 @@ public class StringsDUnitTest { } } + private List makeStringList(int setSize, String baseString) { List strings = new ArrayList<>(); for (int i = 0; i < setSize; i++) { diff --git a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/AbstractDecrByIntegrationTest.java b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/AbstractDecrByIntegrationTest.java index af7d3d0..8e7fb88 100755 --- a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/AbstractDecrByIntegrationTest.java +++ b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/AbstractDecrByIntegrationTest.java @@ -16,10 +16,12 @@ package org.apache.geode.redis.internal.executor.string; import static org.apache.geode.redis.RedisCommandArgumentsTestHelper.assertExactNumberOfArgs; import static org.apache.geode.redis.internal.RedisConstants.ERROR_NOT_INTEGER; +import static org.apache.geode.redis.internal.RedisConstants.ERROR_OVERFLOW; +import static org.apache.geode.redis.internal.RedisConstants.ERROR_WRONG_TYPE; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatThrownBy; -import java.util.Random; +import java.math.BigInteger; import org.junit.After; import org.junit.Before; @@ -33,13 +35,12 @@ import org.apache.geode.test.dunit.rules.RedisPortSupplier; public abstract class AbstractDecrByIntegrationTest implements RedisPortSupplier { private Jedis jedis; - private Random rand; + private static final int REDIS_CLIENT_TIMEOUT = Math.toIntExact(GeodeAwaitility.getTimeout().toMillis()); @Before public void setUp() { -rand = new Random(); jedis = new Jedis("localhost", getPort(), REDIS_CLIENT_TIMEOUT); } @@ -50,48 +51,112 @@ public abstract class AbstractDecrByIntegrationTest implements RedisPortSupplier } @Test - public void decrBy_errors_givenWrongNumberOfArguments() { + public void shouldDecrementByGivenAmount_given
[geode] branch develop updated (82bf1f9 -> 39c0abf)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 82bf1f9 GEODE-9000: Added logic to avoid NPE during processing Network Partition (#6129) add 39c0abf GEODE-9009: Finish support for functionality compatible with Redis DECRBY command No new revisions were added by this update. Summary of changes: .../internal/executor/string/StringsDUnitTest.java | 18 ++- .../string/AbstractDecrByIntegrationTest.java | 135 +++-- .../geode/redis/internal/RedisCommandType.java | 2 +- .../redis/internal/SupportedCommandsJUnitTest.java | 2 +- 4 files changed, 118 insertions(+), 39 deletions(-)
[geode] branch support/1.14 updated: GEODE-8864:finish implementation of Redis HScan Command
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.14 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/support/1.14 by this push: new 2653b64 GEODE-8864:finish implementation of Redis HScan Command 2653b64 is described below commit 2653b64f194a01225a742e01a074e8ca53d97614 Author: John Hutchison AuthorDate: Fri Mar 12 15:21:09 2021 -0500 GEODE-8864:finish implementation of Redis HScan Command --- .../geode/redis/ConcurrentLoopingThreads.java | 20 +- .../test/dunit/rules/RedisClusterStartupRule.java | 15 + .../internal/executor/hash/HScanDunitTest.java | 235 ++ .../hash/AbstractHScanIntegrationTest.java | 339 +++-- .../executor/hash/HScanIntegrationTest.java| 56 +++- .../geode/redis/internal/RedisCommandType.java | 9 +- .../geode/redis/internal/data/RedisHash.java | 216 +++-- .../data/RedisHashCommandsFunctionExecutor.java| 8 +- .../redis/internal/executor/CommandFunction.java | 7 +- .../redis/internal/executor/RedisResponse.java | 4 +- .../internal/executor/hash/HScanExecutor.java | 28 +- .../internal/executor/hash/RedisHashCommands.java | 6 +- .../hash/RedisHashCommandsFunctionInvoker.java | 9 +- .../apache/geode/redis/internal/netty/Client.java | 8 + .../internal/netty/ExecutionHandlerContext.java| 15 +- .../redis/internal/SupportedCommandsJUnitTest.java | 4 +- .../geode/redis/internal/data/RedisHashTest.java | 114 ++- 17 files changed, 907 insertions(+), 186 deletions(-) diff --git a/geode-redis/src/commonTest/java/org/apache/geode/redis/ConcurrentLoopingThreads.java b/geode-redis/src/commonTest/java/org/apache/geode/redis/ConcurrentLoopingThreads.java index 7a8347b..f2302f5 100644 --- a/geode-redis/src/commonTest/java/org/apache/geode/redis/ConcurrentLoopingThreads.java +++ b/geode-redis/src/commonTest/java/org/apache/geode/redis/ConcurrentLoopingThreads.java @@ -23,6 +23,8 @@ import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; import java.util.function.Consumer; import java.util.stream.Collectors; @@ -63,13 +65,19 @@ public class ConcurrentLoopingThreads { * operations. */ public void await() { -loopingFutures.forEach(loopingThread -> { - try { -loopingThread.get(); - } catch (InterruptedException | ExecutionException e) { -throw new RuntimeException(e); +boolean timeOutExceptionThrown; +do { + timeOutExceptionThrown = false; + for (Future loopingThread : loopingFutures) { +try { + loopingThread.get(1, TimeUnit.SECONDS); +} catch (TimeoutException e) { + timeOutExceptionThrown = true; +} catch (InterruptedException | ExecutionException e) { + throw new RuntimeException(e); +} } -}); +} while (timeOutExceptionThrown); } /** diff --git a/geode-redis/src/commonTest/java/org/apache/geode/test/dunit/rules/RedisClusterStartupRule.java b/geode-redis/src/commonTest/java/org/apache/geode/test/dunit/rules/RedisClusterStartupRule.java index 787cc67..39faa8c 100644 --- a/geode-redis/src/commonTest/java/org/apache/geode/test/dunit/rules/RedisClusterStartupRule.java +++ b/geode-redis/src/commonTest/java/org/apache/geode/test/dunit/rules/RedisClusterStartupRule.java @@ -41,6 +41,13 @@ public class RedisClusterStartupRule extends ClusterStartupRule { .withConnectionToLocator(locatorPort)); } + + public MemberVM startRedisVM(int index, String redisPort, int... locatorPort) { +return startServerVM(index, r -> withRedis(r, redisPort) +.withConnectionToLocator(locatorPort)); + } + + public MemberVM startRedisVM(int index, Properties properties, int... locatorPort) { return startServerVM(index, x -> withRedis(x) .withProperties(properties) @@ -59,6 +66,14 @@ public class RedisClusterStartupRule extends ClusterStartupRule { "true"); } + private ServerStarterRule withRedis(ServerStarterRule rule, String redisPort) { +return rule.withProperty(REDIS_BIND_ADDRESS, "localhost") +.withProperty(REDIS_PORT, redisPort) +.withProperty(REDIS_ENABLED, "true") + .withSystemProperty(GeodeRedisServer.ENABLE_REDIS_UNSUPPORTED_COMMANDS_PARAM, +"true"); + } + public int getRedisPort(int vmNumber) { return getRedisPort(getMember(vmNumber)); } diff --git a/geode-redis/src/distributedTest/java/org/apache/geode/redis/internal/executor/hash/HScanDunitTest.java b/geode-redis/src/distributedTest/java/org/apache/geode/redis/internal/executor/ha
[geode] branch develop updated (08da3aa -> 58116cc)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 08da3aa GEODE-8965: Support Redis-style OOM error message (#6085) add 58116cc GEODE-9001: Update Documents to be match recent code changes in compatible-with-redis commands No new revisions were added by this update. Summary of changes: .../tools_modules/redis_api_for_geode.html.md.erb | 10 +- geode-redis/README.md | 349 +++-- 2 files changed, 181 insertions(+), 178 deletions(-)
[geode] branch support/1.14 updated: GEODE-8859: Fix redis-compatability data structure bucket memory-usage reporting
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch support/1.14 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/support/1.14 by this push: new 5f0ccf3 GEODE-8859: Fix redis-compatability data structure bucket memory-usage reporting 5f0ccf3 is described below commit 5f0ccf3712a986eabea274ae973d8a20009d95f9 Author: John Hutchison AuthorDate: Thu Mar 11 10:46:11 2021 -0500 GEODE-8859: Fix redis-compatability data structure bucket memory-usage reporting --- .../test/dunit/rules/RedisClusterStartupRule.java | 7 ++ .../data/PartitionedRegionStatsUpdateTest.java | 76 ++ .../geode/redis/internal/GeodeRedisServer.java | 8 +++ .../geode/redis/internal/GeodeRedisService.java| 6 ++ .../geode/redis/internal/data/RedisData.java | 4 ++ 5 files changed, 101 insertions(+) diff --git a/geode-redis/src/commonTest/java/org/apache/geode/test/dunit/rules/RedisClusterStartupRule.java b/geode-redis/src/commonTest/java/org/apache/geode/test/dunit/rules/RedisClusterStartupRule.java index f4f6eab..787cc67 100644 --- a/geode-redis/src/commonTest/java/org/apache/geode/test/dunit/rules/RedisClusterStartupRule.java +++ b/geode-redis/src/commonTest/java/org/apache/geode/test/dunit/rules/RedisClusterStartupRule.java @@ -63,6 +63,13 @@ public class RedisClusterStartupRule extends ClusterStartupRule { return getRedisPort(getMember(vmNumber)); } + public Long getDataStoreBytesInUseForDataRegion(MemberVM vm) { +return vm.invoke(() -> { + GeodeRedisService service = ClusterStartupRule.getCache().getService(GeodeRedisService.class); + return service.getDataStoreBytesInUseForDataRegion(); +}); + } + public int getRedisPort(MemberVM vm) { return vm.invoke(() -> { GeodeRedisService service = ClusterStartupRule.getCache().getService(GeodeRedisService.class); diff --git a/geode-redis/src/distributedTest/java/org/apache/geode/redis/internal/data/PartitionedRegionStatsUpdateTest.java b/geode-redis/src/distributedTest/java/org/apache/geode/redis/internal/data/PartitionedRegionStatsUpdateTest.java new file mode 100644 index 000..5c28fca --- /dev/null +++ b/geode-redis/src/distributedTest/java/org/apache/geode/redis/internal/data/PartitionedRegionStatsUpdateTest.java @@ -0,0 +1,76 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + * + */ + + +package org.apache.geode.redis.internal.data; + +import static org.apache.geode.distributed.ConfigurationProperties.MAX_WAIT_TIME_RECONNECT; +import static org.assertj.core.api.Assertions.assertThat; + +import java.util.Properties; + +import org.junit.BeforeClass; +import org.junit.ClassRule; +import org.junit.Test; +import redis.clients.jedis.Jedis; + +import org.apache.geode.test.awaitility.GeodeAwaitility; +import org.apache.geode.test.dunit.rules.MemberVM; +import org.apache.geode.test.dunit.rules.RedisClusterStartupRule; + +public class PartitionedRegionStatsUpdateTest { + + @ClassRule + public static RedisClusterStartupRule clusterStartUpRule = new RedisClusterStartupRule(2); + + private static MemberVM server1; + private static final String LOCAL_HOST = "127.0.0.1"; + private static final int JEDIS_TIMEOUT = + Math.toIntExact(GeodeAwaitility.getTimeout().toMillis()); + + private static Jedis jedis1; + + @BeforeClass + public static void classSetup() { +Properties locatorProperties = new Properties(); +locatorProperties.setProperty(MAX_WAIT_TIME_RECONNECT, "15000"); + +MemberVM locator = clusterStartUpRule.startLocatorVM(0, locatorProperties); +int locatorPort = locator.getPort(); + +server1 = clusterStartUpRule.startRedisVM(1, locatorPort); +int redisServerPort1 = clusterStartUpRule.getRedisPort(1); + +jedis1 = new Jedis(LOCAL_HOST, redisServerPort1, JEDIS_TIMEOUT); + } + + @Test + public void should_showIncreaseInDatastoreBytesInUse_givenValueSizeIncreases() { +String KEY = "key"; +String LONG_APPEND_VALUE = String.valueOf(Integer.MAX_VALUE); +jedis1.s
[geode] branch develop updated (abddba5 -> 4a3f039)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from abddba5 GEODE-8855: fix hitmiss and stats integration tests (#5937) add 4a3f039 GEODE-8858: unit/integration tests for HSETNX (#5940) No new revisions were added by this update. Summary of changes: .../hash/AbstractHashesIntegrationTest.java| 34 ++ 1 file changed, 34 insertions(+)
[geode] branch feature/introduce-codeowners updated: Volunteering for Redis and Session State
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a commit to branch feature/introduce-codeowners in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/feature/introduce-codeowners by this push: new 51a97fd Volunteering for Redis and Session State 51a97fd is described below commit 51a97fd67e557ea962a0e9665dad1065648820d0 Author: Sarah AuthorDate: Mon Dec 14 10:21:02 2020 -0500 Volunteering for Redis and Session State --- CODEOWNERS | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CODEOWNERS b/CODEOWNERS index 045fad7..029d24f 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -137,8 +137,8 @@ CODEOWNERS @apache/geode-committers # # Session State: # -#extensions/** -#geode-core/**/org/apache/geode/internal/modules/util/** +#extensions/**@sabbey37 +#geode-core/**/org/apache/geode/internal/modules/util/** @sabbey37 # # DEV rest API @@ -275,7 +275,7 @@ CODEOWNERS @apache/geode-committers # # Redis API # -#geode-redis/** +geode-redis/** @sabbey37 # # Build and tooling
[geode] branch develop updated: GEODE-8732: Update Tomcat9 module to publish to Maven (#5762)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 49e4700 GEODE-8732: Update Tomcat9 module to publish to Maven (#5762) 49e4700 is described below commit 49e47004b8a7b948f6d44e1002cfbdb0d67f0f12 Author: Sarah <41928668+sabbe...@users.noreply.github.com> AuthorDate: Fri Nov 20 09:27:59 2020 -0500 GEODE-8732: Update Tomcat9 module to publish to Maven (#5762) --- .../src/test/resources/expected-pom.xml| 6 +++ extensions/geode-modules-tomcat9/build.gradle | 1 + .../src/test/resources/expected-pom.xml| 60 ++ 3 files changed, 67 insertions(+) diff --git a/boms/geode-all-bom/src/test/resources/expected-pom.xml b/boms/geode-all-bom/src/test/resources/expected-pom.xml index 90b414a..6f52548 100644 --- a/boms/geode-all-bom/src/test/resources/expected-pom.xml +++ b/boms/geode-all-bom/src/test/resources/expected-pom.xml @@ -1077,6 +1077,12 @@ org.apache.geode +geode-modules-tomcat9 +${version} +compile + + +org.apache.geode geode-lucene-test ${version} compile diff --git a/extensions/geode-modules-tomcat9/build.gradle b/extensions/geode-modules-tomcat9/build.gradle index 8c8fa05..6e47b1c 100644 --- a/extensions/geode-modules-tomcat9/build.gradle +++ b/extensions/geode-modules-tomcat9/build.gradle @@ -19,6 +19,7 @@ import org.apache.geode.gradle.plugins.DependencyConstraints apply from: "${rootDir}/${scriptDir}/standard-subproject-configuration.gradle" apply from: "${rootDir}/${scriptDir}/warnings.gradle" +apply from: "${rootDir}/${scriptDir}/publish-java.gradle" evaluationDependsOn(":geode-core") diff --git a/extensions/geode-modules-tomcat9/src/test/resources/expected-pom.xml b/extensions/geode-modules-tomcat9/src/test/resources/expected-pom.xml new file mode 100644 index 000..6187a17 --- /dev/null +++ b/extensions/geode-modules-tomcat9/src/test/resources/expected-pom.xml @@ -0,0 +1,60 @@ + +http://maven.apache.org/POM/4.0.0"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd";> + + 4.0.0 + org.apache.geode + geode-modules-tomcat9 + ${version} + Apache Geode + Apache Geode provides a database-like consistency model, reliable transaction processing and a shared-nothing architecture to maintain very low latency performance with high concurrency processing + http://geode.apache.org + + + The Apache Software License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0.txt + + + +scm:git:https://github.com:apache/geode.git + scm:git:https://github.com:apache/geode.git +https://github.com/apache/geode + + + + +org.apache.geode +geode-all-bom +${version} +pom +import + + + + + + org.apache.geode + geode-core + compile + + + org.apache.geode + geode-modules + compile + + +
[geode] branch develop updated (475dce8 -> 0b18786)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 475dce8 GEODE-8643: Fix IllegalArgumentException in ParallelGatewaySenderQueu… (#5653) add 0b18786 GEODE-8711: Enable SLOWLOG Redis command (#5749) No new revisions were added by this update. Summary of changes: .../tools_modules/redis_api_for_geode.html.md.erb | 3 +- geode-redis/README.md | 21 ++- java => SlowlogNativeRedisAcceptanceTest.java} | 3 +- .../server/AbstractSlowlogIntegrationTest.java | 151 + ...rationTest.java => SlowlogIntegrationTest.java} | 7 +- .../SlowlogParameterRequirements.java | 62 + .../geode/redis/internal/RedisCommandType.java | 4 +- .../geode/redis/internal/RedisConstants.java | 3 +- .../internal/executor/server/SlowlogExecutor.java | 17 ++- .../redis/internal/SupportedCommandsJUnitTest.java | 2 +- 10 files changed, 244 insertions(+), 29 deletions(-) copy geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/server/{DBSizeNativeRedisAcceptanceTest.java => SlowlogNativeRedisAcceptanceTest.java} (92%) create mode 100644 geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/server/AbstractSlowlogIntegrationTest.java copy geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/server/{InfoIntegrationTest.java => SlowlogIntegrationTest.java} (89%) create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/ParameterRequirements/SlowlogParameterRequirements.java
[geode] branch develop updated (2053a5d -> 9a2c0d4)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 2053a5d GEODE-8718: Bump shiro from 1.6.0 to 1.7.0 add 9a2c0d4 GEODE-8704: many CI failures in Jetty9CachingClientServerTest (#5754) No new revisions were added by this update. Summary of changes: .../session/internal/filter/attributes/AbstractSessionAttributes.java | 4 .../src/main/java/org/apache/geode/session/tests/ServerContainer.java | 1 + .../org/apache/geode/session/tests/Jetty9CachingClientServerTest.java | 2 -- 3 files changed, 5 insertions(+), 2 deletions(-)
[geode] branch develop updated (403e19c -> 1bf18b2)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 403e19c GEODE-8697: Propagate ForcedDisconnectException to the user application (#5739) add 1bf18b2 GEODE-8706: Redis INFO command 'Keyspace' section should not be present if no keys in database (#5753) No new revisions were added by this update. Summary of changes: .../server/AbstractHitsMissesIntegrationTest.java | 32 +++--- .../server/AbstractInfoIntegrationTest.java| 21 ++ .../internal/executor/server/InfoExecutor.java | 17 3 files changed, 48 insertions(+), 22 deletions(-)
[geode] branch develop updated (403e19c -> 1bf18b2)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 403e19c GEODE-8697: Propagate ForcedDisconnectException to the user application (#5739) add 1bf18b2 GEODE-8706: Redis INFO command 'Keyspace' section should not be present if no keys in database (#5753) No new revisions were added by this update. Summary of changes: .../server/AbstractHitsMissesIntegrationTest.java | 32 +++--- .../server/AbstractInfoIntegrationTest.java| 21 ++ .../internal/executor/server/InfoExecutor.java | 17 3 files changed, 48 insertions(+), 22 deletions(-)
[geode] branch develop updated (f23e01a -> 8f8cc7b)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from f23e01a Revert "GEODE-8664: Nest errors in DistributionImpl.start (#5725)" (#5742) add 8f8cc7b GEODE-8704: many CI failures in Jetty9CachingClientServerTest (#5745) No new revisions were added by this update. Summary of changes: .../org/apache/geode/session/tests/Jetty9CachingClientServerTest.java | 2 ++ 1 file changed, 2 insertions(+)
[geode] branch develop updated (f23e01a -> 8f8cc7b)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from f23e01a Revert "GEODE-8664: Nest errors in DistributionImpl.start (#5725)" (#5742) add 8f8cc7b GEODE-8704: many CI failures in Jetty9CachingClientServerTest (#5745) No new revisions were added by this update. Summary of changes: .../org/apache/geode/session/tests/Jetty9CachingClientServerTest.java | 2 ++ 1 file changed, 2 insertions(+)
[geode] branch develop updated (ba8f901 -> c99087a)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from ba8f901 GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled (#5724) add c99087a GEODE-8692: ArrayIndexOutOfBoundsException may be thrown in RegionAdvisor.processProfilesQueuedDuringInitialization (#5722) No new revisions were added by this update. Summary of changes: .../internal/cache/partitioned/RegionAdvisor.java | 16 +++-- .../cache/partitioned/RegionAdvisorJUnitTest.java | 81 ++ 2 files changed, 93 insertions(+), 4 deletions(-) create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/RegionAdvisorJUnitTest.java
[geode] branch develop updated (ba8f901 -> c99087a)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from ba8f901 GEODE-8684: Setting a session's maxInactiveInterval does not work when the commit valve is disabled (#5724) add c99087a GEODE-8692: ArrayIndexOutOfBoundsException may be thrown in RegionAdvisor.processProfilesQueuedDuringInitialization (#5722) No new revisions were added by this update. Summary of changes: .../internal/cache/partitioned/RegionAdvisor.java | 16 +++-- .../cache/partitioned/RegionAdvisorJUnitTest.java | 81 ++ 2 files changed, 93 insertions(+), 4 deletions(-) create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/RegionAdvisorJUnitTest.java
[geode] branch develop updated: GEODE-8663: update Redis Info command To include additional statistics (#5678)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 e1f5518 GEODE-8663: update Redis Info command To include additional statistics (#5678) e1f5518 is described below commit e1f55187726c77a34d6204227be6336ef2aa9ec9 Author: John Hutchison AuthorDate: Mon Nov 9 11:07:54 2020 -0500 GEODE-8663: update Redis Info command To include additional statistics (#5678) Co-authored-by: Ray Ingles Co-authored-by: Hale Bales --- .../apache/geode/redis/GeodeRedisServerRule.java | 4 +- .../redis/internal/RedisStatsIntegrationTest.java | 505 - .../geode/redis/internal/GeodeRedisServer.java | 2 +- .../apache/geode/redis/internal/RedisStats.java| 185 ++-- .../geode/redis/internal/data/CommandHelper.java | 36 +- .../data/RedisKeyCommandsFunctionExecutor.java | 31 +- .../data/RedisStringCommandsFunctionExecutor.java | 1 - .../internal/executor/server/InfoExecutor.java | 79 +++- .../SlowlogExecutor.java} | 18 +- .../internal/executor/string/GetExecutor.java | 1 - .../redis/internal/netty/ByteToCommandDecoder.java | 17 +- .../internal/netty/ExecutionHandlerContext.java| 5 + .../redis/internal/netty/NettyRedisServer.java | 3 +- 13 files changed, 826 insertions(+), 61 deletions(-) diff --git a/geode-redis/src/commonTest/java/org/apache/geode/redis/GeodeRedisServerRule.java b/geode-redis/src/commonTest/java/org/apache/geode/redis/GeodeRedisServerRule.java index 80bedb9..3dc7b1b 100644 --- a/geode-redis/src/commonTest/java/org/apache/geode/redis/GeodeRedisServerRule.java +++ b/geode-redis/src/commonTest/java/org/apache/geode/redis/GeodeRedisServerRule.java @@ -32,9 +32,9 @@ public class GeodeRedisServerRule extends SerializableExternalResource { private GeodeRedisServer server; private CacheFactory cacheFactory; + public GeodeRedisServerRule() { cacheFactory = new CacheFactory(); - cacheFactory.set(LOG_LEVEL, "warn"); cacheFactory.set(MCAST_PORT, "0"); cacheFactory.set(LOCATORS, ""); @@ -47,6 +47,8 @@ public class GeodeRedisServerRule extends SerializableExternalResource { server.setAllowUnsupportedCommands(true); } + + public GeodeRedisServerRule withProperty(String property, String value) { cacheFactory.set(property, value); return this; diff --git a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/RedisStatsIntegrationTest.java b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/RedisStatsIntegrationTest.java index be8ba9e..ae90cd9 100644 --- a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/RedisStatsIntegrationTest.java +++ b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/RedisStatsIntegrationTest.java @@ -16,28 +16,521 @@ package org.apache.geode.redis.internal; import static org.assertj.core.api.Assertions.assertThat; +import java.time.Duration; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.atomic.AtomicReference; + +import com.google.common.util.concurrent.AtomicDouble; +import org.assertj.core.data.Offset; +import org.junit.After; +import org.junit.Before; +import org.junit.BeforeClass; import org.junit.ClassRule; import org.junit.Test; +import redis.clients.jedis.BitOP; import redis.clients.jedis.Jedis; +import org.apache.geode.internal.statistics.EnabledStatisticsClock; +import org.apache.geode.internal.statistics.StatisticsClock; import org.apache.geode.redis.GeodeRedisServerRule; import org.apache.geode.test.awaitility.GeodeAwaitility; public class RedisStatsIntegrationTest { + public static final int TIMEOUT = (int) GeodeAwaitility.getTimeout().toMillis(); + public static final String EXISTING_HASH_KEY = "Existing_Hash"; + public static final String EXISTING_STRING_KEY = "Existing_String"; + public static final String EXISTING_SET_KEY_1 = "Existing_Set_1"; + public static final String EXISTING_SET_KEY_2 = "Existing_Set_2"; + public static final String NONEXISTENT_KEY = "Nonexistent_Key"; + private Jedis jedis; + private RedisStats redisStats; + private static long START_TIME; + private static StatisticsClock statisticsClock; + + + @ClassRule public static GeodeRedisServerRule server = new GeodeRedisServerRule(); + @BeforeClass + public static void beforeClass() { +statisticsClock = new EnabledStatisticsClock(); +START_TIME = statisticsClock.getTime(); + } + + @Before + public void before() { +jedis = new Jedis("localhost", server.getPort(), TIMEOUT); + +jedis.set(EXISTING_STRING_KEY, "A_Value"); +je
[geode] branch develop updated (7f19d9c -> 63c6eb1)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 7f19d9c GEODE-8675: Log at query start when is enabled (#5690) add 63c6eb1 Geode-8677: Confirm binary data storage (#5696) No new revisions were added by this update. Summary of changes: .../executor/key/AbstractKeysIntegrationTest.java | 19 +- .../string/AbstractAppendIntegrationTest.java | 19 ++ .../string/AbstractGetRangeIntegrationTest.java| 71 ++ .../AbstractLettuceAppendIntegrationTest.java | 61 +++ .../string/AbstractStrLenIntegrationTest.java | 11 ...Test.java => LettuceAppendIntegrationTest.java} | 2 +- .../apache/geode/redis/internal/netty/Coder.java | 13 +--- 7 files changed, 181 insertions(+), 15 deletions(-) create mode 100644 geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/AbstractLettuceAppendIntegrationTest.java copy geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/{AppendIntegrationTest.java => LettuceAppendIntegrationTest.java} (92%)
[geode] branch develop updated (7f19d9c -> 63c6eb1)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 7f19d9c GEODE-8675: Log at query start when is enabled (#5690) add 63c6eb1 Geode-8677: Confirm binary data storage (#5696) No new revisions were added by this update. Summary of changes: .../executor/key/AbstractKeysIntegrationTest.java | 19 +- .../string/AbstractAppendIntegrationTest.java | 19 ++ .../string/AbstractGetRangeIntegrationTest.java| 71 ++ .../AbstractLettuceAppendIntegrationTest.java | 61 +++ .../string/AbstractStrLenIntegrationTest.java | 11 ...Test.java => LettuceAppendIntegrationTest.java} | 2 +- .../apache/geode/redis/internal/netty/Coder.java | 13 +--- 7 files changed, 181 insertions(+), 15 deletions(-) create mode 100644 geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/AbstractLettuceAppendIntegrationTest.java copy geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/{AppendIntegrationTest.java => LettuceAppendIntegrationTest.java} (92%)
[geode] branch develop updated: GEODE-8668: Implement Redis SELECT command (#5682)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 7e095b8 GEODE-8668: Implement Redis SELECT command (#5682) 7e095b8 is described below commit 7e095b8bd7e8a57e631415d32c3877e111353faf Author: Sarah <41928668+sabbe...@users.noreply.github.com> AuthorDate: Mon Nov 2 09:21:14 2020 -0500 GEODE-8668: Implement Redis SELECT command (#5682) --- .../tools_modules/redis_api_for_geode.html.md.erb | 2 +- geode-redis/README.md | 39 +++--- .../SelectNativeRedisAcceptanceTest.java | 33 .../connection/AbstractSelectIntegrationTest.java | 63 ++ .../executor/connection/SelectIntegrationTest.java | 44 +++ .../geode/redis/internal/RedisCommandType.java | 3 +- .../geode/redis/internal/RedisConstants.java | 1 + .../executor/connection/SelectExecutor.java| 38 + .../redis/internal/SupportedCommandsJUnitTest.java | 2 +- 9 files changed, 202 insertions(+), 23 deletions(-) diff --git a/geode-docs/tools_modules/redis_api_for_geode.html.md.erb b/geode-docs/tools_modules/redis_api_for_geode.html.md.erb index 6daa22f..6bc90d3 100644 --- a/geode-docs/tools_modules/redis_api_for_geode.html.md.erb +++ b/geode-docs/tools_modules/redis_api_for_geode.html.md.erb @@ -78,7 +78,7 @@ The following Redis API for <%=vars.product_name%> commands are **unsupported**. commands are available to use, but have not been fully tested. There is no guarantee they will work exactly as expected. -- **Connection**: ECHO +- **Connection**: ECHO, SELECT - **Hashes**: HDEL, HEXISTS, HGET, HINCRBY, HINCRBYFLOAT, HKEYS, HLEN, HMGET, HSCAN, HSETNX, HVALS - **Keys**: SCAN, UNLINK - **Server**: DBSIZE, FLUSHALL (no async option), FLUSHDB (no async option), SHUTDOWN, TIME diff --git a/geode-redis/README.md b/geode-redis/README.md index da17516..5133522 100644 --- a/geode-redis/README.md +++ b/geode-redis/README.md @@ -191,24 +191,24 @@ start server \ | | SCARD | CLUSTER ADDSLOTS | | | SDIFF | CLUSTER BUMPEPOCH | | | SDIFFSTORE | CLUSTER COUNT-FAILURE-REPORTS | -| | SETBIT | CLUSTER COUNTKEYSINSLOT | -| | SETEX | CLUSTER DELSLOTS | -| | SETNX | CLUSTER FAILOVER | -| | SETRANGE | CLUSTER FLUSHSLOTS| -| | SHUTDOWN | CLUSTER FORGET| -| | SINTER | CLUSTER GETKEYSINSLOT | -| | SINTERSTORE | CLUSTER INFO | -| | SISMEMBER | CLUSTER KEYSLOT | -| | SMOVE | CLUSTER MEET | -| | SPOP | CLUSTER MYID | -| | SRANDMEMBER | CLUSTER NODES | -| | SSCAN | CLUSTER REPLICAS | -| | STRLEN | CLUSTER REPLICATE | -| | SUNION | CLUSTER RESET | -| | SUNIONSTORE | CLUSTER SAVECONFIG| -| | TIME | CLUSTER SET-CONFIG-EPOCH | -| | UNLINK [1] | CLUSTER SETSLOT | -| | | CLUSTER SLAVES| +| | SELECT | CLUSTER COUNTKEYSINSLOT | +| | SETBIT | CLUS
[geode] branch develop updated (77ff68c -> 4ceabc8)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 77ff68c Revert "GEODE-8603: Potentially expand classes identified for CI stressing to include subclasses (#5601)" (#5671) add 4ceabc8 GEODE-8657: Increase acceptance test timeout (#5673) No new revisions were added by this update. Summary of changes: ci/pipelines/shared/jinja.variables.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[geode] branch develop updated (77ff68c -> 4ceabc8)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 77ff68c Revert "GEODE-8603: Potentially expand classes identified for CI stressing to include subclasses (#5601)" (#5671) add 4ceabc8 GEODE-8657: Increase acceptance test timeout (#5673) No new revisions were added by this update. Summary of changes: ci/pipelines/shared/jinja.variables.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[geode] branch develop updated (77ff68c -> 4ceabc8)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 77ff68c Revert "GEODE-8603: Potentially expand classes identified for CI stressing to include subclasses (#5601)" (#5671) add 4ceabc8 GEODE-8657: Increase acceptance test timeout (#5673) No new revisions were added by this update. Summary of changes: ci/pipelines/shared/jinja.variables.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[geode] branch develop updated (77ff68c -> 4ceabc8)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 77ff68c Revert "GEODE-8603: Potentially expand classes identified for CI stressing to include subclasses (#5601)" (#5671) add 4ceabc8 GEODE-8657: Increase acceptance test timeout (#5673) No new revisions were added by this update. Summary of changes: ci/pipelines/shared/jinja.variables.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[geode] branch develop updated (74a0d75 -> e3d157d)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 74a0d75 GEODE-8594: Create new DistributedMap for dunit (#5611) add e3d157d GEODE-8638: Match the way Redis 5.x handles HELLO (#5650) No new revisions were added by this update. Summary of changes: geode-redis/README.md| 3 +-- .../redis/internal/executor/AbstractUnknownIntegrationTest.java | 9 +++-- .../java/org/apache/geode/redis/internal/RedisCommandType.java | 1 - .../apache/geode/redis/internal/SupportedCommandsJUnitTest.java | 1 - 4 files changed, 8 insertions(+), 6 deletions(-)
[geode] branch develop updated (d436e8d -> 047f9a0)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from d436e8d GEODE-8622: Redis INCRBYFLOAT error messages are consistent with native Redis (#5636) add 047f9a0 GEODE-8632: Redis Unknown command error message has should have trailing space (#5646) No new revisions were added by this update. Summary of changes: .../internal/executor/AbstractUnknownIntegrationTest.java | 13 ++--- .../org/apache/geode/redis/internal/RedisConstants.java | 2 +- .../geode/redis/internal/executor/UnknownExecutor.java | 8 3 files changed, 15 insertions(+), 8 deletions(-)
[geode] branch develop updated (505eb3a -> 7a0fd2e)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 505eb3a GEODE-8620: Do not include non-created buckets in redundancy calculation (#5642) add 7a0fd2e GEODE-8627: Redis not unsubscribing and punsubscribing correctly when no channel/pattern provided (#5639) No new revisions were added by this update. Summary of changes: .../pubsub/AbstractPubSubIntegrationTest.java | 30 - .../AbstractSubscriptionsIntegrationTest.java | 122 ++--- .../geode/redis/mocks/DummySubscription.java | 7 +- .../internal/executor/connection/PingExecutor.java | 2 +- .../executor/pubsub/PunsubscribeExecutor.java | 26 +++-- .../executor/pubsub/UnsubscribeExecutor.java | 4 +- .../internal/netty/ExecutionHandlerContext.java| 2 +- .../redis/internal/pubsub/ChannelSubscription.java | 7 +- .../redis/internal/pubsub/PatternSubscription.java | 7 +- .../apache/geode/redis/internal/pubsub/PubSub.java | 14 ++- .../geode/redis/internal/pubsub/PubSubImpl.java| 12 +- .../geode/redis/internal/pubsub/Subscription.java | 12 +- .../sanctioned-geode-redis-serializables.txt | 1 + 13 files changed, 177 insertions(+), 69 deletions(-)
[geode] branch develop updated (505eb3a -> 7a0fd2e)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 505eb3a GEODE-8620: Do not include non-created buckets in redundancy calculation (#5642) add 7a0fd2e GEODE-8627: Redis not unsubscribing and punsubscribing correctly when no channel/pattern provided (#5639) No new revisions were added by this update. Summary of changes: .../pubsub/AbstractPubSubIntegrationTest.java | 30 - .../AbstractSubscriptionsIntegrationTest.java | 122 ++--- .../geode/redis/mocks/DummySubscription.java | 7 +- .../internal/executor/connection/PingExecutor.java | 2 +- .../executor/pubsub/PunsubscribeExecutor.java | 26 +++-- .../executor/pubsub/UnsubscribeExecutor.java | 4 +- .../internal/netty/ExecutionHandlerContext.java| 2 +- .../redis/internal/pubsub/ChannelSubscription.java | 7 +- .../redis/internal/pubsub/PatternSubscription.java | 7 +- .../apache/geode/redis/internal/pubsub/PubSub.java | 14 ++- .../geode/redis/internal/pubsub/PubSubImpl.java| 12 +- .../geode/redis/internal/pubsub/Subscription.java | 12 +- .../sanctioned-geode-redis-serializables.txt | 1 + 13 files changed, 177 insertions(+), 69 deletions(-)
[geode] branch develop updated (f5dabd2 -> f46d7ae)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from f5dabd2 GEODE-8585: Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters (#5627) add f46d7ae GEODE-8610: Add parameter checking to unsupported Redis commands (#5635) No new revisions were added by this update. Summary of changes: .../UnknownNativeRedisAcceptanceTest.java} | 24 +- .../connection/EchoNativeRedisAcceptanceTest.java} | 10 +- .../key/PExpireAtNativeRedisAcceptanceTest.java} | 11 +- .../server/DBSizeNativeRedisAcceptanceTest.java} | 9 +- .../server/FlushDBNativeRedisAcceptanceTest.java} | 9 +- .../server/ShutDownNativeRedisAcceptanceTest.java} | 9 +- ...st.java => AbstractUnknownIntegrationTest.java} | 29 +- .../internal/executor/UnknownIntegrationTest.java | 29 +- .../AbstractEchoIntegrationTest.java} | 37 +- .../EchoIntegrationTest.java} | 4 +- .../executor/key/AbstractDelIntegrationTest.java | 13 +- .../key/AbstractExistsIntegrationTest.java | 8 + .../key/AbstractExpireAtIntegrationTest.java | 42 ++- .../key/AbstractExpireIntegrationTest.java | 27 ++ .../executor/key/AbstractKeysIntegrationTest.java | 14 + java => AbstractPExpireAtIntegrationTest.java} | 74 +--- .../executor/key/AbstractPTTLIntegrationTest.java | 20 +- .../key/AbstractPersistIntegrationTest.java| 14 + .../key/AbstractPexpireIntegrationTest.java| 27 ++ .../executor/key/AbstractTTLIntegrationTest.java | 20 +- .../PExpireAtIntegrationTest.java} | 5 +- ...est.java => AbstractDBSizeIntegrationTest.java} | 16 +- .../server/AbstractFlushAllIntegrationTest.java| 11 +- ...st.java => AbstractFlushDBIntegrationTest.java} | 25 +- ...t.java => AbstractShutDownIntegrationTest.java} | 26 +- .../server/AbstractTimeIntegrationTest.java| 23 +- ...grationTest.java => DBSizeIntegrationTest.java} | 3 +- .../executor/server/FlushAllIntegrationTest.java | 6 + ...rationTest.java => FlushDBIntegrationTest.java} | 2 +- .../executor/server/ShutdownIntegrationTest.java | 36 +- .../executor/set/AbstractSDiffIntegrationTest.java | 26 +- .../set/AbstractSInterIntegrationTest.java | 29 +- .../set/AbstractSIsMemberIntegrationTest.java | 31 +- .../executor/set/AbstractSMoveIntegrationTest.java | 36 +- .../executor/set/AbstractSPopIntegrationTest.java | 28 +- .../executor/set/AbstractSRemIntegrationTest.java | 20 +- .../set/AbstractSUnionIntegrationTest.java | 26 +- .../executor/set/AbstractSetsIntegrationTest.java | 46 ++- .../string/AbstractBitCountIntegrationTest.java| 61 +--- .../string/AbstractBitOpIntegrationTest.java | 45 ++- .../string/AbstractBitPosIntegrationTest.java | 66 +++- .../string/AbstractDecrByIntegrationTest.java | 25 +- .../string/AbstractDecrIntegrationTest.java| 26 +- .../string/AbstractGetBitIntegrationTest.java | 24 +- .../string/AbstractGetIntegrationTest.java | 26 +- .../string/AbstractGetRangeIntegrationTest.java| 47 ++- .../string/AbstractGetSetIntegrationTest.java | 27 +- .../string/AbstractIncrByFloatIntegrationTest.java | 26 +- .../string/AbstractIncrByIntegrationTest.java | 25 +- .../string/AbstractIncrIntegrationTest.java| 26 +- .../string/AbstractMGetIntegrationTest.java| 13 +- .../string/AbstractMSetIntegrationTest.java| 31 +- .../string/AbstractMSetNXIntegrationTest.java | 27 +- .../string/AbstractPSetEXIntegrationTest.java | 32 +- .../string/AbstractSetBitIntegrationTest.java | 31 +- .../string/AbstractSetEXIntegrationTest.java | 31 +- .../string/AbstractSetIntegrationTest.java | 82 - .../string/AbstractSetNXIntegrationTest.java | 25 +- .../string/AbstractSetRangeIntegrationTest.java| 31 +- .../string/AbstractStrLenIntegrationTest.java | 18 +- .../MaximumParameterRequirements.java | 25 +- .../ParameterRequirements.java | 3 +- .../SpopParameterRequirements.java | 4 +- .../geode/redis/internal/RedisCommandType.java | 59 +-- .../geode/redis/internal/RedisConstants.java | 57 +-- .../redis/internal/executor/UnknownExecutor.java | 25 +- .../internal/executor/connection/EchoExecutor.java | 4 - .../internal/executor/key/ExpireExecutor.java | 1 + .../redis/internal/executor/key/PTTLExecutor.java | 1 + .../internal/executor/key/PersistExecutor.java | 11 +- .../internal/executor/server/FlushAllExecutor.java | 1 + .../internal/executor/string/BitCountExecutor.java | 5 - .../internal/executor/string/BitOpExecutor.java| 14 +- .../internal/executor/string/BitPosExecutor.java | 5 - .../int
[geode] branch develop updated (f0ee8e2 -> f5dabd2)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from f0ee8e2 GEODE-8621: Redis SPOP can return incorrect string type (#5634) add f5dabd2 GEODE-8585: Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters (#5627) No new revisions were added by this update. Summary of changes: ...st.java => HScanNativeRedisAcceptanceTest.java} | 2 +- ...st.java => SScanNativeRedisAcceptanceTest.java} | 2 +- .../hash/AbstractHScanIntegrationTest.java | 383 + .../HScanIntegrationTest.java} | 39 ++- .../executor/key/AbstractScanIntegrationTest.java | 211 +++- .../internal/executor/key/ScanIntegrationTest.java | 25 ++ .../executor/set/AbstractSScanIntegrationTest.java | 333 ++ .../SScanIntegrationTest.java} | 37 +- .../EvenParameterRequirements.java | 21 +- ...irements.java => OddParameterRequirements.java} | 28 +- .../geode/redis/internal/RedisCommandType.java | 29 +- .../geode/redis/internal/RedisConstants.java | 5 +- .../geode/redis/internal/data/NullRedisSet.java| 7 - .../geode/redis/internal/data/RedisHash.java | 61 ++-- .../data/RedisHashCommandsFunctionExecutor.java| 6 +- .../apache/geode/redis/internal/data/RedisSet.java | 56 +-- .../data/RedisSetCommandsFunctionExecutor.java | 7 +- .../redis/internal/executor/CommandFunction.java | 5 +- .../redis/internal/executor/RedisResponse.java | 10 +- .../internal/executor/hash/HScanExecutor.java | 109 +++--- .../internal/executor/hash/RedisHashCommands.java | 6 +- .../hash/RedisHashCommandsFunctionInvoker.java | 6 +- .../executor/key/AbstractScanExecutor.java | 9 +- .../redis/internal/executor/key/ScanExecutor.java | 117 --- .../internal/executor/set/RedisSetCommands.java| 6 +- .../set/RedisSetCommandsFunctionInvoker.java | 6 +- .../redis/internal/executor/set/SScanExecutor.java | 102 +++--- .../apache/geode/redis/internal/netty/Coder.java | 19 +- .../internal/netty/ExecutionHandlerContext.java| 31 ++ .../sanctioned-geode-redis-serializables.txt | 2 +- 30 files changed, 1370 insertions(+), 310 deletions(-) copy geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/hash/{HashesNativeRedisAcceptanceTest.java => HScanNativeRedisAcceptanceTest.java} (92%) copy geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/set/{SDiffNativeRedisAcceptanceTest.java => SScanNativeRedisAcceptanceTest.java} (92%) create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/hash/AbstractHScanIntegrationTest.java copy geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/{pubsub/SubscriptionsIntegrationTest.java => hash/HScanIntegrationTest.java} (55%) mode change 100644 => 100755 create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/set/AbstractSScanIntegrationTest.java copy geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/{pubsub/SubscriptionsIntegrationTest.java => set/SScanIntegrationTest.java} (57%) mode change 100644 => 100755 copy geode-redis/src/main/java/org/apache/geode/redis/internal/ParameterRequirements/{ExactParameterRequirements.java => OddParameterRequirements.java} (63%)
[geode] branch develop updated (f0ee8e2 -> f5dabd2)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from f0ee8e2 GEODE-8621: Redis SPOP can return incorrect string type (#5634) add f5dabd2 GEODE-8585: Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters (#5627) No new revisions were added by this update. Summary of changes: ...st.java => HScanNativeRedisAcceptanceTest.java} | 2 +- ...st.java => SScanNativeRedisAcceptanceTest.java} | 2 +- .../hash/AbstractHScanIntegrationTest.java | 383 + .../HScanIntegrationTest.java} | 39 ++- .../executor/key/AbstractScanIntegrationTest.java | 211 +++- .../internal/executor/key/ScanIntegrationTest.java | 25 ++ .../executor/set/AbstractSScanIntegrationTest.java | 333 ++ .../SScanIntegrationTest.java} | 37 +- .../EvenParameterRequirements.java | 21 +- ...irements.java => OddParameterRequirements.java} | 28 +- .../geode/redis/internal/RedisCommandType.java | 29 +- .../geode/redis/internal/RedisConstants.java | 5 +- .../geode/redis/internal/data/NullRedisSet.java| 7 - .../geode/redis/internal/data/RedisHash.java | 61 ++-- .../data/RedisHashCommandsFunctionExecutor.java| 6 +- .../apache/geode/redis/internal/data/RedisSet.java | 56 +-- .../data/RedisSetCommandsFunctionExecutor.java | 7 +- .../redis/internal/executor/CommandFunction.java | 5 +- .../redis/internal/executor/RedisResponse.java | 10 +- .../internal/executor/hash/HScanExecutor.java | 109 +++--- .../internal/executor/hash/RedisHashCommands.java | 6 +- .../hash/RedisHashCommandsFunctionInvoker.java | 6 +- .../executor/key/AbstractScanExecutor.java | 9 +- .../redis/internal/executor/key/ScanExecutor.java | 117 --- .../internal/executor/set/RedisSetCommands.java| 6 +- .../set/RedisSetCommandsFunctionInvoker.java | 6 +- .../redis/internal/executor/set/SScanExecutor.java | 102 +++--- .../apache/geode/redis/internal/netty/Coder.java | 19 +- .../internal/netty/ExecutionHandlerContext.java| 31 ++ .../sanctioned-geode-redis-serializables.txt | 2 +- 30 files changed, 1370 insertions(+), 310 deletions(-) copy geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/hash/{HashesNativeRedisAcceptanceTest.java => HScanNativeRedisAcceptanceTest.java} (92%) copy geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/set/{SDiffNativeRedisAcceptanceTest.java => SScanNativeRedisAcceptanceTest.java} (92%) create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/hash/AbstractHScanIntegrationTest.java copy geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/{pubsub/SubscriptionsIntegrationTest.java => hash/HScanIntegrationTest.java} (55%) mode change 100644 => 100755 create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/set/AbstractSScanIntegrationTest.java copy geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/{pubsub/SubscriptionsIntegrationTest.java => set/SScanIntegrationTest.java} (57%) mode change 100644 => 100755 copy geode-redis/src/main/java/org/apache/geode/redis/internal/ParameterRequirements/{ExactParameterRequirements.java => OddParameterRequirements.java} (63%)
[geode] branch develop updated (d2c1d67 -> 4c48202)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from d2c1d67 GEODE-8536: Allow limited retries when creating Lucene IndexWriter (#5589) add 4c48202 GEODE-8612: Remove unused Redis constants (#5628) No new revisions were added by this update. Summary of changes: .../geode/redis/internal/RedisConstants.java | 41 ++ .../internal/executor/key/ExpireAtExecutor.java| 10 +- .../internal/executor/key/ExpireExecutor.java | 10 +- .../internal/executor/key/PExpireAtExecutor.java | 5 --- .../internal/executor/key/PExpireExecutor.java | 5 --- .../redis/internal/executor/key/PTTLExecutor.java | 6 .../redis/internal/executor/key/TTLExecutor.java | 8 + 7 files changed, 5 insertions(+), 80 deletions(-)
[geode] branch develop updated: GEODE-8587: Redis glob pattern does not match carriage return, line feed, and tab (#5608)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 c9ba7fa GEODE-8587: Redis glob pattern does not match carriage return, line feed, and tab (#5608) c9ba7fa is described below commit c9ba7fa3566d0f32a5c009539130b7f60bb3b275 Author: Sarah <41928668+sabbe...@users.noreply.github.com> AuthorDate: Thu Oct 8 19:25:19 2020 -0400 GEODE-8587: Redis glob pattern does not match carriage return, line feed, and tab (#5608) --- .../internal/executor/key/AbstractKeysIntegrationTest.java | 10 ++ .../org/apache/geode/redis/internal/executor/GlobPattern.java | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractKeysIntegrationTest.java b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractKeysIntegrationTest.java index 22dc73f..6dce3ba 100644 --- a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractKeysIntegrationTest.java +++ b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractKeysIntegrationTest.java @@ -85,6 +85,16 @@ public abstract class AbstractKeysIntegrationTest implements RedisPortSupplier { } @Test + public void givenSplat_withCarriageReturnLineFeedAndTab_returnsExpectedMatches() { +jedis.set(" foo bar ", "123"); +jedis.set(" foo\r\nbar\r\n ", "456"); +jedis.set(" \r\n\t\\x07\\x13 ", "789"); + +assertThat(jedis.keys("*")).containsExactlyInAnyOrder(" \r\n\t\\x07\\x13 ", " foo\r\nbar\r\n ", +" foo bar "); + } + + @Test public void givenMalformedGlobPattern_returnsEmptySet() { assertThat(jedis.keys("[][]")).isEmpty(); } diff --git a/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/GlobPattern.java b/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/GlobPattern.java index 71ecaac..d492698 100644 --- a/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/GlobPattern.java +++ b/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/GlobPattern.java @@ -137,7 +137,7 @@ public class GlobPattern { regex.append(']'); } -return Pattern.compile(regex.toString()); +return Pattern.compile(regex.toString(), Pattern.DOTALL | Pattern.MULTILINE); } @Override
[geode] branch develop updated: GEODE-8587: Redis glob pattern does not match carriage return, line feed, and tab (#5608)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 c9ba7fa GEODE-8587: Redis glob pattern does not match carriage return, line feed, and tab (#5608) c9ba7fa is described below commit c9ba7fa3566d0f32a5c009539130b7f60bb3b275 Author: Sarah <41928668+sabbe...@users.noreply.github.com> AuthorDate: Thu Oct 8 19:25:19 2020 -0400 GEODE-8587: Redis glob pattern does not match carriage return, line feed, and tab (#5608) --- .../internal/executor/key/AbstractKeysIntegrationTest.java | 10 ++ .../org/apache/geode/redis/internal/executor/GlobPattern.java | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractKeysIntegrationTest.java b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractKeysIntegrationTest.java index 22dc73f..6dce3ba 100644 --- a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractKeysIntegrationTest.java +++ b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractKeysIntegrationTest.java @@ -85,6 +85,16 @@ public abstract class AbstractKeysIntegrationTest implements RedisPortSupplier { } @Test + public void givenSplat_withCarriageReturnLineFeedAndTab_returnsExpectedMatches() { +jedis.set(" foo bar ", "123"); +jedis.set(" foo\r\nbar\r\n ", "456"); +jedis.set(" \r\n\t\\x07\\x13 ", "789"); + +assertThat(jedis.keys("*")).containsExactlyInAnyOrder(" \r\n\t\\x07\\x13 ", " foo\r\nbar\r\n ", +" foo bar "); + } + + @Test public void givenMalformedGlobPattern_returnsEmptySet() { assertThat(jedis.keys("[][]")).isEmpty(); } diff --git a/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/GlobPattern.java b/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/GlobPattern.java index 71ecaac..d492698 100644 --- a/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/GlobPattern.java +++ b/geode-redis/src/main/java/org/apache/geode/redis/internal/executor/GlobPattern.java @@ -137,7 +137,7 @@ public class GlobPattern { regex.append(']'); } -return Pattern.compile(regex.toString()); +return Pattern.compile(regex.toString(), Pattern.DOTALL | Pattern.MULTILINE); } @Override
[geode] branch develop updated: GEODE-8582: Redis SCAN returns internal server error (#5603)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 bcdf3ca GEODE-8582: Redis SCAN returns internal server error (#5603) bcdf3ca is described below commit bcdf3ca64d8aca83cdd48629d8a35be6352d2861 Author: Sarah <41928668+sabbe...@users.noreply.github.com> AuthorDate: Thu Oct 8 09:35:05 2020 -0400 GEODE-8582: Redis SCAN returns internal server error (#5603) Co-authored-by: Darrel Schneider --- .../ScanNativeRedisAcceptanceTest.java}| 5 +- .../pubsub/PubSubNativeRedisAcceptanceTest.java| 2 + .../executor/key/AbstractScanIntegrationTest.java | 112 + .../executor/key/ScanIntegrationTest.java} | 11 +- .../redis/internal/executor/key/ScanExecutor.java | 37 +++ 5 files changed, 142 insertions(+), 25 deletions(-) diff --git a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java similarity index 87% copy from geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java copy to geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java index ce7778f..237d691 100644 --- a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java +++ b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java @@ -13,13 +13,14 @@ * the License. */ -package org.apache.geode.redis.internal.executor.pubsub; +package org.apache.geode.redis.internal.executor.key; import org.junit.ClassRule; import org.apache.geode.NativeRedisTestRule; -public class PubSubNativeRedisAcceptanceTest extends AbstractPubSubIntegrationTest { +public class ScanNativeRedisAcceptanceTest extends AbstractScanIntegrationTest { + @ClassRule public static NativeRedisTestRule redis = new NativeRedisTestRule(); diff --git a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java index ce7778f..772ebb1 100644 --- a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java +++ b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java @@ -16,9 +16,11 @@ package org.apache.geode.redis.internal.executor.pubsub; import org.junit.ClassRule; +import org.junit.Ignore; import org.apache.geode.NativeRedisTestRule; +@Ignore("GEODE-8577") public class PubSubNativeRedisAcceptanceTest extends AbstractPubSubIntegrationTest { @ClassRule public static NativeRedisTestRule redis = new NativeRedisTestRule(); diff --git a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java new file mode 100644 index 000..7ab33ba --- /dev/null +++ b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java @@ -0,0 +1,112 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.apache.geode.redis.internal.executor.key; + +import static org.assertj.core.api.Assertions.assertThat; + +import java.util.ArrayList; +import java.util.List; + +import org.junit.After; +import org.junit.Before; +import org.junit.Test; +import redis.clients.jedis.Jedis; +import redis.clients.jedis.ScanParams; +import redis.clients.jedis.ScanResult; + +import org.apache.geode.test.awaitility.GeodeAwaitility; +import org.apache.geode.test.dunit.rules.R
[geode] branch develop updated: GEODE-8582: Redis SCAN returns internal server error (#5603)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 bcdf3ca GEODE-8582: Redis SCAN returns internal server error (#5603) bcdf3ca is described below commit bcdf3ca64d8aca83cdd48629d8a35be6352d2861 Author: Sarah <41928668+sabbe...@users.noreply.github.com> AuthorDate: Thu Oct 8 09:35:05 2020 -0400 GEODE-8582: Redis SCAN returns internal server error (#5603) Co-authored-by: Darrel Schneider --- .../ScanNativeRedisAcceptanceTest.java}| 5 +- .../pubsub/PubSubNativeRedisAcceptanceTest.java| 2 + .../executor/key/AbstractScanIntegrationTest.java | 112 + .../executor/key/ScanIntegrationTest.java} | 11 +- .../redis/internal/executor/key/ScanExecutor.java | 37 +++ 5 files changed, 142 insertions(+), 25 deletions(-) diff --git a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java similarity index 87% copy from geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java copy to geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java index ce7778f..237d691 100644 --- a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java +++ b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java @@ -13,13 +13,14 @@ * the License. */ -package org.apache.geode.redis.internal.executor.pubsub; +package org.apache.geode.redis.internal.executor.key; import org.junit.ClassRule; import org.apache.geode.NativeRedisTestRule; -public class PubSubNativeRedisAcceptanceTest extends AbstractPubSubIntegrationTest { +public class ScanNativeRedisAcceptanceTest extends AbstractScanIntegrationTest { + @ClassRule public static NativeRedisTestRule redis = new NativeRedisTestRule(); diff --git a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java index ce7778f..772ebb1 100644 --- a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java +++ b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java @@ -16,9 +16,11 @@ package org.apache.geode.redis.internal.executor.pubsub; import org.junit.ClassRule; +import org.junit.Ignore; import org.apache.geode.NativeRedisTestRule; +@Ignore("GEODE-8577") public class PubSubNativeRedisAcceptanceTest extends AbstractPubSubIntegrationTest { @ClassRule public static NativeRedisTestRule redis = new NativeRedisTestRule(); diff --git a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java new file mode 100644 index 000..7ab33ba --- /dev/null +++ b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java @@ -0,0 +1,112 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.apache.geode.redis.internal.executor.key; + +import static org.assertj.core.api.Assertions.assertThat; + +import java.util.ArrayList; +import java.util.List; + +import org.junit.After; +import org.junit.Before; +import org.junit.Test; +import redis.clients.jedis.Jedis; +import redis.clients.jedis.ScanParams; +import redis.clients.jedis.ScanResult; + +import org.apache.geode.test.awaitility.GeodeAwaitility; +import org.apache.geode.test.dunit.rules.R
[geode] branch develop updated: GEODE-8582: Redis SCAN returns internal server error (#5603)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 bcdf3ca GEODE-8582: Redis SCAN returns internal server error (#5603) bcdf3ca is described below commit bcdf3ca64d8aca83cdd48629d8a35be6352d2861 Author: Sarah <41928668+sabbe...@users.noreply.github.com> AuthorDate: Thu Oct 8 09:35:05 2020 -0400 GEODE-8582: Redis SCAN returns internal server error (#5603) Co-authored-by: Darrel Schneider --- .../ScanNativeRedisAcceptanceTest.java}| 5 +- .../pubsub/PubSubNativeRedisAcceptanceTest.java| 2 + .../executor/key/AbstractScanIntegrationTest.java | 112 + .../executor/key/ScanIntegrationTest.java} | 11 +- .../redis/internal/executor/key/ScanExecutor.java | 37 +++ 5 files changed, 142 insertions(+), 25 deletions(-) diff --git a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java similarity index 87% copy from geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java copy to geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java index ce7778f..237d691 100644 --- a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java +++ b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java @@ -13,13 +13,14 @@ * the License. */ -package org.apache.geode.redis.internal.executor.pubsub; +package org.apache.geode.redis.internal.executor.key; import org.junit.ClassRule; import org.apache.geode.NativeRedisTestRule; -public class PubSubNativeRedisAcceptanceTest extends AbstractPubSubIntegrationTest { +public class ScanNativeRedisAcceptanceTest extends AbstractScanIntegrationTest { + @ClassRule public static NativeRedisTestRule redis = new NativeRedisTestRule(); diff --git a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java index ce7778f..772ebb1 100644 --- a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java +++ b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java @@ -16,9 +16,11 @@ package org.apache.geode.redis.internal.executor.pubsub; import org.junit.ClassRule; +import org.junit.Ignore; import org.apache.geode.NativeRedisTestRule; +@Ignore("GEODE-8577") public class PubSubNativeRedisAcceptanceTest extends AbstractPubSubIntegrationTest { @ClassRule public static NativeRedisTestRule redis = new NativeRedisTestRule(); diff --git a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java new file mode 100644 index 000..7ab33ba --- /dev/null +++ b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java @@ -0,0 +1,112 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.apache.geode.redis.internal.executor.key; + +import static org.assertj.core.api.Assertions.assertThat; + +import java.util.ArrayList; +import java.util.List; + +import org.junit.After; +import org.junit.Before; +import org.junit.Test; +import redis.clients.jedis.Jedis; +import redis.clients.jedis.ScanParams; +import redis.clients.jedis.ScanResult; + +import org.apache.geode.test.awaitility.GeodeAwaitility; +import org.apache.geode.test.dunit.rules.R
[geode] branch develop updated: GEODE-8582: Redis SCAN returns internal server error (#5603)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 bcdf3ca GEODE-8582: Redis SCAN returns internal server error (#5603) bcdf3ca is described below commit bcdf3ca64d8aca83cdd48629d8a35be6352d2861 Author: Sarah <41928668+sabbe...@users.noreply.github.com> AuthorDate: Thu Oct 8 09:35:05 2020 -0400 GEODE-8582: Redis SCAN returns internal server error (#5603) Co-authored-by: Darrel Schneider --- .../ScanNativeRedisAcceptanceTest.java}| 5 +- .../pubsub/PubSubNativeRedisAcceptanceTest.java| 2 + .../executor/key/AbstractScanIntegrationTest.java | 112 + .../executor/key/ScanIntegrationTest.java} | 11 +- .../redis/internal/executor/key/ScanExecutor.java | 37 +++ 5 files changed, 142 insertions(+), 25 deletions(-) diff --git a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java similarity index 87% copy from geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java copy to geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java index ce7778f..237d691 100644 --- a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java +++ b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/key/ScanNativeRedisAcceptanceTest.java @@ -13,13 +13,14 @@ * the License. */ -package org.apache.geode.redis.internal.executor.pubsub; +package org.apache.geode.redis.internal.executor.key; import org.junit.ClassRule; import org.apache.geode.NativeRedisTestRule; -public class PubSubNativeRedisAcceptanceTest extends AbstractPubSubIntegrationTest { +public class ScanNativeRedisAcceptanceTest extends AbstractScanIntegrationTest { + @ClassRule public static NativeRedisTestRule redis = new NativeRedisTestRule(); diff --git a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java index ce7778f..772ebb1 100644 --- a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java +++ b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/pubsub/PubSubNativeRedisAcceptanceTest.java @@ -16,9 +16,11 @@ package org.apache.geode.redis.internal.executor.pubsub; import org.junit.ClassRule; +import org.junit.Ignore; import org.apache.geode.NativeRedisTestRule; +@Ignore("GEODE-8577") public class PubSubNativeRedisAcceptanceTest extends AbstractPubSubIntegrationTest { @ClassRule public static NativeRedisTestRule redis = new NativeRedisTestRule(); diff --git a/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java new file mode 100644 index 000..7ab33ba --- /dev/null +++ b/geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/key/AbstractScanIntegrationTest.java @@ -0,0 +1,112 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.apache.geode.redis.internal.executor.key; + +import static org.assertj.core.api.Assertions.assertThat; + +import java.util.ArrayList; +import java.util.List; + +import org.junit.After; +import org.junit.Before; +import org.junit.Test; +import redis.clients.jedis.Jedis; +import redis.clients.jedis.ScanParams; +import redis.clients.jedis.ScanResult; + +import org.apache.geode.test.awaitility.GeodeAwaitility; +import org.apache.geode.test.dunit.rules.R
[geode] branch develop updated (e4c077a -> 8f4566c)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from e4c077a GEODE-8576: fix doc on "security-peer-auth-init" (#5592) add 8f4566c GEODE-8525: Ensure that all pubsub related commands run on the correct EventLoopGroup (#5591) No new revisions were added by this update. Summary of changes: .../pubsub/AbstractPubSubIntegrationTest.java | 9 --- .../geode/redis/internal/GeodeRedisServer.java | 2 +- .../internal/executor/connection/PingExecutor.java | 2 ++ .../internal/executor/connection/QuitExecutor.java | 3 +++ .../executor/pubsub/PsubscribeExecutor.java| 5 .../executor/pubsub/PunsubscribeExecutor.java | 2 ++ .../executor/pubsub/SubscribeExecutor.java | 7 + .../executor/pubsub/UnsubscribeExecutor.java | 2 ++ .../internal/netty/ExecutionHandlerContext.java| 30 ++ 9 files changed, 57 insertions(+), 5 deletions(-)
[geode] branch develop updated: GEODE-8538: Create test to validate ordering of redis pipeline commands (#5552)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 0c41271 GEODE-8538: Create test to validate ordering of redis pipeline commands (#5552) 0c41271 is described below commit 0c412718ce97fd143231ab24585dc39d7db8bd6d Author: John Hutchison AuthorDate: Tue Oct 6 10:02:55 2020 -0400 GEODE-8538: Create test to validate ordering of redis pipeline commands (#5552) Co-authored-by: Ray Ingles Co-authored-by: Darrel Schneider Co-authored-by: Jens Deppe Co-authored-by: Sarah Abbey --- .../AbstractCommandPipeliningIntegrationTest.java | 31 ++ 1 file changed, 31 insertions(+) diff --git a/geode-redis/src/integrationTest/java/org/apache/geode/redis/AbstractCommandPipeliningIntegrationTest.java b/geode-redis/src/integrationTest/java/org/apache/geode/redis/AbstractCommandPipeliningIntegrationTest.java index 60285b5..b80864e 100644 --- a/geode-redis/src/integrationTest/java/org/apache/geode/redis/AbstractCommandPipeliningIntegrationTest.java +++ b/geode-redis/src/integrationTest/java/org/apache/geode/redis/AbstractCommandPipeliningIntegrationTest.java @@ -85,6 +85,37 @@ public abstract class AbstractCommandPipeliningIntegrationTest implements RedisP assertThat(mockSubscriber.getReceivedMessages()).isEqualTo(expectedMessages); } + @Test + public void should_returnResultsOfPipelinedCommands_inCorrectOrder() { +Jedis jedis = new Jedis("localhost", getPort(), REDIS_CLIENT_TIMEOUT); +final int NUMBER_OF_COMMANDS_IN_PIPELINE = 100; +int numberOfPipeLineRequests = 1000; + +do { + Pipeline p = jedis.pipelined(); + for (int i = 0; i < NUMBER_OF_COMMANDS_IN_PIPELINE; i++) { +p.echo(String.valueOf(i)); + } + + List results = p.syncAndReturnAll(); + + verifyResultOrder(NUMBER_OF_COMMANDS_IN_PIPELINE, results); + numberOfPipeLineRequests--; +} while (numberOfPipeLineRequests > 0); + +jedis.flushAll(); +jedis.close(); + } + + private void verifyResultOrder(final int numberOfCommandInPipeline, List results) { +for (int i = 0; i < numberOfCommandInPipeline; i++) { + String expected = String.valueOf(i); + String currentVal = (String) results.get(i); + + assertThat(currentVal).isEqualTo(expected); +} + } + private void waitFor(Callable booleanCallable) { GeodeAwaitility.await() .ignoreExceptions() // ignoring socket closed exceptions
[geode] branch develop updated (443cd2f -> 393c9a2)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 443cd2f GEODE-8561: Add support to PR pipeline for running Windows checks (#5575) add 393c9a2 GEODE-8561: Add support to PR pipeline for running Windows checks (#5576) No new revisions were added by this update. Summary of changes: ci/pipelines/pull-request/jinja.template.yml | 7 +++ 1 file changed, 7 insertions(+)
[geode] branch develop updated (b0a2d32 -> 443cd2f)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from b0a2d32 GEODE-8561: Add support to PR pipeline for running Windows checks (#5574) add 443cd2f GEODE-8561: Add support to PR pipeline for running Windows checks (#5575) No new revisions were added by this update. Summary of changes: ci/pipelines/pull-request/jinja.template.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[geode] branch develop updated (26cb822 -> b0a2d32)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 26cb822 GEODE-8540: Create new DistributedBlackboard Rule (#5557) add b0a2d32 GEODE-8561: Add support to PR pipeline for running Windows checks (#5574) No new revisions were added by this update. Summary of changes: ci/pipelines/pull-request/jinja.template.yml | 7 +++ 1 file changed, 7 insertions(+)
[geode] branch develop updated: GEODE-8561: Add support to PR pipeline for running Windows checks (#5574)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 b0a2d32 GEODE-8561: Add support to PR pipeline for running Windows checks (#5574) b0a2d32 is described below commit b0a2d3269460c41243f8ee742362ec669d4fb9c7 Author: Owen Nichols <34043438+onichols-pivo...@users.noreply.github.com> AuthorDate: Wed Sep 30 10:19:53 2020 -0700 GEODE-8561: Add support to PR pipeline for running Windows checks (#5574) --- ci/pipelines/pull-request/jinja.template.yml | 7 +++ 1 file changed, 7 insertions(+) diff --git a/ci/pipelines/pull-request/jinja.template.yml b/ci/pipelines/pull-request/jinja.template.yml index c3f8e8d..01034cc 100644 --- a/ci/pipelines/pull-request/jinja.template.yml +++ b/ci/pipelines/pull-request/jinja.template.yml @@ -270,6 +270,7 @@ jobs: - get: geode {%- else %} - get: geode-windows +resource: geode {%- endif %} trigger: true version: every @@ -337,10 +338,16 @@ jobs: ARTIFACT_SLUG: {{test.ARTIFACT_SLUG}} JAVA_BUILD_VERSION: {{ java_build_version.version }} JAVA_TEST_VERSION: {{ java_test_version.version }} +{%- if test.CALL_STACK_TIMEOUT %} CALL_STACK_TIMEOUT: {{test.CALL_STACK_TIMEOUT}} +{%- endif %} DUNIT_PARALLEL_FORKS: {{test.DUNIT_PARALLEL_FORKS}} GRADLE_TASK: {{test.GRADLE_TASK}} +{%- if test.GRADLE_TASK_OPTIONS %} + GRADLE_TASK_OPTIONS: {{test.GRADLE_TASK_OPTIONS}} +{%- else %} GRADLE_TASK_OPTIONS: "" +{%- endif %} MAINTENANCE_VERSION: {{repository.branch}} PARALLEL_DUNIT: {{test.PARALLEL_DUNIT}} {% if test.PARALLEL_GRADLE is defined %}
[geode] branch develop updated: GEODE-8549: Remove use of junit EnvironmentVariables rule from geode-redis (#5568)
This is an automated email from the ASF dual-hosted git repository. sabbey37 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 c78 GEODE-8549: Remove use of junit EnvironmentVariables rule from geode-redis (#5568) c78 is described below commit c7828f5dd18861668a83327b54bac8c7050b Author: Jens Deppe AuthorDate: Wed Sep 30 07:19:04 2020 -0700 GEODE-8549: Remove use of junit EnvironmentVariables rule from geode-redis (#5568) Authored-by: Jens Deppe --- .../executor/connection/AuthNativeRedisAcceptanceTest.java| 8 .../src/commonTest/java/org/apache/geode/NativeRedisTestRule.java | 7 +-- 2 files changed, 1 insertion(+), 14 deletions(-) diff --git a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/connection/AuthNativeRedisAcceptanceTest.java b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/connection/AuthNativeRedisAcceptanceTest.java index 14328c8..fedbd51 100644 --- a/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/connection/AuthNativeRedisAcceptanceTest.java +++ b/geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/connection/AuthNativeRedisAcceptanceTest.java @@ -15,12 +15,10 @@ package org.apache.geode.redis.internal.executor.connection; - import org.junit.After; import org.junit.ClassRule; import org.junit.Ignore; import org.junit.Test; -import org.junit.contrib.java.lang.system.EnvironmentVariables; import org.junit.rules.TestRule; import org.testcontainers.containers.GenericContainer; import redis.clients.jedis.Jedis; @@ -34,12 +32,6 @@ public class AuthNativeRedisAcceptanceTest extends AuthIntegrationTest { @ClassRule public static TestRule ignoreOnWindowsRule = new IgnoreOnWindowsRule(); - // The ryuk container is responsible for cleanup at JVM exit. Since this class already closes the - // containers it starts, we do not need the ryuk container. - @ClassRule - public static EnvironmentVariables environmentVariables = - new EnvironmentVariables().set("TESTCONTAINERS_RYUK_DISABLED", "true"); - private GenericContainer redisContainer; @After diff --git a/geode-redis/src/commonTest/java/org/apache/geode/NativeRedisTestRule.java b/geode-redis/src/commonTest/java/org/apache/geode/NativeRedisTestRule.java index ae58e61..1cb47ed 100644 --- a/geode-redis/src/commonTest/java/org/apache/geode/NativeRedisTestRule.java +++ b/geode-redis/src/commonTest/java/org/apache/geode/NativeRedisTestRule.java @@ -17,7 +17,6 @@ package org.apache.geode; import java.io.Serializable; -import org.junit.contrib.java.lang.system.EnvironmentVariables; import org.junit.rules.ExternalResource; import org.junit.rules.RuleChain; import org.junit.runner.Description; @@ -36,11 +35,7 @@ public class NativeRedisTestRule extends ExternalResource implements Serializabl delegate = RuleChain // Docker compose does not work on windows in CI. Ignore this test on windows // Using a RuleChain to make sure we ignore the test before the rule comes into play -.outerRule(new IgnoreOnWindowsRule()) -// The ryuk container is responsible for cleanup at JVM exit. -// Since this rule already closes the -// container it has started, we do not need the ryuk container. -.around(new EnvironmentVariables().set("TESTCONTAINERS_RYUK_DISABLED", "true")); +.outerRule(new IgnoreOnWindowsRule()); } public int getPort() {
[geode] branch develop updated (14524c7 -> bc28eb2)
This is an automated email from the ASF dual-hosted git repository. sabbey37 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 14524c7 added code of conduct to project (#5430) add bc28eb2 GEODE-8561: Add support to PR pipeline for running additional Windows PR checks if the 'windows' label is added to the PR (#5572) No new revisions were added by this update. Summary of changes: ci/pipelines/pull-request/jinja.template.yml | 16 ++-- 1 file changed, 14 insertions(+), 2 deletions(-)