[geode] branch develop updated (036e94f -> c9ed7d7)
This is an automated email from the ASF dual-hosted git repository. jmelchior pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 036e94f GEODE-8305: Revert "Feature/expand pubsub support (#5284)" (#5310) add 1801310 GEODE-8283: Provide REST interface for disk-store creation add 2c25481 Fix spotless issues add a664647 Add missing documentation files to assembly add 5ea4e0d Updating assembly validation txt (#4) add 7e5dc04 Fix jq issues add 5f98828 Disk store rest api (#5) add c68479d Add JQ testing for disk-store controller add 99d21ea Change DiskDir size to be Integer add 9834ffa Fix serializables add 97ba5d0 Remove Id field from DiskStore add c9ed7d7 GEODE-8283: Provide REST interface for disk-store creation (#5288) No new revisions were added by this update. Summary of changes: .../management/JQFilterVerificationDUnitTest.java | 35 ++- .../integrationTest/resources/assembly_content.txt | 13 +- .../org/apache/geode/cache/AttributesFactory.java | 4 +- .../geode/cache/configuration/CacheConfig.java | 2 +- .../geode/internal/cache/DiskStoreAttributes.java | 60 .../geode/internal/cache/DiskStoreFactoryImpl.java | 84 ++--- .../xmlcache/DiskStoreAttributesCreation.java | 25 +- .../api/LocatorClusterManagementService.java | 7 +- .../converters/DiskStoreConverter.java | 126 .../configuration/mutators/DiskStoreManager.java | 76 + .../configuration/realizers/DiskStoreRealizer.java | 118 +++ .../validators/DiskStoreValidator.java | 101 ++ .../functions/CacheRealizationFunction.java| 3 + .../converters/DiskStoreConverterTest.java | 120 +++ .../mutators/DiskStoreManagerTest.java | 109 +++ .../realizers/DiskStoreRealizerTest.java | 117 +++ .../validators/DiskStoreValidatorTest.java | 167 ++ .../geode/management/configuration/DiskDir.java| 54 .../geode/management/configuration/DiskStore.java | 164 ++ .../geode/management/runtime/DiskStoreInfo.java| 21 +- .../sanctioned-geode-management-serializables.txt | 3 + .../client/CreateDiskStoreDUnitTest.java | 346 + .../rest/DiskStoreManagementIntegrationTest.java | 152 + .../rest/controllers/DiskStoreController.java | 113 +++ 24 files changed, 1917 insertions(+), 103 deletions(-) create mode 100644 geode-core/src/main/java/org/apache/geode/management/internal/configuration/converters/DiskStoreConverter.java create mode 100644 geode-core/src/main/java/org/apache/geode/management/internal/configuration/mutators/DiskStoreManager.java create mode 100644 geode-core/src/main/java/org/apache/geode/management/internal/configuration/realizers/DiskStoreRealizer.java create mode 100644 geode-core/src/main/java/org/apache/geode/management/internal/configuration/validators/DiskStoreValidator.java create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/configuration/converters/DiskStoreConverterTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/configuration/mutators/DiskStoreManagerTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/configuration/realizers/DiskStoreRealizerTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/configuration/validators/DiskStoreValidatorTest.java create mode 100644 geode-management/src/main/java/org/apache/geode/management/configuration/DiskDir.java create mode 100644 geode-management/src/main/java/org/apache/geode/management/configuration/DiskStore.java copy geode-pulse/src/main/webapp/css/ie/ie9.css => geode-management/src/main/java/org/apache/geode/management/runtime/DiskStoreInfo.java (51%) create mode 100644 geode-web-management/src/distributedTest/java/org/apache/geode/management/client/CreateDiskStoreDUnitTest.java create mode 100644 geode-web-management/src/integrationTest/java/org/apache/geode/management/internal/rest/DiskStoreManagementIntegrationTest.java create mode 100644 geode-web-management/src/main/java/org/apache/geode/management/internal/rest/controllers/DiskStoreController.java
[geode] branch develop updated (036e94f -> c9ed7d7)
This is an automated email from the ASF dual-hosted git repository. jmelchior pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 036e94f GEODE-8305: Revert "Feature/expand pubsub support (#5284)" (#5310) add 1801310 GEODE-8283: Provide REST interface for disk-store creation add 2c25481 Fix spotless issues add a664647 Add missing documentation files to assembly add 5ea4e0d Updating assembly validation txt (#4) add 7e5dc04 Fix jq issues add 5f98828 Disk store rest api (#5) add c68479d Add JQ testing for disk-store controller add 99d21ea Change DiskDir size to be Integer add 9834ffa Fix serializables add 97ba5d0 Remove Id field from DiskStore add c9ed7d7 GEODE-8283: Provide REST interface for disk-store creation (#5288) No new revisions were added by this update. Summary of changes: .../management/JQFilterVerificationDUnitTest.java | 35 ++- .../integrationTest/resources/assembly_content.txt | 13 +- .../org/apache/geode/cache/AttributesFactory.java | 4 +- .../geode/cache/configuration/CacheConfig.java | 2 +- .../geode/internal/cache/DiskStoreAttributes.java | 60 .../geode/internal/cache/DiskStoreFactoryImpl.java | 84 ++--- .../xmlcache/DiskStoreAttributesCreation.java | 25 +- .../api/LocatorClusterManagementService.java | 7 +- .../converters/DiskStoreConverter.java | 126 .../configuration/mutators/DiskStoreManager.java | 76 + .../configuration/realizers/DiskStoreRealizer.java | 118 +++ .../validators/DiskStoreValidator.java | 101 ++ .../functions/CacheRealizationFunction.java| 3 + .../converters/DiskStoreConverterTest.java | 120 +++ .../mutators/DiskStoreManagerTest.java | 109 +++ .../realizers/DiskStoreRealizerTest.java | 117 +++ .../validators/DiskStoreValidatorTest.java | 167 ++ .../geode/management/configuration/DiskDir.java| 54 .../geode/management/configuration/DiskStore.java | 164 ++ .../geode/management/runtime/DiskStoreInfo.java| 21 +- .../sanctioned-geode-management-serializables.txt | 3 + .../client/CreateDiskStoreDUnitTest.java | 346 + .../rest/DiskStoreManagementIntegrationTest.java | 152 + .../rest/controllers/DiskStoreController.java | 113 +++ 24 files changed, 1917 insertions(+), 103 deletions(-) create mode 100644 geode-core/src/main/java/org/apache/geode/management/internal/configuration/converters/DiskStoreConverter.java create mode 100644 geode-core/src/main/java/org/apache/geode/management/internal/configuration/mutators/DiskStoreManager.java create mode 100644 geode-core/src/main/java/org/apache/geode/management/internal/configuration/realizers/DiskStoreRealizer.java create mode 100644 geode-core/src/main/java/org/apache/geode/management/internal/configuration/validators/DiskStoreValidator.java create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/configuration/converters/DiskStoreConverterTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/configuration/mutators/DiskStoreManagerTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/configuration/realizers/DiskStoreRealizerTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/management/internal/configuration/validators/DiskStoreValidatorTest.java create mode 100644 geode-management/src/main/java/org/apache/geode/management/configuration/DiskDir.java create mode 100644 geode-management/src/main/java/org/apache/geode/management/configuration/DiskStore.java copy geode-pulse/src/main/webapp/css/ie/ie9.css => geode-management/src/main/java/org/apache/geode/management/runtime/DiskStoreInfo.java (51%) create mode 100644 geode-web-management/src/distributedTest/java/org/apache/geode/management/client/CreateDiskStoreDUnitTest.java create mode 100644 geode-web-management/src/integrationTest/java/org/apache/geode/management/internal/rest/DiskStoreManagementIntegrationTest.java create mode 100644 geode-web-management/src/main/java/org/apache/geode/management/internal/rest/controllers/DiskStoreController.java
[geode] branch develop updated (a936e6c -> 63a245b)
This is an automated email from the ASF dual-hosted git repository. dschneider pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from a936e6c Fix test-container and internal docker image. (#5319) add 63a245b GEODE-8310: remove numThreads redis sys prop (#5311) No new revisions were added by this update. Summary of changes: .../apache/geode/redis/GeodeRedisServerRule.java | 1 - .../executor/connection/AuthIntegrationTest.java | 2 - .../geode/redis/internal/GeodeRedisServer.java | 13 -- .../geode/redis/internal/GeodeRedisService.java| 1 - .../redis/internal/PassiveExpirationManager.java | 3 - .../redis/internal/netty/NettyRedisServer.java | 133 + 6 files changed, 29 insertions(+), 124 deletions(-)
[geode] branch support/1.12 updated: First pass at switching to liberica jdk. (#5312)
This is an automated email from the ASF dual-hosted git repository. onichols 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 17c26fe First pass at switching to liberica jdk. (#5312) 17c26fe is described below commit 17c26fe9f83571ef13b7b4f50b6a2531a6c33d6c Author: Sean Goller AuthorDate: Fri Jun 26 09:24:23 2020 -0700 First pass at switching to liberica jdk. (#5312) Authored-by: Sean Goller (cherry picked from commit 15d6d26b72d020fc24964c9cde8ec51aef4881eb) --- ci/images/google-geode-builder/scripts/cache_dependencies.sh | 2 +- ci/images/google-geode-builder/scripts/setup.sh | 6 -- ci/images/google-windows-geode-builder/packer.json | 8 ci/images/test-container/Dockerfile | 6 -- ci/scripts/execute_build.sh | 2 +- ci/scripts/execute_build_examples.sh | 2 +- ci/scripts/execute_publish.sh| 2 +- ci/scripts/execute_tests.sh | 4 ++-- ci/scripts/rsync_code_down.sh| 2 +- docker/Dockerfile| 2 +- 10 files changed, 20 insertions(+), 16 deletions(-) diff --git a/ci/images/google-geode-builder/scripts/cache_dependencies.sh b/ci/images/google-geode-builder/scripts/cache_dependencies.sh index bca4da1..97c06c5 100644 --- a/ci/images/google-geode-builder/scripts/cache_dependencies.sh +++ b/ci/images/google-geode-builder/scripts/cache_dependencies.sh @@ -19,7 +19,7 @@ set -e WORK_DIR=$(mktemp -d) -export JAVA_HOME=/usr/lib/jvm/java-${JAVA_BUILD_VERSION}-openjdk-amd64 +export JAVA_HOME=/usr/lib/jvm/bellsoft-java${JAVA_BUILD_VERSION}-amd64 echo "JAVA_HOME is [${JAVA_HOME}]" if [ -z ${JAVA_HOME} ]; then diff --git a/ci/images/google-geode-builder/scripts/setup.sh b/ci/images/google-geode-builder/scripts/setup.sh index 16a38f4..903ac7c 100755 --- a/ci/images/google-geode-builder/scripts/setup.sh +++ b/ci/images/google-geode-builder/scripts/setup.sh @@ -29,8 +29,10 @@ apt-get install -y --no-install-recommends \ echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" > /etc/apt/sources.list.d/google-chrome.list echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list +echo "deb [arch=amd64] https://apt.bell-sw.com/ stable main" | sudo tee /etc/apt/sources.list.d/bellsoft.list curl -sSL https://dl.google.com/linux/linux_signing_key.pub | apt-key add - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - +curl -fsSL https://download.bell-sw.com/pki/GPG-KEY-bellsoft | apt-key add - apt-get update set +e && apt-get purge -y google-cloud-sdk lxc-docker && set -e apt-get install -y --no-install-recommends \ @@ -55,8 +57,8 @@ apt-get install -y --no-install-recommends \ cp -R /etc/alternatives /etc/keep-alternatives apt-get install -y --no-install-recommends \ -openjdk-8-jdk \ -openjdk-11-jdk +bellsoft-java11 \ +bellsoft-java8 rm -rf /etc/alternatives mv /etc/keep-alternatives /etc/alternatives diff --git a/ci/images/google-windows-geode-builder/packer.json b/ci/images/google-windows-geode-builder/packer.json index 7b63db5..145ea50 100644 --- a/ci/images/google-windows-geode-builder/packer.json +++ b/ci/images/google-windows-geode-builder/packer.json @@ -77,10 +77,10 @@ "inline": [ "$ErrorActionPreference = \"Stop\"", "Set-ExecutionPolicy Bypass -Scope Process -Force", -"choco install -y git cygwin cyg-get adoptopenjdk11", -"Move-Item \"C:\\Program Files\\AdoptOpenJDK\\jdk-11*\" c:\\java11", -"choco install -y jdk8 -params 'installdir=c:java8tmp;source=false'", -"Move-Item \"C:\\java8tmp\" c:\\java8", +"choco install -y git cygwin cyg-get liberica11jdk", +"Move-Item \"C:\\Program Files\\BellSoft\\LibericaJDK-11*\" c:\\java11", +"choco install -y liberica8jdk", +"Move-Item \"C:\\Program Files\\BellSoft\\LibericaJDK-8*\" c:\\java8", "choco install -y openssh --version 7.7.2.1 /SSHServerFeature", "refreshenv", "$OldPath = (Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Control\\Session Manager\\Environment' -Name PATH).Path", diff --git a/ci/images/test-container/Dockerfile b/ci/images/test-container/Dockerfile index 16758c3..1c14b2a 100644 --- a/ci/images/test-container/Dockerfile +++ b/ci/images/test-container/Dockerfile @@ -30,7 +30,9 @@ RUN apt-get update \ unzip \ xz-utils \ && echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" > /etc/apt/sources.list.d/google-chrome.list \ + && echo "deb [arch=amd64] https://apt.bell-sw.com/ stable
[geode] branch support/1.13 updated (133229a -> 9c46985)
This is an automated email from the ASF dual-hosted git repository. onichols pushed a change to branch support/1.13 in repository https://gitbox.apache.org/repos/asf/geode.git. from 133229a GEODE-8287: Added another condition to cause the indexed value to be used add 9c46985 First pass at switching to liberica jdk. (#5312) No new revisions were added by this update. Summary of changes: ci/images/google-geode-builder/scripts/cache_dependencies.sh | 2 +- ci/images/google-geode-builder/scripts/setup.sh | 6 -- ci/images/google-windows-geode-builder/packer.json | 8 ci/images/test-container/Dockerfile | 6 -- ci/scripts/execute_build.sh | 2 +- ci/scripts/execute_build_examples.sh | 2 +- ci/scripts/execute_publish.sh| 2 +- ci/scripts/execute_tests.sh | 4 ++-- ci/scripts/rsync_code_down.sh| 2 +- docker/Dockerfile| 2 +- 10 files changed, 20 insertions(+), 16 deletions(-)
[geode] branch develop updated (f1a2c47 -> a936e6c)
This is an automated email from the ASF dual-hosted git repository. rhoughton pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from f1a2c47 GEODE-8311: fix setrange to prefix value (#5315) add a936e6c Fix test-container and internal docker image. (#5319) No new revisions were added by this update. Summary of changes: ci/images/test-container/Dockerfile | 2 ++ geode-assembly/Dockerfile | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-)
[geode] branch feature/GEODE-8259 updated (f79ae83 -> 79fab08)
This is an automated email from the ASF dual-hosted git repository. zhouxj pushed a change to branch feature/GEODE-8259 in repository https://gitbox.apache.org/repos/asf/geode.git. from f79ae83 handle CacheClosedException separately add 79fab08 refix to only change getAllOp No new revisions were added by this update. Summary of changes: .../geode/cache/client/internal/GetAllOp.java | 38 ++- .../cache/client/internal/OpExecutorImpl.java | 4 +- .../geode/internal/InternalDataSerializer.java | 305 ++--- 3 files changed, 176 insertions(+), 171 deletions(-)
[geode-benchmarks] branch develop updated: Add liberica JDKs to image.
This is an automated email from the ASF dual-hosted git repository. smgoller 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 28d65fb Add liberica JDKs to image. 28d65fb is described below commit 28d65fb6f8df2136ebaa4ae8eeb302a552ac63b9 Author: Sean Goller AuthorDate: Fri Jun 26 14:05:12 2020 -0700 Add liberica JDKs to image. Authored-by: Sean Goller --- infrastructure/scripts/aws/image/packer.json | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/infrastructure/scripts/aws/image/packer.json b/infrastructure/scripts/aws/image/packer.json index 0375e25..753524e 100644 --- a/infrastructure/scripts/aws/image/packer.json +++ b/infrastructure/scripts/aws/image/packer.json @@ -73,10 +73,12 @@ { "type": "shell", "inline": [ +"curl -fsSL https://download.bell-sw.com/pki/GPG-KEY-bellsoft | sudo apt-key add -", +"sudo add-apt-repository \"deb [arch=amd64] https://apt.bell-sw.com/ stable main\"", "sudo apt update", "sudo apt-get -o Dpkg::Options::=\"--force-confnew\" upgrade -y", -"sudo apt install -y openjdk-8-jdk openjdk-11-jdk unzip dstat", -"sudo update-java-alternatives -s java-1.8.0-openjdk-amd64", +"sudo apt install -y java-common bellsoft-java8 bellsoft-java11 openjdk-8-jdk openjdk-11-jdk unzip dstat", +"sudo update-java-alternatives -s bellsoft-java8-amd64", "sudo mv /tmp/defaults.cfg /etc/cloud/cloud.cfg.d/defaults.cfg", "sudo sh -c \"echo 'StrictHostKeyChecking no' >> /etc/ssh/ssh_config\"", "sudo sh -c \"echo 'net.ipv4.tcp_syncookies = 0' >> /etc/sysctl.conf\"",
[geode] branch develop updated (d4fec09 -> 3b4b8ea)
This is an automated email from the ASF dual-hosted git repository. dschneider pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from d4fec09 GEODE-8301: add redis stats (#5307) add 3b4b8ea GEODE-8309: fix ping to return its parameter (#5314) No new revisions were added by this update. Summary of changes: .../PingNativeRedisAcceptanceTest.java}| 6 +-- .../PingIntegrationTest.java} | 54 +++--- .../internal/executor/connection/PingExecutor.java | 9 +++- 3 files changed, 37 insertions(+), 32 deletions(-) copy geode-redis/src/acceptanceTest/java/org/apache/geode/redis/internal/executor/{key/DelNativeRedisAcceptanceTest.java => connection/PingNativeRedisAcceptanceTest.java} (87%) copy geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/{key/PTTLIntegrationTest.java => connection/PingIntegrationTest.java} (58%)
[geode] branch support/1.13 updated: GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306)
This is an automated email from the ASF dual-hosted git repository. bschuchardt 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 64b727e GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306) 64b727e is described below commit 64b727e105117d806b6e680ec5f2b0f9bbce0afd Author: Bruce Schuchardt AuthorDate: Fri Jun 26 07:47:23 2020 -0700 GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306) I've replaced the "for" loop using an implicit Iterator with one using an explicit Iterator so that its safe "remove()" method can be used. The Iterator method is stated as being the only safe way to modify the collection while iterating over its contents. I've also modified a test to validate the fix. The test forces a failure to send two messages to an address. The failures are then handled in the code that was throwing the ConcurrentModificationException and, since there are two failures, it causes two removals to be performedon the failedMessages collection. (cherry picked from commit 3cda1b1a213f2195ff0b97361883f6a6c3972b14) --- .../locator/wan/LocatorMembershipListenerImpl.java | 14 ++-- .../locator/wan/LocatorMembershipListenerTest.java | 88 -- 2 files changed, 72 insertions(+), 30 deletions(-) diff --git a/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java b/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java index acb4f0a..253f6dc 100644 --- a/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java +++ b/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java @@ -18,6 +18,7 @@ package org.apache.geode.cache.client.internal.locator.wan; import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; +import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; @@ -295,15 +296,15 @@ public class LocatorMembershipListenerImpl implements LocatorMembershipListener public void run() { Map> failedMessages = new HashMap<>(); for (Map.Entry> entry : remoteLocators.entrySet()) { -for (DistributionLocatorId value : entry.getValue()) { +for (DistributionLocatorId remoteLocator : entry.getValue()) { // Notify known remote locator about the advertised locator. LocatorJoinMessage advertiseNewLocatorMessage = new LocatorJoinMessage( joiningLocatorDistributedSystemId, joiningLocator, localLocatorId, ""); - sendMessage(value, advertiseNewLocatorMessage, failedMessages); + sendMessage(remoteLocator, advertiseNewLocatorMessage, failedMessages); // Notify the advertised locator about remote known locator. LocatorJoinMessage advertiseKnownLocatorMessage = - new LocatorJoinMessage(entry.getKey(), value, localLocatorId, ""); + new LocatorJoinMessage(entry.getKey(), remoteLocator, localLocatorId, ""); sendMessage(joiningLocator, advertiseKnownLocatorMessage, failedMessages); } } @@ -317,9 +318,11 @@ public class LocatorMembershipListenerImpl implements LocatorMembershipListener DistributionLocatorId targetLocator = entry.getKey(); Set joinMessages = entry.getValue(); -for (LocatorJoinMessage locatorJoinMessage : joinMessages) { +for (Iterator iterator = joinMessages.iterator(); iterator +.hasNext();) { + LocatorJoinMessage locatorJoinMessage = iterator.next(); if (retryMessage(targetLocator, locatorJoinMessage, attempt)) { -joinMessages.remove(locatorJoinMessage); +iterator.remove(); } else { // Sleep between retries. try { @@ -328,6 +331,7 @@ public class LocatorMembershipListenerImpl implements LocatorMembershipListener Thread.currentThread().interrupt(); logger.warn( "Locator Membership listener permanently failed to exchange locator information due to interruption."); + return; } } } diff --git a/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java b/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java index d282128..2869d4d 100644 --- a/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java +++
[geode] branch support/1.13 updated: GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306)
This is an automated email from the ASF dual-hosted git repository. bschuchardt 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 64b727e GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306) 64b727e is described below commit 64b727e105117d806b6e680ec5f2b0f9bbce0afd Author: Bruce Schuchardt AuthorDate: Fri Jun 26 07:47:23 2020 -0700 GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306) I've replaced the "for" loop using an implicit Iterator with one using an explicit Iterator so that its safe "remove()" method can be used. The Iterator method is stated as being the only safe way to modify the collection while iterating over its contents. I've also modified a test to validate the fix. The test forces a failure to send two messages to an address. The failures are then handled in the code that was throwing the ConcurrentModificationException and, since there are two failures, it causes two removals to be performedon the failedMessages collection. (cherry picked from commit 3cda1b1a213f2195ff0b97361883f6a6c3972b14) --- .../locator/wan/LocatorMembershipListenerImpl.java | 14 ++-- .../locator/wan/LocatorMembershipListenerTest.java | 88 -- 2 files changed, 72 insertions(+), 30 deletions(-) diff --git a/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java b/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java index acb4f0a..253f6dc 100644 --- a/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java +++ b/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java @@ -18,6 +18,7 @@ package org.apache.geode.cache.client.internal.locator.wan; import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; +import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; @@ -295,15 +296,15 @@ public class LocatorMembershipListenerImpl implements LocatorMembershipListener public void run() { Map> failedMessages = new HashMap<>(); for (Map.Entry> entry : remoteLocators.entrySet()) { -for (DistributionLocatorId value : entry.getValue()) { +for (DistributionLocatorId remoteLocator : entry.getValue()) { // Notify known remote locator about the advertised locator. LocatorJoinMessage advertiseNewLocatorMessage = new LocatorJoinMessage( joiningLocatorDistributedSystemId, joiningLocator, localLocatorId, ""); - sendMessage(value, advertiseNewLocatorMessage, failedMessages); + sendMessage(remoteLocator, advertiseNewLocatorMessage, failedMessages); // Notify the advertised locator about remote known locator. LocatorJoinMessage advertiseKnownLocatorMessage = - new LocatorJoinMessage(entry.getKey(), value, localLocatorId, ""); + new LocatorJoinMessage(entry.getKey(), remoteLocator, localLocatorId, ""); sendMessage(joiningLocator, advertiseKnownLocatorMessage, failedMessages); } } @@ -317,9 +318,11 @@ public class LocatorMembershipListenerImpl implements LocatorMembershipListener DistributionLocatorId targetLocator = entry.getKey(); Set joinMessages = entry.getValue(); -for (LocatorJoinMessage locatorJoinMessage : joinMessages) { +for (Iterator iterator = joinMessages.iterator(); iterator +.hasNext();) { + LocatorJoinMessage locatorJoinMessage = iterator.next(); if (retryMessage(targetLocator, locatorJoinMessage, attempt)) { -joinMessages.remove(locatorJoinMessage); +iterator.remove(); } else { // Sleep between retries. try { @@ -328,6 +331,7 @@ public class LocatorMembershipListenerImpl implements LocatorMembershipListener Thread.currentThread().interrupt(); logger.warn( "Locator Membership listener permanently failed to exchange locator information due to interruption."); + return; } } } diff --git a/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java b/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java index d282128..2869d4d 100644 --- a/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java +++
[geode] branch develop updated (15d6d26 -> f84e9e8)
This is an automated email from the ASF dual-hosted git repository. jensdeppe pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 15d6d26 First pass at switching to liberica jdk. (#5312) add f84e9e8 GEODE-8303: refactor Redis (String)SetExecutor (#5216) No new revisions were added by this update. Summary of changes: .../executor/string/SetIntegrationTest.java| 54 ++ .../internal/executor/string/SetExecutor.java | 209 +++-- .../string/StringSetExecutorJUnitTest.java | 23 ++- 3 files changed, 221 insertions(+), 65 deletions(-)
[geode] branch develop updated (3b4b8ea -> f1a2c47)
This is an automated email from the ASF dual-hosted git repository. dschneider pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 3b4b8ea GEODE-8309: fix ping to return its parameter (#5314) add f1a2c47 GEODE-8311: fix setrange to prefix value (#5315) No new revisions were added by this update. Summary of changes: .../internal/executor/string/SetRangeIntegrationTest.java | 10 ++ .../apache/geode/redis/internal/data/RedisStringInRegion.java | 9 +++-- 2 files changed, 17 insertions(+), 2 deletions(-)
[geode] branch support/1.12 updated (17c26fe -> 0f95d0b)
This is an automated email from the ASF dual-hosted git repository. bschuchardt pushed a change to branch support/1.12 in repository https://gitbox.apache.org/repos/asf/geode.git. from 17c26fe First pass at switching to liberica jdk. (#5312) new 5d2181d GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306) new 0f95d0b fixed compilation error in cherry-pick The 2 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: .../locator/wan/LocatorMembershipListenerImpl.java | 14 ++-- .../locator/wan/LocatorMembershipListenerTest.java | 88 -- 2 files changed, 72 insertions(+), 30 deletions(-)
[geode] 01/02: GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306)
This is an automated email from the ASF dual-hosted git repository. bschuchardt pushed a commit to branch support/1.12 in repository https://gitbox.apache.org/repos/asf/geode.git commit 5d2181d6a259035aaa77a73daa0dcbacefb56038 Author: Bruce Schuchardt AuthorDate: Fri Jun 26 07:47:23 2020 -0700 GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306) I've replaced the "for" loop using an implicit Iterator with one using an explicit Iterator so that its safe "remove()" method can be used. The Iterator method is stated as being the only safe way to modify the collection while iterating over its contents. I've also modified a test to validate the fix. The test forces a failure to send two messages to an address. The failures are then handled in the code that was throwing the ConcurrentModificationException and, since there are two failures, it causes two removals to be performedon the failedMessages collection. (cherry picked from commit 3cda1b1a213f2195ff0b97361883f6a6c3972b14) --- .../locator/wan/LocatorMembershipListenerImpl.java | 14 ++-- .../locator/wan/LocatorMembershipListenerTest.java | 88 -- 2 files changed, 72 insertions(+), 30 deletions(-) diff --git a/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java b/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java index 31315ed..434231d 100644 --- a/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java +++ b/geode-wan/src/main/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerImpl.java @@ -18,6 +18,7 @@ package org.apache.geode.cache.client.internal.locator.wan; import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; +import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; @@ -291,15 +292,15 @@ public class LocatorMembershipListenerImpl implements LocatorMembershipListener public void run() { Map> failedMessages = new HashMap<>(); for (Map.Entry> entry : remoteLocators.entrySet()) { -for (DistributionLocatorId value : entry.getValue()) { +for (DistributionLocatorId remoteLocator : entry.getValue()) { // Notify known remote locator about the advertised locator. LocatorJoinMessage advertiseNewLocatorMessage = new LocatorJoinMessage( joiningLocatorDistributedSystemId, joiningLocator, localLocatorId, ""); - sendMessage(value, advertiseNewLocatorMessage, failedMessages); + sendMessage(remoteLocator, advertiseNewLocatorMessage, failedMessages); // Notify the advertised locator about remote known locator. LocatorJoinMessage advertiseKnownLocatorMessage = - new LocatorJoinMessage(entry.getKey(), value, localLocatorId, ""); + new LocatorJoinMessage(entry.getKey(), remoteLocator, localLocatorId, ""); sendMessage(joiningLocator, advertiseKnownLocatorMessage, failedMessages); } } @@ -313,9 +314,11 @@ public class LocatorMembershipListenerImpl implements LocatorMembershipListener DistributionLocatorId targetLocator = entry.getKey(); Set joinMessages = entry.getValue(); -for (LocatorJoinMessage locatorJoinMessage : joinMessages) { +for (Iterator iterator = joinMessages.iterator(); iterator +.hasNext();) { + LocatorJoinMessage locatorJoinMessage = iterator.next(); if (retryMessage(targetLocator, locatorJoinMessage, attempt)) { -joinMessages.remove(locatorJoinMessage); +iterator.remove(); } else { // Sleep between retries. try { @@ -324,6 +327,7 @@ public class LocatorMembershipListenerImpl implements LocatorMembershipListener Thread.currentThread().interrupt(); logger.warn( "Locator Membership listener permanently failed to exchange locator information due to interruption."); + return; } } } diff --git a/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java b/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java index f3770a6..b2b3c14 100644 --- a/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java +++ b/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java @@ -21,6 +21,7 @@ import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyBoolean; import
[geode] 02/02: fixed compilation error in cherry-pick
This is an automated email from the ASF dual-hosted git repository. bschuchardt pushed a commit to branch support/1.12 in repository https://gitbox.apache.org/repos/asf/geode.git commit 0f95d0b4fac88816c80204f7539784d9db88e56a Author: Bruce Schuchardt AuthorDate: Fri Jun 26 14:30:26 2020 -0700 fixed compilation error in cherry-pick --- .../client/internal/locator/wan/LocatorMembershipListenerTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java b/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java index b2b3c14..fabb128 100644 --- a/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java +++ b/geode-wan/src/test/java/org/apache/geode/cache/client/internal/locator/wan/LocatorMembershipListenerTest.java @@ -356,7 +356,7 @@ public class LocatorMembershipListenerTest { // The sendMessage loop in the listener will try to send 4 messages. Two to the remoteLocators // and two to the joiningLocator. The retry loop will try to send the messages again and // fail (4 more messages) and then it will succeed (4 more messages, for a total of 12). -verify(tcpClient, times(12)).requestToServer(isA(HostAndPort.class), +verify(tcpClient, times(12)).requestToServer(isA(InetSocketAddress.class), isA(LocatorJoinMessage.class), isA(Integer.class), isA(Boolean.class)); }
[geode] branch develop updated (6bd1d4b -> d4fec09)
This is an automated email from the ASF dual-hosted git repository. dschneider pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 6bd1d4b GEODE-8247: modified FilterRoutingInfo checks (#5248) add d4fec09 GEODE-8301: add redis stats (#5307) No new revisions were added by this update. Summary of changes: .../geode/redis/internal/GeodeRedisServer.java | 22 ++- .../redis/internal/PassiveExpirationManager.java | 13 +- .../apache/geode/redis/internal/RedisStats.java| 214 + .../redis/internal/data/RedisHashInRegion.java | 6 +- .../redis/internal/data/RedisKeyInRegion.java | 15 +- .../redis/internal/data/RedisSetInRegion.java | 6 +- .../redis/internal/data/RedisStringInRegion.java | 6 +- .../redis/internal/executor/CommandFunction.java | 122 +++- .../internal/executor/key/RenameFunction.java | 13 +- .../internal/netty/ExecutionHandlerContext.java| 27 ++- .../redis/internal/netty/NettyRedisServer.java | 8 +- .../sanctioned-geode-redis-serializables.txt | 4 +- 12 files changed, 373 insertions(+), 83 deletions(-) create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/RedisStats.java
[geode] branch develop updated (f84e9e8 -> 6bd1d4b)
This is an automated email from the ASF dual-hosted git repository. mivanac pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from f84e9e8 GEODE-8303: refactor Redis (String)SetExecutor (#5216) add 6bd1d4b GEODE-8247: modified FilterRoutingInfo checks (#5248) No new revisions were added by this update. Summary of changes: .../apache/geode/internal/cache/FilterProfile.java | 23 +-- .../internal/cache/TxCallbackEventFactoryImpl.java | 3 +- .../geode/cache/query/cq/CQDistributedTest.java| 80 +- 3 files changed, 96 insertions(+), 10 deletions(-)
[geode] branch develop updated (3cda1b1 -> b164321)
This is an automated email from the ASF dual-hosted git repository. amurmann pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 3cda1b1 GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306) add b164321 GEODE-8304 - Better highlight steps for building documentation (#5308) No new revisions were added by this update. Summary of changes: dev-tools/docker/docs/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[geode] branch develop updated (3cda1b1 -> b164321)
This is an automated email from the ASF dual-hosted git repository. amurmann pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 3cda1b1 GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306) add b164321 GEODE-8304 - Better highlight steps for building documentation (#5308) No new revisions were added by this update. Summary of changes: dev-tools/docker/docs/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[geode] branch develop updated (b164321 -> 15d6d26)
This is an automated email from the ASF dual-hosted git repository. smgoller pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from b164321 GEODE-8304 - Better highlight steps for building documentation (#5308) add 15d6d26 First pass at switching to liberica jdk. (#5312) No new revisions were added by this update. Summary of changes: ci/images/google-geode-builder/scripts/cache_dependencies.sh | 2 +- ci/images/google-geode-builder/scripts/setup.sh | 6 -- ci/images/google-windows-geode-builder/packer.json | 8 ci/images/test-container/Dockerfile | 6 -- ci/scripts/execute_build.sh | 2 +- ci/scripts/execute_build_examples.sh | 2 +- ci/scripts/execute_publish.sh| 2 +- ci/scripts/execute_tests.sh | 4 ++-- ci/scripts/rsync_code_down.sh| 2 +- docker/Dockerfile| 2 +- 10 files changed, 20 insertions(+), 16 deletions(-)
[geode] branch develop updated (c9ed7d7 -> 3cda1b1)
This is an automated email from the ASF dual-hosted git repository. bschuchardt pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from c9ed7d7 GEODE-8283: Provide REST interface for disk-store creation (#5288) add 3cda1b1 GEODE-8195: ConcurrentModificationException from LocatorMembershipListenerImpl (#5306) No new revisions were added by this update. Summary of changes: .../locator/wan/LocatorMembershipListenerImpl.java | 14 ++-- .../locator/wan/LocatorMembershipListenerTest.java | 88 -- 2 files changed, 72 insertions(+), 30 deletions(-)