This is an automated email from the ASF dual-hosted git repository. nnag pushed a change to branch feature/GEODE-7665 in repository https://gitbox.apache.org/repos/asf/geode.git.
omit 62858e2 GEODE-7667: Add a 'clear' gfsh command for PR and RR clear (#4818) omit e87b3b7 GEODE-7676: Add PR clear with expiration tests (#4970) omit 81a9178 GEODE-7983: Clear region writer callbacks should not be invoked for bucket regions (#4954) omit 04e2081 GEODE-7912: cacheWriter should be triggered when PR.clear (#4882) omit 49872b4 PR.clear's event id should be created and used in BR (#4805) omit 7b62741 GEODE-7682: add PR.clear API (#4755) omit 7d557d5 GEODE-7683: introduce BR.cmnClearRegion add 683113a GEODE-7710: Fix race condition in federation of MXBeans (#4807) add ff6b0c8 GEODE-7710: Fix race condition in sending JMX notifications (#4808) add e9a6b00 GEODE-7877: deal with the static Version map in TcpClient (#4817) add 32cadc2 GEODE-7885: Improve RedisLockService - fix synchronization and memory leak (#4819) add 0dfff8c GEODE-7604: Fix Test Flakiness (#4825) add a627cb7 GEODE-7869: Revert content type changes. add 9cddaec GEODE-7893: Fix Analyzer dependency in geode-lucene (#4829) add f84d3e6 GEODE-7895:Create integration tests for EXPIRE command in Redis Adapter (#4831) add 2d2a3f8 GEODE-7884: server hangs due to IllegalStateException (#4822) add 39a8eaa GEODE-7886 Update strings tests to cover sad as well as happy paths (#4821) add 53f1e1a GEODE-7852: Adding a SocketFactory configuration for client Pools (#4830) add f6ebc63 Ignore ClientSNIAcceptanceTest on windows (#4837) add 578cb07 GEODE-7851: Pulse Oauth Configuration (#4823) add e1949a4 GEODE-7889: Fix CloseConnectionTest add cf0e128 GEODE-7852: Ignore ClientSNIAcceptanceTest on windows (#4838) add 9700bbc GEODE-7826: start jmx-manager when the Management Rest Service is (#4820) add a93a59e GEODE-7900: Only set the SNI hostname if it is not present add 1dfc496 GEODE-6008: CI Failure: ClientServerHostNameVerificationDistributedTe… (#4839) add f7b79c9 GEODE-7812: Fix PoolFactory usage in PutAllClientServerDistributedTest (#4835) add 521a453 GEODE-7907: change test to use non-default jmx-manager-port (#4844) add 382cdcd GEODE-7851: update docs on Pulse Authentication (#4840) add 94e2b99 GEODE-7812: Cleanup for PutAllOp (#4836) add 733525f GEODE-7901: increase Redis test timeouts to mask flakiness add b1f84ea GEODE-7911: fix release script issues encountered in 1.12.0 release (#4850) add 72cd035 GEODE-7902: fix flaky test (#4845) add 2c26de8 GEODE-7916: use updated gradle plugin declarations (#4856) add 80ffe65 GEODE-7915: rc pipeline fixes and improvements (#4853) add 472e2e7 GEODE-7918: Add assertion message to DNS resolution assertions. (#4859) add 10c98e0 GEODE-7864: Removed unused logConfigListeners in InternalLocator (#4863) add 91addf9 GEODE-7864: Removed unused Arraylist vals in TestFunction (#4864) add 43162fa GEODE-7864: Instance checks in equals methods (#4865) add 74e469a GEODE-7864: Removed printStackTrace command. (#4868) add 475ac93 GEODE-7864: Remove boxed variable as it can never be null. (#4869) add 147d066 GEODE-7864: Prevent queryMonitor to be visible before all the statements are executed. (#4875) add a8527c5 GEODE-7864: Fixed javadocs params (#4877) add ddf8f13 GEODE-7864: Fixed queries with missing space. (#4878) add e10cf65 GEODE-7852: Move sni test files to a test specific dir add 4984ed9 GEODE-7851: use the latest version of nimbus-jose-jwt.jar (#4851) add fb2c273 GEODE-7914: create missing unit test for Redis Module Expire Command (#4852) add 2cf9925 GEODE-7864: Print contents of arrays correctly. (#4879) add 4966e50 GEODE-7919: Moving membership integration test to geode-membership (#4862) add b021b12 Feature/geode 6536 2: Added retry in borrowConnection/single hop (#4833) add 6df49de GEODE-7864: Prevent overflow during multiplication. (#4876) add 17e1d12 GEODE-7897: Run Redis integration tests against native Redis via Docker (#4834) add 0320dc1 GEODE-7905, GEODE-7870: Ignore flaky tests while they are being worked on (#4887) add 232cfa1 GEODE-7923: update release scripts to handle support branches (#4874) add faece9a GEODE-7927: create tests to ensure feature-parity with Redis PEXPIRE command (#4886) add be70be9 GEODE-7937: fix Tomcat8ClientServerRollingUpgradeTest to get product version correctly (#4889) add 36efe4d add 1.12.0 to old versions (#4888) add 9036ab9 GEODE-7925: Add concurrency test to PubSubDUnitTest (#4884) add 0cb54ca GEODE-7938: change dev rest api to support slashes in key parameters (#4885) add ef0f81f GEODE-7942: document enable-management-rest-service (#4897) add 6fffd5c GEODE-7941: update Shiro to recommended version 1.5.2 (#4896) add ba1916b GEODE-7156: add docs for security-auth-token-enabled-components (#4895) add ef6fdc1 GEODE-7919-fix-flaky: add Awaitility to soak up latency (#4891) add c5c0b0b Revert "GEODE-7710: Fix race condition in federation of MXBeans (#4807)" (#4832) add 3e2d501 GEODE-6819: Fix PartitionedRegionSingleHopDUnitTest BindExceptions add 2ac3de7 GEODE-7921: NullPointerExceptions logged during auto-reconnect (#4898) add 88c165c GEODE-7926: GMSMemberData is doing unnecessary reverse-DNS lookups add 5864f2a GEODE-7926: GMSMemberData is doing unnecessary reverse-DNS lookups (#4894) add 8f24abb GEODE-7920: Geode UDP INT thread found processing cache operations add 6f8c74b removing commented-out code add 6312b32 Merge pull request #4893 from apache/feature/GEODE-7920 add 189ae76 GEODE-7939: membership heartbeat messages aren't designated high-priority add 8fd0f6f Merge pull request #4892 from apache/feature/GEODE-7939 add 3c99931 GEODE-7946: Fix redis publish/subscribe leaking netty buffers (#4902) add abd0f54 GEODE-7098: Tomcat8SessionsClientServerDUnitTest Tests were getting bind failures (#4903) add 24203d8 GEODE-7892: Code improvements in ConnectionProxyJUnitTest add 087e47a Merge pull request #4827 from Nordix/feature/GEODE-7892 add 552cdea GEODE-7917: change thrown exception type for SSL to IOException (#4858) add e7f6faf GEODE-7950: Force TLS1.2 for installing PackageProvider=NuGet (#4908) add d2f18fd GEODE-7156: add docs for security-auth-token-enabled-components (#4910) add d663864 GEODE-7864: Remove null checks that are not required Part-2. (#4881) add d4b7c14 GEODE-7864: Closing the query statements after execution. (#4873) add 1b1ad6b GEODE-7947 Implement tests for EXPIRE-related functionality (#4904) add 27614c2 GEODE-7864: Prevented non synchronized override of synchronized methods. (#4872) add 7d8834f GEODE-7460: Disable network partition detection, which is not needed for this test and is causing flakiness (#4911) add 6263f1f GEODE-7938: added keys query param to GET, PUT, and DELETE /{region} endpoints (#4901) add ead319c GEODE-7970: bump spring to latest (#4927) add e8a5dbf GEODE-7966: User Guide - properties list - reformat oversized table (#4923) add b4fb6c8 Revert "GEODE-7938: added keys query param to GET, PUT, and DELETE /{region} endpoints (#4901)" add 8e3c7a2 Merge pull request #4929 from jmelchio/slash-revert add 37e2d98 GEODE-7945: Replace Map with ConcurrentMap for GemFireCacheImpl.rootRegions (#4899) add 8f9f4b7 GEODE-7969: bump netty version to latest (#4933) add 2765825 GEODE-7852: SNI extension support add 1260318 addressing reviews add d301de9 addressing reviews add 381714e fixing new assertions in unit test and retriggering CI tasks add 47cc74f reverting ProcessManager changes - evidently the rolling upgrade test code needs some of this stuff add a12d1fe Merge pull request #4920 from apache/feature/GEODE-7852doc add a73dffc GEODE-7976: make "config" param optional when deploy using CMS. (#4930) add 4f2a604 GEODE-7852: test SNI client against a geode (2-node) cluster (#4925) add 464c749 GEODE-7965: Modify Redis SADD command to use region.compute (#4918) add 3062423 Geode 7751: fix for Tomcat9CachingClientServerTest.containersShouldExpireInSetTimeframe (#4931) add 63c681d GEODE-7664: calling RegionConfigRealizer.exists methods doesn't need … (#4932) add e9993c1 GEODE-7765: Update dependencies for v1.13 add 93e460b GEODE-7838: getNumOfServers while rebalance is executed (#4815) add 7763ce5 GEODE-7779: Concourse BumpXYZ does not include {prerelease} (#4684) add b93cc01 Revert "GEODE-7852: test SNI client against a geode (2-node) cluster (#4925)" (#4940) add 51477e9 GEODE-7943 add synchronization to Subscriptions class (#4913) add 2ffc874 GEODE-7949: Geode Redis - Get/Set commands for RedisString datatype to cover new parameters (#4907) add 50ce279 Decouple geode in sadd,srem,smembers (#4912) add b664be6 GEODE-7978: Improve tests for Redis Module SREM Command (#4937) add bab8c29 GEODE-7981: Change the redis default region type to PARTITION_REDUNDANT (#4945) add 3123533 Revert "GEODE-7978: Improve tests for Redis Module SREM Command (#4937)" (#4947) add 435cf3f GEODE-7978: Improve tests for Redis Module SREM Command (#4948) add ce157ec GEODE-7852: Create simple CQ over SNI test. (#4942) add e12bf75 GEODE-7852: Add client side configuration option to support a SNI proxy add f64662a removed useless test of toString method add dd80530 rebasing on develop after Bill's revert add 2e5aff3 avoiding Windows lack of Docker support add b9662f8 removing more statics add 636197b more statics removed add f8b33c1 adding a removeAll test add 6292543 removing foo/bar from cluster startup script and test add f7582bd fixing comment add cd26491 incorporating Dan's new Rule to avoid running on Windows add a1ed7f2 Merge pull request #4938 from apache/feature/GEODE-7852query add 3f9d32d GEODE-7851: Pulse Oauth Support (#4936) add 766bfe5 GEODE-7761: change Ignore description (#4737) add 4c72ad8 GEODE-7938: added keys query param to GET, PUT, and DELETE /{region} endpoints add 0158e04 Merge pull request #4952 from jmelchio/key-query-param2 add d431f0d GEODE-7870: Fix PubSubIntegrationTest flakiness (#4946) add 9ce6b18 GEODE-7852: test SNI against a 2-node Dockerizded cluster (#4951) add cf8ad73 GEODE-7474: adding logging to help track issue (#4944) add f797bca GEODE-7851: Document Pulse OAuth properties (#4950) add 90a3d50 GEODE-7979: Implement tests for Redis PERSIST (#4941) add 82b1314 GEODE-7986: fix flakey RedisLockServiceJUnitTest (#4960) add 88b3603 GEODE-7993: Document startup behavior of GW senders (#4965) add c8d1048 GEODE-7985: benchmark develop against 1.12.0 rather than 1.10.0 (#4957) add 7fa738c GEODE-7980: update rebalance output on colocated region (#4955) add 9db544e GEODE-7852: test ClientHealthMonitor functionality behind a SNI gateway (#4958) add 4e585e0 GEODE-7984: Refactor Gradle scripts for publishing well-formed POM files (#4956) add bfbb398 GEODE-7940: Fix Tracking of ShadowBuckets Destroyed (#4934) add b0bd165 GEODE-7864: Prevent implicit narrowing. (#4870) add c257c15 GEODE-7991: wait for SNI test CqListener to see events (#4968) add 5e025a7 GEODE-7992: test Redis EXISTS (#4962) add 311797a GEODE-8000: refactor test command mocks (#4961) add dd23ee8 GEODE-7565: Allow gateway receivers with same host and port (#4824) add aab948a GEODE-5428 (#4972) add 509240f GEODE-7989: Improve backup exceptions logging (#4967) add f9d9479 GEODE-7851: Pulse logout requests end of OAuth session add 410ffca Change 'End-User' to 'end user' in docs add d09b26a Merge pull request #4966 from demery-pivotal/geode-7851/logout add e1c17e1 Revert "GEODE-7565: Allow gateway receivers with same host and port (#4824)" (#4974) add a3f3594 GEODE-7996 Create DUNIT tests for Redis SADD (#4971) add ecadaf7 GEODE-7982: Close the client first in rolling upgrade test add 54bfcae GEODE-7852: test SNI with proxy restart (#4959) add bc36f29 GEODE-7997: Document needed location of parallel gateway sender disk … (#4976) add 7dbd970 GEODE-8002: Extract common concurrent execution test code into LoopingThreads class (#4973) add 33a890e GEODE-7994: Refactor naming for Native Redis Acceptance Tests (#4964) add 471f49e GEODE-8010: change redis log message from info to debug (#4983) add d6c8c8c GEODE-7981: have redis default to PARTITION_REDUNDANT (#4981) add 9b1d652 GEODE-8006 Add .asf.yaml to control notifications add 1ddd7de GEODE-7957: query results toData will write to correct output stream (#4922) add 65dd63e GEODE-7935: Awaiting for verification steps. (#4982) add 6d08055 GEODE-7864: Removing null checks that are not required.(Part 1) (#4880) add ee60677 GEODE-8013: Logging documentation fixes (#4975) add 0f512f0 GEODE-7851: Add slf4j implementation to Pulse (#4988) add 0a1701e GEODE-7964: Upgrade Mockito to 3.3.3 (#4924) add 2999414 GEODE-7851: Pulse refreshes expired access tokens (#4977) add 0aae6cb GEODE-8022: Fix windows image build via pinning. (#4993) add 326f228 GEODE-8023: add old version on support branch too (#4995) add 8e68aba GEODE-8024: fix wan test to also work on support branches (#4997) add fad52b8 GEODE-8025: fix lucene test to not hang on support branches (#4999) add edcc077 GEODE-8026: release improvements (#5002) add 33ae60f GEODE-7999: make support branches publish snapshots (#4996) add be81285 GEODE-8027: documentation script to attach swagger json (#5001) add ec8db54 GEODE-8020: buffer corruption in SSL communications (#4994) add 0f99185 GEODE-7953: Restore Redundancy Internal API (#4909) add ccc3f46 GEODE-7981: fix docs for redis PARTITION_REDUNDANT (#5003) add 9fad2c0 Revert "GEODE-7953: Restore Redundancy Internal API (#4909)" (#5006) add ee21019 GEODE-8031: Close lingering SocketCreatorFactory instances (#5007) add 6d35884 GEODE-7953: Restore Redundancy Internal API (#5010) add 5e0b25a GEODE-7964: Fixup all tests touched for Mockito upgrade (#4986) add 3aa3659 GEODE 8014: delete redis sets and hashes when empty (#4989) add aa330f3 GEODE-8028: refactor RedisCommandType (#4998) add e7b0186 GEODE-6636: Create multiple buffer pools (#4234) add 35718a5 GEODE-8034: Create distributed tests for SREM command (#5013) add 1098fc2 GEODE-8038: Fix product name in docs (#5017) add c12e8cc GEODE-7503: Block Cache.close() until everything is disconnected (#4963) add 0e8c937 GEODE-8021: CI Failure: CloseConnectionTest. sharedSenderShouldRecoverFromClosedSocket (#5008) add dd695c4 GEODE-8032: Reclassify tests as integration tests (#5011) add 466a19c GEODE-8033 - Create geode-module sub-project and ModuleService interface. (#5020) add 134ae31 GEODE-8047: Split SetsIntegrationTest into multiple files (#4984) add 694cb4c GEODE-8044 - Renamed geode-module to geode-common-services. (#5024) add c3394e4 GEODE-8050: Ensure tests cleanup consistently to allow running them all within one JVM instance (#5025) add 560d311 GEODE-8052: DRY the 'dependentProjectNames' and 'geodeArchives' values (#5028) add 3c66f2c GEODE-8048: change redis sets to use functions and deltas (#5009) add 744b5ed Revert "GEODE-8020: buffer corruption in SSL communications (#4994)" (#5027) add 7c2ca9e GEODE-8051: Create multi-node concurrency (distributed) tests for HSET and HMSET (#5026) add 2a56c97 GEODE:8042- Create Integrated Distributed/HA test for Redis Module/Spring Session (#5022) add 653a1bc GEODE-8060: Ignore flaky GemFireCacheImplCloseTest test (#5038) add af73331 GEODE-7954: restore redundancy and status redundancy gfsh commands add 4426e06 Addressing review comments add 5627cfd Fix LGTM alerts add 0732fef Applying review feedback add 84387ce GEODE-7954: restore redundancy and status redundancy gfsh commands (#5004) add a820c59 GEODE-7955: Docs for redundancy internal API and redundancy commands (#5005) add 0e2c276 GEODE-8055: create index command should work on sub regions (#5034) add 95f0a93 GEODE-8059: replace multiple redis set functions with one CommandFunction (#5035) add 02839ea roll develop to 1.14 now that support/1.13 has been created (#5044) add be8ac49 GEODE-8029: Delete orphaned drf files (#5037) add 7ee1042 GEODE-8039: update incorrect versions in LICENSE (#5018) add 536910a GEODE-8072: check the null and stop the on-going query function when … (#5053) add 5f9800b GEODE-7414_2: modify init() method argument (#5040) add d8e86cb GEODE-8071: Use daemon threads in RebalanceCommand (#5054) add 643c617 GEODE-8073: Fix NPE after FetchKeysMessage failed. (#5055) add 76d5e42 Reformat README file (#5060) add 0ef8c5f GEODE-8068 - Revert GEODE-8044 and GEODE-8033. (#5045) add 9e957f1 GEODE-8060: Fix flakiness in GemFireCacheImplCloseTest (#5041) add 0db6066 GEODE-8054: Refactor Sadd and Srem DUnit tests to use ConcurrentLoopingThreads class (#5052) add 3963431 [GEODE-8083] Add API Checking to Geode. (#5066) add 7375c59 GEODE-8020: buffer management problems (#5048) add da38d51 GEODE-8076: simplify redis concurrency code (#5019) add 639affb GEODE-8084: Declare parameter requirements for redis commands (#5068) add be87788 GEODE-7565: Allow gateway receivers with same host and port (2nd try) add 17f9a23 Revert "GEODE-8029: Delete orphaned drf files (#5037)" (#5073) add 5542db5 GEODE-7998: Do not block Netty threads when publishing (#5042) add cf4c0ed GEODE-8089: change redis set ops to use functions (#5058) add a4c8b9e GEODE-8016: publish with non-zero-padded build ids instead of SNAPSHOT. (#5057) add 78a4fb9 GEODE-8079: Fix DistributedRegion Validations (#5070) add c2759ed Revert "GEODE-8072: check the null and stop the on-going query function when … (#5053)" (#5077) add 757b1ec GEODE-8058: Create Dunit tests for EXPIRE, PEXPIRE, EXPIREAT, and PEXPIREAT (#5036) add ed5e18b GEODE-8088: Refactor dunit test locations (#5069) add a1d0c74 Geode 7812: Changes to PutAllClientServerDistributionTest (#5076) add 1292239 GEODE-8072: when region is destroyed in function, should throw correct exception (#5078) add 48d2ee5 GEODE-7702: bulkOp from accessor or NORMAL should sync with clear (#5012) add 960f33b GEODE-7707: Tab completing '--url' on 'connect' gives two default values add 1a87e32 GEODE-7707: Align examples in doc and code add 15cb323 GEODE-7707: Tab completing '--url' on 'connect' gives two default values (#5061) add 8f0650e GEODE-7864: Replace uses of hardcoded "/" with Region.SEPARATOR (#5049) add 18b1036 GEODE-8087: Fix Java binary compatibility errors reported by japicmp add 9d2ffc1 Revert "GEODE-7414_2: modify init() method argument (#5040)" add 7a09ede GEODE-8087: delete debug println from japicmp (#5086) add 39c522e GEODE-8016: publish with non-zero-padded build ids instead of SNAPSHOT (fixup) (#5087) add 1b4b60c GEODE-7963: solution for faulty bucket metrics (#5000) add a0226d6 GEODE-8093: Declare parameter requirements for HSET and HSETNX (#5083) add 29b0b22 GEODE-8082: Refactor GeodeRedisServer (#5080) new 7ad1190 GEODE-7683: introduce BR.cmnClearRegion new 362bad5 GEODE-7682: add PR.clear API (#4755) new bc38e50 PR.clear's event id should be created and used in BR (#4805) new 3eae78e GEODE-7912: cacheWriter should be triggered when PR.clear (#4882) new f61c16a GEODE-7983: Clear region writer callbacks should not be invoked for bucket regions (#4954) new 0ea8737 GEODE-7676: Add PR clear with expiration tests (#4970) new 1083198 GEODE-7667: Add a 'clear' gfsh command for PR and RR clear (#4818) new 56679c6 GEODE-7676: Conversion of duration to seconds. This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (62858e2) \ N -- N -- N refs/heads/feature/GEODE-7665 (56679c6) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. The 8 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: .asf.yaml | 14 + LICENSE | 86 +- boms/geode-all-bom/build.gradle | 65 +- .../src/test/resources/expected-pom.xml | 312 +- .../src/test/resources/expected-pom.xml | 6 +- build.gradle | 48 +- buildSrc/build.gradle | 4 + .../japicmp/AllowMajorBreakingChanges.groovy | 21 +- .../gradle/japicmp/ParentIsExperimental.groovy | 61 + .../gradle/plugins/DependencyConstraints.groovy | 102 +- ci/images/google-geode-builder/build_image.sh | 63 - ci/images/google-geode-builder/packer.json | 2 +- .../{windows-packer.json => packer.json} | 3 +- ci/pipelines/examples/deploy_pipeline.sh | 1 + ci/pipelines/examples/jinja.template.yml | 180 +- ci/pipelines/geode-build/jinja.template.yml | 21 +- ci/pipelines/images/jinja.template.yml | 43 +- ci/pipelines/meta/deploy_meta.sh | 4 +- ci/pipelines/meta/jinja.template.yml | 1 + ci/pipelines/meta/meta.properties | 2 +- ci/pipelines/shared/jinja.variables.yml | 16 +- ci/scripts/archive_results.sh | 11 + .../build_image.sh | 25 +- ci/scripts/execute_build_examples.sh | 8 +- ci/scripts/execute_publish.sh | 4 +- ci/scripts/shared_utilities.sh | 8 +- dev-tools/release/README.md | 37 +- dev-tools/release/commit_rc.sh | 27 +- dev-tools/release/create_support_branches.sh | 266 ++ dev-tools/release/deploy_rc_pipeline.sh | 261 +- dev-tools/release/end_of_support.sh | 128 + dev-tools/release/finalize_release.sh | 195 -- dev-tools/release/license_review.sh | 362 +++ dev-tools/release/prepare_rc.sh | 90 +- dev-tools/release/print_rc_email.sh | 6 +- dev-tools/release/promote_rc.sh | 249 +- dev-tools/release/set_copyright.sh | 57 + dev-tools/release/set_versions.sh | 163 + .../ClientServerSessionCacheJUnitTest.java | 5 +- .../modules/session/TestSessionsTomcat8Base.java | 23 +- .../Tomcat8SessionsClientServerDUnitTest.java | 52 +- .../modules/session/Tomcat8SessionsDUnitTest.java | 5 +- .../BootstrappingFunctionIntegrationTest.java} | 3 +- .../session/catalina/DeltaSessionManager.java | 6 +- .../geode/modules/session/CommandServlet.java | 1 - geode-assembly/build.gradle | 77 +- .../apache/geode/session/tests/TomcatInstall.java | 4 +- .../geode/test/junit/rules/EmbeddedPulseRule.java | 2 +- .../MissingDiskStoreAcceptanceTest.java | 2 +- .../client/sni/ClientSNICQAcceptanceTest.java | 221 ++ .../sni/ClientSNIDropProxyAcceptanceTest.java | 199 ++ .../client/sni/DualServerSNIAcceptanceTest.java | 164 + .../geode/client/sni/NotOnWindowsDockerRule.java | 57 + .../client/sni/SingleServerSNIAcceptanceTest.java | 204 ++ ...tandaloneClientManagementAPIAcceptanceTest.java | 2 +- .../org/apache/geode/client/sni/docker-compose.yml | 43 + .../client/sni/geode-config/gemfire.properties | 19 + .../client/sni/geode-config/gfsecurity.properties | 27 + .../sni/geode-config/locator-maeve-keystore.jks | Bin 0 -> 2048 bytes .../geode-config/server-clementine-keystore.jks | Bin 0 -> 2059 bytes .../sni/geode-config/server-dolores-keystore.jks | Bin 0 -> 2050 bytes .../geode/client/sni/geode-config/truststore.jks | Bin 0 -> 8095 bytes .../org/apache/geode/client/sni/haproxy.cfg | 44 + .../org/apache/geode/client/sni/scripts/forever | 20 + .../geode/client/sni/scripts/geode-starter-2.gfsh | 23 + .../geode/client/sni/scripts/geode-starter.gfsh | 22 + .../cli/commands/StartLocatorCommandDUnitTest.java | 20 +- .../rest/DeploymentManagementRedployDUnitTest.java | 15 +- .../rest/ListRegionManagementDunitTest.java | 18 +- .../apache/geode/session/tests/CargoTestBase.java | 121 +- .../session/tests/TomcatClientServerTest.java | 7 +- .../geode/AssemblyContentsIntegrationTest.java | 2 +- .../geode/GeodeDependencyJarIntegrationTest.java | 2 +- .../rest/internal/web/RestRegionAPIDUnitTest.java | 5 +- .../internal/web/RestSecurityIntegrationTest.java | 16 +- .../web/RestSecurityPostProcessorTest.java | 15 +- .../pulse/EmbeddedPulseClusterSecurityTest.java | 78 + ...est.java => EmbeddedPulseHttpSecurityTest.java} | 35 +- .../geode/tools/pulse/PulseConnectivityTest.java | 4 +- .../apache/geode/tools/pulse/PulseLoggingTest.java | 34 +- .../PulseSecurityConfigCustomProfileTest.java | 98 + .../pulse/PulseSecurityConfigOAuthProfileTest.java | 85 + .../tools/pulse/PulseSecurityIntegrationTest.java | 24 +- .../integrationTest/resources/assembly_content.txt | 85 +- .../resources/dependency_classpath.txt | 78 +- .../integrationTest/resources/expected_jars.txt | 15 +- .../resources/pulse-authentication-custom.xml | 0 geode-assembly/src/main/dist/LICENSE | 138 +- geode-assembly/src/main/dist/NOTICE | 58 - geode-assembly/src/test/resources/expected-pom.xml | 2 +- .../tools/pulse/ui/PulseAcceptanceAuthTest.java | 3 +- .../tools/pulse/ui/PulseAcceptanceNoAuthTest.java | 2 +- .../Tomcat8ClientServerRollingUpgradeTest.java | 8 +- geode-book/config.yml | 8 +- .../source/subnavs/geode-subnav.erb | 11 +- geode-book/redirects.rb | 4 +- geode-common/src/test/resources/expected-pom.xml | 4 +- .../src/test/resources/expected-pom.xml | 4 +- .../cli/CreateMappingCommandDUnitTest.java | 27 +- ...reateMappingCommandForProxyRegionDUnitTest.java | 9 +- .../cli/DescribeMappingCommandDUnitTest.java | 9 +- .../cli/DestroyMappingCommandDunitTest.java | 5 +- .../jdbc/internal/cli/CreateMappingCommand.java | 4 +- .../jdbc/internal/cli/DescribeMappingCommand.java | 3 +- .../jdbc/internal/cli/DestroyMappingCommand.java | 3 +- .../jdbc/internal/cli/MappingCommandUtils.java | 7 +- .../geode/connectors/jdbc/JdbcAsyncWriterTest.java | 4 +- .../geode/connectors/jdbc/JdbcWriterTest.java | 6 +- .../internal/cli/CreateMappingCommandTest.java | 6 +- .../internal/cli/DestroyMappingCommandTest.java | 3 +- .../jdbc/internal/xml/ElementTypeTest.java | 4 +- .../xml/JdbcConnectorServiceXmlParserTest.java | 6 +- .../src/test/resources/expected-pom.xml | 4 +- .../geode/ClusterCommunicationsDUnitTest.java | 2 +- .../api/AlertingServiceDistributedTest.java | 2 +- .../geode/cache/client/SocketFactoryDUnitTest.java | 128 + ...tServerHostNameVerificationDistributedTest.java | 4 + .../internal/LocatorLoadBalancingDUnitTest.java | 4 +- .../cache/query/dunit/CompiledInDUnitTest.java | 4 +- .../query/dunit/CorruptedIndexIntegrationTest.java | 9 +- ...MultiServerPartitionedRegionQueryDUnitTest.java | 190 ++ .../geode/cache/query/dunit/PDXQueryTestBase.java | 5 +- .../cache/query/dunit/PdxLocalQueryDUnitTest.java | 11 +- .../PdxLocalQueryVersionedClassDUnitTest.java | 4 +- .../geode/cache/query/dunit/PdxQueryDUnitTest.java | 15 +- .../cache/query/dunit/PdxStringQueryDUnitTest.java | 5 +- ...PersistentRegionCompactRangeIndexDUnitTest.java | 5 +- .../dunit/QueryDataInconsistencyDUnitTest.java | 10 +- .../cache/query/dunit/QueryIndexDUnitTest.java | 38 +- .../dunit/QueryUsingFunctionContextDUnitTest.java | 7 +- .../cache/query/dunit/QueryUsingPoolDUnitTest.java | 23 +- .../ResourceManagerWithQueryMonitorDUnitTest.java | 7 +- .../query/dunit/SelectStarQueryDUnitTest.java | 5 +- ...igurationServiceConstraintsDistributedTest.java | 9 +- .../AggregateFunctionsQueryDUnitTest.java | 6 +- ...ncurrentIndexInitOnOverflowRegionDUnitTest.java | 15 +- ...ntIndexOperationsOnOverflowRegionDUnitTest.java | 19 +- ...exUpdateWithInplaceObjectModFalseDUnitTest.java | 5 +- .../ConcurrentIndexUpdateWithoutWLDUnitTest.java | 5 +- .../InitializeIndexEntryDestroyQueryDUnitTest.java | 10 +- .../index/MultiIndexCreationDUnitTest.java | 3 +- .../index/PutAllWithIndexPerfDUnitTest.java | 5 +- .../partitioned/PRBasicIndexCreationDUnitTest.java | 28 +- .../PRBasicMultiIndexCreationDUnitTest.java | 25 +- .../query/partitioned/PRBasicQueryDUnitTest.java | 3 +- .../partitioned/PRColocatedEquiJoinDUnitTest.java | 39 +- .../apache/geode/cache30/CacheXml66DUnitTest.java | 5 +- .../geode/cache30/CacheXmlGeode10DUnitTest.java | 47 +- .../cache30/DistributedAckRegionCCEDUnitTest.java | 4 +- .../geode/cache30/PutAllMultiVmDUnitTest.java | 235 +- .../apache/geode/cache30/ReconnectDUnitTest.java | 4 +- ...ReconnectWithClusterConfigurationDUnitTest.java | 2 +- .../geode/cache30/RegionReliabilityTestCase.java | 2 + .../distributed/DistributedMemberDUnitTest.java | 2 + .../apache/geode/distributed/LocatorDUnitTest.java | 2 +- .../internal/DistributionAdvisorDUnitTest.java | 2 +- ...rverReadConflictTransactionDistributedTest.java | 2 +- ...ntServerTransactionFailoverDistributedTest.java | 2 +- .../internal/cache/DeltaPropagationDUnitTest.java | 4 +- .../internal/cache/FixedPRSinglehopDUnitTest.java | 3 +- .../geode/internal/cache/GridAdvisorDUnitTest.java | 25 +- .../cache/NetSearchMessagingDUnitTest.java | 73 +- ...titionedRegionClearWithExpirationDUnitTest.java | 2 +- .../cache/PartitionedRegionSingleHopDUnitTest.java | 2476 ++++++++-------- ...nedRegionSingleHopWithServerGroupDUnitTest.java | 158 +- .../internal/cache/SingleHopStatsDUnitTest.java | 163 +- .../control/RebalanceOperationDistributedTest.java | 3 +- .../RestoreRedundancyOperationDUnitTest.java | 379 +++ ...istributedRegionFunctionExecutionDUnitTest.java | 6 +- .../geode/internal/cache/ha/FailoverDUnitTest.java | 13 +- .../geode/internal/cache/ha/HAGIIDUnitTest.java | 13 +- .../cache/ha/HARQueueNewImplDUnitTest.java | 24 +- .../internal/cache/ha/HASlowReceiverDUnitTest.java | 7 +- ...tColocatedPartitionedRegionDistributedTest.java | 2 +- ...tPartitionHangsDuringRestartRegressionTest.java | 2 +- ...PersistentPartitionedRegionDistributedTest.java | 6 +- .../PersistentRVVRecoveryDUnitTest.java | 2 +- .../PersistentRecoveryOrderDUnitTest.java | 2 +- .../cache/tier/sockets/AcceptorImplDUnitTest.java | 1 + ...dCompatibilityHigherVersionClientDUnitTest.java | 3 +- .../tier/sockets/EventIDVerificationDUnitTest.java | 13 +- .../sockets/EventIDVerificationInP2PDUnitTest.java | 11 +- .../sockets/HAStartupAndFailoverDUnitTest.java | 3 +- .../sockets/InterestListEndpointDUnitTest.java | 19 +- .../sockets/InterestListFailoverDUnitTest.java | 11 +- .../sockets/InterestListRecoveryDUnitTest.java | 19 +- .../cache/tier/sockets/PingOpDistributedTest.java | 202 ++ .../sockets/RedundancyLevelPart1DUnitTest.java | 2 +- .../sockets/RedundancyLevelPart3DUnitTest.java | 2 +- .../cache/tier/sockets/RegionCloseDUnitTest.java | 6 +- .../VerifyEventIDGenerationInP2PDUnitTest.java | 5 +- .../MeterSubregistryReconnectDistributedTest.java | 2 +- .../geode/internal/tcp/CloseConnectionTest.java | 72 +- .../LoggingWithReconnectDistributedTest.java | 2 +- ...butedSystemMXBeanWithAlertsDistributedTest.java | 12 +- ...stemMXBeanWithNotificationsDistributedTest.java | 2 +- .../management/JMXMBeanReconnectDUnitTest.java | 2 +- .../management/MemberMXBeanDistributedTest.java | 129 + .../management/OffHeapManagementDUnitTest.java | 3 +- .../geode/management/QueryDataDUnitTest.java | 28 +- .../internal/api/RegionAPIDUnitTest.java | 3 +- .../DeltaClientPostAuthorizationDUnitTest.java | 5 +- .../PDXGfshPostProcessorOnRemoteServerTest.java | 3 +- .../query/IndexSecurityDistributedTest.java | 9 +- .../DeprecatedAgentLauncherIntegrationTest.java | 2 +- .../AlertingServiceWithClusterIntegrationTest.java | 2 +- .../cache/ConnectionPoolFactoryJUnitTest.java | 16 + .../cache/client/ClientCacheFactoryJUnitTest.java | 10 +- .../AutoConnectionSourceImplJUnitTest.java | 25 +- .../internal/ConnectionPoolImplJUnitTest.java | 24 + .../client/internal/QueueManagerJUnitTest.java | 301 +- .../AvailableConnectionManagerConcurrentTest.java | 152 +- .../pooling/ConnectionManagerImplTest.java | 45 +- .../pooling/ConnectionManagerJUnitTest.java | 1127 +++---- ...tinctResultsWithDupValuesInRegionJUnitTest.java | 7 +- .../query/functional/IndexOnEntrySetJUnitTest.java | 7 +- .../query/functional/LikePredicateJUnitTest.java | 3 +- .../query/functional/NumericQueryJUnitTest.java | 13 +- .../query/functional/PdxOrderByJUnitTest.java | 3 +- .../QueryREUpdateInProgressJUnitTest.java | 48 +- .../query/internal/CopyOnReadQueryJUnitTest.java | 32 +- .../internal/GroupJunctionIntegrationTest.java | 3 +- .../internal/aggregate/AvgIntegrationTest.java | 15 +- .../internal/aggregate/CountIntegrationTest.java | 15 +- .../internal/aggregate/MaxIntegrationTest.java | 15 +- .../internal/aggregate/MinIntegrationTest.java | 15 +- .../internal/aggregate/SumIntegrationTest.java | 15 +- .../AsyncIndexUpdaterThreadShutdownJUnitTest.java | 5 +- .../internal/index/CopyOnReadIndexJUnitTest.java | 80 +- .../internal/index/EquiJoinIntegrationTest.java | 11 +- .../index/IndexManagerIntegrationTest.java | 3 +- .../internal/index/IndexStatisticsJUnitTest.java | 7 +- .../query/internal/index/IndexUseJUnitTest.java | 3 +- .../distributed/LauncherIntegrationTestCase.java | 2 +- .../geode/distributed/LocatorIntegrationTest.java | 4 +- .../ServerLauncherRemoteIntegrationTestCase.java | 2 +- .../InternalDistributedSystemIntegrationTest.java | 0 ...istributedSystemLockMemoryIntegrationTest.java} | 32 +- ...torClusterManagementServiceIntegrationTest.java | 140 + .../LocatorLoadSnapshotIntegrationTest.java | 14 +- .../DLockServiceDisconnectIntegrationTest.java} | 15 +- .../internal/membership/MembershipJUnitTest.java | 4 +- .../membership/gms/MembershipOnlyTest.java | 151 - .../tcpserver/TCPClientSSLIntegrationTest.java | 52 +- .../internal/tcpserver/TCPServerSSLJUnitTest.java | 3 +- .../CacheDistributionAdvisorConcurrentTest.java | 63 +- .../cache/PartitionedRegionCreationJUnitTest.java | 4 +- .../cache/TXDetectReadConflictJUnitTest.java | 8 +- .../backup/IncrementalBackupIntegrationTest.java | 2 +- .../cache/ha/HARegionQueueIntegrationTest.java | 460 ++- .../tier/sockets/ConnectionProxyJUnitTest.java | 96 +- .../internal/jta/functional/CacheJUnitTest.java | 31 +- .../logging/MergeLogFilesIntegrationTest.java | 2 +- ...LSocketHostNameVerificationIntegrationTest.java | 3 +- .../internal/net/SSLSocketIntegrationTest.java | 5 +- .../ControlFileWatchdogIntegrationTest.java | 6 +- .../DistributedSystemMXBeanIntegrationTest.java | 2 +- .../ClientCacheFactoryJUnitTest_single_pool.xml | 9 + .../codeAnalysis/sanctionedDataSerializables.txt | 20 +- .../geode/admin/RegionSubRegionSnapshot.java | 4 +- .../internal/DistributionLocatorConfigImpl.java | 4 +- .../admin/internal/ManagedSystemMemberImpl.java | 17 +- .../apache/geode/cache/DynamicRegionFactory.java | 6 +- .../org/apache/geode/cache/EvictionAttributes.java | 6 +- .../geode/cache/client/ClientCacheFactory.java | 46 + .../java/org/apache/geode/cache/client/Pool.java | 14 + .../org/apache/geode/cache/client/PoolFactory.java | 50 + .../apache/geode/cache/client/SocketFactory.java | 58 + .../client/internal/AutoConnectionSourceImpl.java | 7 +- .../client/internal/CacheServerLoadMessage.java | 4 +- .../client/internal/ClientMetadataService.java | 77 +- .../client/internal/ClientPartitionAdvisor.java | 2 + .../geode/cache/client/internal/Connection.java | 6 + .../cache/client/internal/ConnectionConnector.java | 11 +- .../client/internal/ConnectionFactoryImpl.java | 3 +- .../cache/client/internal/ConnectionImpl.java | 21 +- .../internal/ExecuteRegionFunctionSingleHopOp.java | 4 +- .../geode/cache/client/internal/GetAllOp.java | 14 +- .../cache/client/internal/InternalClientCache.java | 2 + .../geode/cache/client/internal/InternalPool.java | 6 + .../cache/client/internal/LiveServerPinger.java | 2 +- .../cache/client/internal/OpExecutorImpl.java | 7 +- .../apache/geode/cache/client/internal/PingOp.java | 20 +- .../geode/cache/client/internal/PoolImpl.java | 42 +- .../geode/cache/client/internal/PutAllOp.java | 41 +- .../cache/client/internal/QueueConnectionImpl.java | 15 + .../geode/cache/client/internal/RemoveAllOp.java | 12 +- .../geode/cache/client/internal/ServerProxy.java | 10 - .../client/internal/ServerRegionDataAccess.java | 3 +- .../cache/client/internal/ServerRegionProxy.java | 12 +- .../client/internal/SingleHopClientExecutor.java | 433 ++- .../internal/SingleHopOperationCallable.java | 7 +- .../pooling/AvailableConnectionManager.java | 36 +- .../client/internal/pooling/ConnectionManager.java | 10 +- .../internal/pooling/ConnectionManagerImpl.java | 65 +- .../client/internal/pooling/PooledConnection.java | 3 + .../cache/client/proxy/ProxySocketFactories.java | 26 +- .../geode/cache/client/proxy/SniProxySocket.java | 38 +- .../geode/cache/client/proxy/SniSocketFactory.java | 65 + .../geode/cache/configuration/CacheConfig.java | 23 +- .../apache/geode/cache/configuration/PoolType.java | 25 + .../geode/cache/configuration/RegionConfig.java | 4 +- .../geode/cache/control/RebalanceResults.java | 7 + .../cache/control/RegionRedundancyStatus.java | 69 + .../geode/cache/control/ResourceManager.java | 22 + .../cache/control/RestoreRedundancyOperation.java | 71 + .../cache/control/RestoreRedundancyResults.java | 119 + .../cache/partition/PartitionRebalanceInfo.java | 7 + .../internal/CumulativeNonDistinctResults.java | 3 +- .../cache/query/internal/NWayMergeResults.java | 2 +- .../geode/distributed/ConfigurationProperties.java | 2 + .../apache/geode/distributed/LocatorLauncher.java | 4 +- .../internal/AbstractDistributionConfig.java | 4 +- .../internal/ClusterDistributionManager.java | 5 +- .../internal/ClusterOperationExecutors.java | 2 +- .../distributed/internal/DistributionImpl.java | 4 +- .../distributed/internal/DistributionMessage.java | 19 +- .../InternalConfigurationPersistenceService.java | 3 +- .../internal/InternalDistributedSystem.java | 4 +- .../distributed/internal/InternalLocator.java | 31 +- .../distributed/internal/LocatorLoadSnapshot.java | 168 +- .../internal/ServerLocationAndMemberId.java | 65 + .../geode/distributed/internal/ServerLocator.java | 16 +- .../distributed/internal/ShutdownMessage.java | 19 - .../ThrottlingMemLinkedQueueWithDMStats.java | 2 +- .../geode/examples/SimpleSecurityManager.java | 2 +- .../org/apache/geode/internal/AbstractConfig.java | 2 +- .../org/apache/geode/internal/DSFIDFactory.java | 6 + .../org/apache/geode/internal/JarDeployer.java | 3 +- .../org/apache/geode/internal/SystemAdmin.java | 184 +- .../org/apache/geode/internal/SystemTimer.java | 367 +-- .../geode/internal/admin/StatAlertsManager.java | 2 +- .../geode/internal/cache/AbstractRegion.java | 3 + .../apache/geode/internal/cache/BucketAdvisor.java | 24 +- .../geode/internal/cache/ColocationHelper.java | 12 +- .../cache/DestroyPartitionedRegionMessage.java | 2 +- .../apache/geode/internal/cache/DiskStoreImpl.java | 5 +- .../geode/internal/cache/DistTXCommitMessage.java | 2 +- .../internal/cache/DistTXPrecommitMessage.java | 2 +- .../internal/cache/DistTXRollbackMessage.java | 2 +- .../internal/cache/DistributedPingMessage.java | 86 + .../geode/internal/cache/DistributedRegion.java | 64 +- .../geode/internal/cache/ExpirationScheduler.java | 2 +- .../apache/geode/internal/cache/FilterProfile.java | 42 +- .../geode/internal/cache/GemFireCacheImpl.java | 671 +++-- .../apache/geode/internal/cache/GridAdvisor.java | 14 +- .../internal/cache/InitialImageOperation.java | 3 +- .../apache/geode/internal/cache/InternalCache.java | 3 +- .../cache/InternalCacheForClientAccess.java | 6 +- .../geode/internal/cache/InternalRegion.java | 4 + .../cache/LatestLastAccessTimeMessage.java | 26 +- .../apache/geode/internal/cache/LocalRegion.java | 22 +- .../geode/internal/cache/LocalRegionDataView.java | 11 +- .../internal/cache/PRHARedundancyProvider.java | 5 + .../geode/internal/cache/PartitionedRegion.java | 101 +- .../internal/cache/PartitionedRegionDataStore.java | 10 +- .../internal/cache/PartitionedRegionHelper.java | 2 +- .../geode/internal/cache/PoolFactoryImpl.java | 42 +- .../geode/internal/cache/PoolManagerImpl.java | 3 - .../geode/internal/cache/RegionMapOwner.java | 2 + .../geode/internal/cache/TXCommitMessage.java | 2 +- .../geode/internal/cache/backup/BackupService.java | 1 + .../geode/internal/cache/control/FilterByPath.java | 8 +- .../cache/control/InternalResourceManager.java | 56 +- .../control/PartitionRebalanceDetailsImpl.java | 6 + .../cache/control/RebalanceResultsImpl.java | 10 + .../cache/control/RegionRedundancyStatusImpl.java | 153 + .../cache/control/ResourceManagerStats.java | 40 + .../control/RestoreRedundancyOperationImpl.java | 188 ++ .../control/RestoreRedundancyResultsImpl.java | 206 ++ .../cache/execute/FunctionExecutionNodePruner.java | 6 +- .../InternalFunctionExecutionServiceImpl.java | 7 + .../execute/ServerRegionFunctionExecutor.java | 2 +- .../geode/internal/cache/ha/HARegionQueue.java | 5 +- .../partitioned/BecomePrimaryBucketMessage.java | 2 +- .../partitioned/DeposePrimaryBucketMessage.java | 2 +- .../partitioned/FetchPartitionDetailsMessage.java | 2 +- .../cache/partitioned/MoveBucketMessage.java | 2 +- .../cache/partitioned/PRSanityCheckMessage.java | 2 +- .../partitioned/PartitionedRegionRebalanceOp.java | 33 +- .../partitioned/PersistentBucketRecoverer.java | 6 +- .../internal/cache/partitioned/RegionAdvisor.java | 2 + .../cache/partitioned/RemoveBucketMessage.java | 2 +- .../internal/cache/partitioned/SizeMessage.java | 2 +- .../partitioned/rebalance/CompositeDirector.java | 21 +- .../partitioned/rebalance/SatisfyRedundancy.java | 3 - .../model/PartitionedRegionLoadModel.java | 11 +- .../apache/geode/internal/cache/properties.html | 9 +- .../cache/snapshot/CacheSnapshotServiceImpl.java | 4 +- .../internal/cache/tier/sockets/AcceptorImpl.java | 2 +- .../cache/tier/sockets/CacheClientUpdater.java | 11 +- .../tier/sockets/ClientDataSerializerMessage.java | 2 +- .../tier/sockets/ClientInstantiatorMessage.java | 2 +- .../cache/tier/sockets/CommandInitializer.java | 1 + .../cache/tier/sockets/command/CreateRegion.java | 4 +- .../internal/cache/tier/sockets/command/Ping.java | 68 +- .../internal/cache/tx/RemotePutAllMessage.java | 2 + .../internal/cache/tx/RemoteRemoveAllMessage.java | 2 + .../geode/internal/cache/tx/RemoteSizeMessage.java | 2 +- .../geode/internal/cache/util/UncheckedUtils.java | 6 + .../wan/parallel/ParallelGatewaySenderQueue.java | 113 +- .../cache/wan/serial/BatchDestroyOperation.java | 2 +- .../internal/cache/xmlcache/CacheCreation.java | 5 +- .../geode/internal/cache/xmlcache/CacheXml.java | 2 + .../internal/cache/xmlcache/CacheXmlGenerator.java | 9 + .../internal/cache/xmlcache/CacheXmlParser.java | 26 + .../cache/xmlcache/ResourceManagerCreation.java | 23 + .../org/apache/geode/internal/net/BufferPool.java | 177 +- .../apache/geode/internal/net/NioSslEngine.java | 9 +- .../internal/net/SCAdvancedSocketCreator.java | 20 +- .../apache/geode/internal/net/SocketCreator.java | 26 +- .../security/IntegratedSecurityService.java | 3 +- .../geode/internal/statistics/ArchiveSplitter.java | 2 +- .../internal/statistics/StatArchiveReader.java | 114 +- .../org/apache/geode/internal/tcp/Connection.java | 90 +- .../apache/geode/internal/tcp/ConnectionTable.java | 22 +- .../tcp/ImmutableByteBufferInputStream.java | 4 +- .../org/apache/geode/internal/tcp/MsgStreamer.java | 16 +- .../apache/geode/internal/tcp/MsgStreamerList.java | 29 +- .../internal/JmxManagerLocatorRequest.java | 4 +- .../geode/management/internal/ManagementAgent.java | 16 +- .../internal/api/GeodeConnectionConfig.java | 4 +- .../configuration/realizers/IndexRealizer.java | 6 +- .../realizers/RegionConfigRealizer.java | 24 +- .../utils/ClusterConfigurationStatusRetriever.java | 4 +- .../internal/functions/RebalanceFunction.java | 2 +- .../geode/management/internal/i18n/CliStrings.java | 26 +- .../operation/RebalanceOperationPerformer.java | 38 +- .../pdx/internal/AutoSerializableManager.java | 21 +- .../geode/pdx/internal/PeerTypeRegistration.java | 4 +- .../geode/security/AuthTokenEnabledComponents.java | 11 +- .../geode.apache.org/schema/cache/cache-1.0.xsd | 4 + .../schema.pivotal.io/gemfire/cache/cache-8.1.xsd | 1 + .../org/apache/geode/cache/doc-files/cache7_0.dtd | 1 + .../org/apache/geode/cache/doc-files/cache8_0.dtd | 1 + .../sanctioned-geode-core-serializables.txt | 8 +- .../internal/ClusterAlertMessagingTest.java | 4 +- .../client/internal/ConnectionConnectorTest.java | 9 +- .../client/internal/OpExecutorImplJUnitTest.java | 540 ++-- .../cache/client/internal/TXFailoverOpTest.java | 2 + .../pooling/AvailableConnectionManagerTest.java | 66 +- .../geode/cache/configuration/CacheConfigTest.java | 27 + .../geode/distributed/ServerLauncherTest.java | 10 +- .../internal/DistributionMessageTest.java | 12 + .../internal/LocatorLoadSnapshotJUnitTest.java | 675 ++++- .../internal/ServerLocationAndMemberIdTest.java | 69 + .../org/apache/geode/internal/SystemTimerTest.java | 162 + .../geode/internal/cache/BucketAdvisorTest.java | 80 +- .../internal/cache/DistributedPingMessageTest.java | 85 + .../internal/cache/DistributedRegionTest.java | 90 +- .../internal/cache/GemFireCacheImplCloseTest.java | 54 +- .../internal/cache/InternalCacheBuilderTest.java | 4 +- .../cache/LatestLastAccessTimeMessageTest.java | 43 + .../cache/PartitionedRegionHelperJUnitTest.java | 5 +- .../PartitionedRegionRedundancyTrackerTest.java | 3 +- .../internal/cache/PartitionedRegionTest.java | 72 + .../internal/cache/backup/BackupOperationTest.java | 6 +- .../cache/control/FilterByPathJUnitTest.java | 3 +- .../cache/control/InternalResourceManagerTest.java | 2 +- .../control/RegionRedundancyStatusImplTest.java | 94 + .../RestoreRedundancyOperationImplTest.java | 231 ++ .../control/RestoreRedundancyResultsImplTest.java | 186 ++ .../InternalFunctionExecutionServiceTest.java | 33 + .../SingleThreadColocationLoggerTest.java | 5 +- .../rebalance/BucketOperatorImplTest.java | 7 +- .../PartitionedRegionLoadModelJUnitTest.java | 8 +- .../tier/sockets/CacheClientUpdaterJUnitTest.java | 6 +- .../tier/sockets/command/CreateRegionTest.java | 9 +- .../sockets/command/ExecuteFunction65Test.java | 4 +- .../sockets/command/ExecuteFunction66Test.java | 6 +- .../tier/sockets/command/ExecuteFunctionTest.java | 6 +- .../cache/tier/sockets/command/PingTest.java | 145 + .../io/CompositeOutputStreamJUnitTest.java | 8 +- .../executor/AbstractExecutorGroupJUnitTest.java | 2 +- .../apache/geode/internal/net/BufferPoolTest.java | 48 + .../geode/internal/net/NioPlainEngineTest.java | 4 +- .../geode/internal/net/NioSslEngineTest.java | 17 +- .../net/SocketCreatorFactoryJUnitTest.java | 7 + .../apache/geode/internal/tcp/MsgStreamerTest.java | 101 + .../concurrent/StoppableCountDownLatchTest.java | 4 +- .../management/internal/FederatingManagerTest.java | 4 +- .../internal/beans/ManagementListenerTest.java | 8 +- .../realizers/RegionConfigRealizerTest.java | 27 + .../operation/RebalanceOperationPerformerTest.java | 2 +- geode-core/src/test/resources/expected-pom.xml | 4 +- .../RollingUpgrade2DUnitTestBase.java | 5 +- .../RollingUpgradeNonHAFunction.java | 3 +- .../cache/query/cq/dunit/CqQueryDUnitTest.java | 3 +- .../dunit/PartitionedRegionCqQueryDUnitTest.java | 11 +- .../cache/query/dunit/PdxQueryCQTestBase.java | 5 +- ...igurationServiceConstraintsDistributedTest.java | 26 +- .../cache/PutAllClientServerDistributedTest.java | 383 ++- .../internal/cache/ha/CQListGIIDUnitTest.java | 7 +- .../cache/tier/sockets/DurableClientTestBase.java | 16 +- .../cache/tier/sockets/DurableClientTestCase.java | 23 +- .../AlterQueryServiceCommandDistributedTest.java | 5 +- geode-cq/src/test/resources/expected-pom.xml | 4 +- .../running/cluster-management-service.html.md.erb | 17 + .../checking_region_redundancy.html.md.erb | 50 +- .../configuring_ha_for_pr.html.md.erb | 2 + .../rebalancing_pr_data.html.md.erb | 5 +- .../restoring_region_redundancy.html.md.erb | 59 + .../disk_storage/using_disk_stores.html.md.erb | 9 +- .../logging/configuring_log4j2.html.md.erb | 3 +- geode-docs/prereq_and_install.html.md.erb | 10 +- geode-docs/reference/statistics_list.html.md.erb | 22 +- geode-docs/reference/topics/cache_xml.html.md.erb | 7 +- .../topics/client-cache-elements-list.html.md.erb | 1 + .../reference/topics/client-cache.html.md.erb | 33 +- .../topics/gemfire_properties.html.md.erb | 75 +- .../gfsh/command-pages/change.html.md.erb | 4 +- .../gfsh/command-pages/connect.html.md.erb | 25 +- .../gfsh/command-pages/create.html.md.erb | 2 +- .../gfsh/command-pages/rebalance.html.md.erb | 28 +- .../gfsh/command-pages/restore.html.md.erb | 64 + .../gfsh/command-pages/status.html.md.erb | 46 + .../gfsh/gfsh_command_index.html.md.erb | 6 +- .../gfsh/quick_ref_commands_by_area.html.md.erb | 2 + .../tools_modules/pulse/pulse-auth.html.md.erb | 152 +- geode-docs/tools_modules/redis_adapter.html.md.erb | 6 +- .../setting_up_a_client_server_system.html.md.erb | 17 +- .../multisite_overview.html.md.erb | 20 + .../tests/DistributedExecutorServiceRuleTest.java | 2 +- .../MemberStarterRuleAwaitIntegrationTest.java | 2 +- .../tests/SharedCountersRuleDistributedTest.java | 2 +- .../AsyncInvocationTimeoutDistributedTest.java | 2 +- .../dunit/tests/StackTraceDistributedTest.java | 2 +- .../dunit/tests/VMDumpThreadsDistributedTest.java | 2 +- .../apache/geode/cache/query/QueryTestUtils.java | 59 +- .../geode/cache/query/dunit/HelperTestCase.java | 7 +- .../apache/geode/cache/query/dunit/TestObject.java | 3 + .../internal/cache/functions/TestFunction.java | 10 +- .../cache/tier/sockets/CacheServerTestUtil.java | 1 + .../sockets/ClientServerMiscDUnitTestBase.java | 82 +- .../commands/IndexCommandsIntegrationTestBase.java | 13 +- .../cli/commands/QueryCommandDUnitTestBase.java | 7 +- .../commands/RebalanceCommandDistributedTest.java | 207 ++ .../RebalanceCommandDistributedTestBase.java | 101 - .../security/ClientAuthorizationTestCase.java | 10 +- .../apache/geode/test/dunit/AsyncInvocation.java | 2 +- .../geode/test/dunit/internal/DUnitLauncher.java | 2 + .../geode/test/dunit/internal/ProcessManager.java | 7 +- .../geode/test/dunit/rules/DistributedRule.java | 2 - .../test/dunit/internal/VMEventNotifierTest.java | 6 +- geode-dunit/src/test/resources/expected-pom.xml | 4 +- .../src/test/resources/expected-pom.xml | 4 +- .../CreateDefinedIndexesCommandDUnitTest.java | 15 +- .../cli/commands/CreateIndexCommandDUnitTest.java | 49 +- .../cli/commands/CreateRegionCommandDUnitTest.java | 11 +- ...egionCommandPersistsConfigurationDUnitTest.java | 5 +- ...eRegionCommandWithNoClusterConfigDUnitTest.java | 6 +- .../cli/commands/DiskStoreCommandsDUnitTest.java | 3 +- .../IndexCommandsShareConfigurationDUnitTest.java | 7 +- .../cli/commands/RebalanceCommandDUnitTest.java | 32 +- .../commands/RebalanceMembersColocationTest.java | 99 + ...ersistThroughClusterConfigurationDUnitTest.java | 3 +- .../cli/commands/RemoveCommandDUnitTest.java | 5 +- .../RestoreRedundancyCommandDUnitTest.java | 572 ++++ .../cli/commands/ShowMetricsDUnitTest.java | 5 +- .../commands/StatusRedundancyCommandDUnitTest.java | 288 ++ .../GfshParserAutoCompletionIntegrationTest.java | 4 +- .../cli/commands/GfshCommandIntegrationTest.java | 1 + .../cli/util/LogExporterFileIntegrationTest.java | 4 +- .../cli/commands/AlterOfflineDiskStoreCommand.java | 18 +- .../cli/commands/CommandAvailabilityIndicator.java | 3 +- .../internal/cli/commands/CreateIndexCommand.java | 65 +- .../internal/cli/commands/DestroyIndexCommand.java | 3 +- .../cli/commands/DestroyRegionCommand.java | 3 +- .../internal/cli/commands/RebalanceCommand.java | 27 +- .../internal/cli/commands/RedundancyCommand.java | 334 +++ .../cli/commands/RestoreRedundancyCommand.java | 50 + .../cli/commands/StatusRedundancyCommand.java | 46 + .../cli/functions/RedundancyCommandFunction.java | 78 + .../internal/cli/result/model/ResultModel.java | 4 +- .../sanctioned-geode-gfsh-serializables.txt | 1 + .../cli/commands/CreateIndexCommandTest.java | 56 +- .../cli/commands/RedundancyCommandTest.java | 523 ++++ .../functions/AlterQueryServiceFunctionTest.java | 8 +- .../functions/RedundancyCommandFunctionTest.java | 137 + .../cli/functions/RegionAlterFunctionTest.java | 4 +- .../web/http/support/HttpRequesterTest.java | 3 +- geode-gfsh/src/test/resources/expected-pom.xml | 4 +- .../geode/internal/cache/InternalHttpService.java | 2 + .../src/test/resources/expected-pom.xml | 4 +- .../cache/PartitionedRegionTestHelper.java | 3 + .../org/apache/geode/internal/jta/CacheUtils.java | 16 +- .../CommandAvailabilityIndicatorTestHelper.java | 2 +- .../geode/security/query/data/QueryTestObject.java | 3 + .../geode/test/awaitility/GeodeAwaitility.java | 26 +- .../java/org/apache/geode/test/fake/Fakes.java | 3 +- .../test/junit/rules/ExecutorServiceRule.java | 4 +- .../test/junit/rules/IgnoreOnWindowsRule.java | 29 +- .../apache/geode/test/process/ProcessWrapper.java | 2 +- .../geode/test/awaitility/GeodeAwaitilityTest.java | 23 +- .../rules/ExecutorServiceRuleGetThreadsTest.java | 2 +- .../test/junit/rules/ExpectedTimeoutRuleTest.java | 2 +- geode-junit/src/test/resources/expected-pom.xml | 4 +- geode-log4j/src/test/resources/expected-pom.xml | 4 +- .../logging/internal/log4j/api/FastLogger.java | 8 +- geode-logging/src/test/resources/expected-pom.xml | 4 +- geode-lucene/build.gradle | 5 +- .../cache/lucene/LuceneIndexDestroyDUnitTest.java | 3 +- .../FlatFormatPdxSerializerIntegrationTest.java} | 25 +- .../apache/geode/cache/lucene/LocalCacheRule.java | 0 .../cli/LuceneIndexCommandsIntegrationTest.java | 3 +- .../lucene/internal/LuceneRegionListener.java | 5 +- .../cache/lucene/internal/LuceneServiceImpl.java | 32 +- .../cli/functions/LuceneCreateIndexFunction.java | 3 +- .../cli/functions/LuceneDestroyIndexFunction.java | 4 +- .../internal/directory/DumpDirectoryFiles.java | 4 +- .../internal/filesystem/FileInputStream.java | 2 +- .../LuceneIndexCreationProfileJUnitTest.java | 4 +- .../internal/LuceneRegionListenerJUnitTest.java | 5 +- geode-lucene/src/test/resources/expected-pom.xml | 16 +- ...ntAndServersAreRolledOverAllBucketsCreated.java | 2 +- ...ccessfulWhenAllServersRollToCurrentVersion.java | 14 + .../geode/management/configuration/HasFile.java | 2 + .../operation/RebalanceRegionResultImpl.java | 11 + .../management/runtime/RebalanceRegionResult.java | 5 + .../sanctioned-geode-management-serializables.txt | 2 +- .../management/operation/RebalanceResultTest.java | 4 +- .../src/test/resources/expected-pom.xml | 4 +- .../src/test/script/update-management-wiki.sh | 32 +- .../membership/gms/GMSMemberDataJUnitTest.java | 49 +- .../membership/gms/GMSMembershipJUnitTest.java | 30 - .../membership/gms/MembershipIntegrationTest.java | 255 ++ .../internal/membership/gms/TestMessage.java} | 47 +- .../gms/fd/GMSHealthMonitorJUnitTest.java | 2 +- .../gms/locator/GMSLocatorIntegrationTest.java | 3 +- .../locator/GMSLocatorRecoveryIntegrationTest.java | 6 +- .../gms/messenger/JGroupsMessengerJUnitTest.java | 21 + .../internal/membership/gms/GMSMemberData.java | 4 +- .../internal/membership/gms/GMSMembershipView.java | 4 +- .../membership/gms/locator/GMSLocator.java | 9 - .../gms/locator/MembershipLocatorImpl.java | 3 +- .../membership/gms/membership/GMSJoinLeave.java | 5 +- .../membership/gms/messages/HeartbeatMessage.java | 5 + .../gms/messages/HeartbeatRequestMessage.java | 6 + .../membership/gms/messenger/JGroupsMessenger.java | 12 +- .../src/test/resources/expected-pom.xml | 4 +- .../geode/memcached/IntegrationJUnitTest.java | 4 +- .../src/test/resources/expected-pom.xml | 4 +- .../src/test/resources/expected-pom.xml | 4 +- .../src/test/resources/expected-pom.xml | 4 +- .../v1/acceptance/CacheOperationsJUnitTest.java | 3 +- ...ueryRequestOperationHandlerIntegrationTest.java | 0 .../codec/JsonPdxConverterIntegrationTest.java} | 4 +- geode-protobuf/src/test/resources/expected-pom.xml | 4 +- geode-pulse/build.gradle | 10 +- .../controllers/PulseControllerJUnitTest.java | 690 +++-- .../OAuthSecurityTokenHandoffTestConfig.java} | 34 +- .../context/PulseControllerTestContext.java | 90 + .../pulse/security/CustomSecurityConfigTest.java | 4 +- .../pulse/security/DefaultSecurityConfigTest.java | 4 +- .../pulse/security/OAuthSecurityConfigTest.java | 145 + .../security/OAuthSecurityTokenHandoffTest.java | 168 ++ .../src/integrationTest/resources/pulse.properties | 24 + .../internal/ClassPathPropertiesFileLoader.java | 44 + .../tools/pulse/internal/PropertiesFileLoader.java | 9 +- .../tools/pulse/internal/PulseAppListener.java | 127 +- .../internal/controllers/PulseController.java | 46 +- .../geode/tools/pulse/internal/data/Cluster.java | 33 +- .../tools/pulse/internal/data/ClusterFactory.java | 12 +- .../tools/pulse/internal/data/DataBrowser.java | 12 +- .../tools/pulse/internal/data/IClusterUpdater.java | 2 +- .../tools/pulse/internal/data/JMXDataUpdater.java | 16 +- .../tools/pulse/internal/data/PulseVersion.java | 16 +- .../tools/pulse/internal/data/Repository.java | 276 +- .../internal/security/CustomSecurityConfig.java | 15 +- .../internal/security/DefaultSecurityConfig.java | 26 +- .../internal/security/GemFireAuthentication.java | 5 +- .../security/GemFireAuthenticationProvider.java | 21 +- .../internal/security/GemfireSecurityConfig.java | 15 +- .../pulse/internal/security/OAuthClientConfig.java | 109 + .../internal/security/OAuthSecurityConfig.java | 68 + ...utHandler.java => RepositoryLogoutHandler.java} | 29 +- .../internal/service/ClusterDetailsService.java | 9 +- .../service/ClusterDiskThroughputService.java | 9 +- .../internal/service/ClusterGCPausesService.java | 9 +- .../service/ClusterKeyStatisticsService.java | 9 +- .../internal/service/ClusterMemberService.java | 9 +- .../service/ClusterMembersRGraphService.java | 13 +- .../service/ClusterMemoryUsageService.java | 9 +- .../internal/service/ClusterRegionService.java | 9 +- .../internal/service/ClusterRegionsService.java | 9 +- .../service/ClusterSelectedRegionService.java | 9 +- .../ClusterSelectedRegionsMemberService.java | 9 +- .../internal/service/ClusterWANInfoService.java | 9 +- .../service/MemberAsynchEventQueuesService.java | 9 +- .../internal/service/MemberClientsService.java | 9 +- .../internal/service/MemberDetailsService.java | 9 +- .../service/MemberDiskThroughputService.java | 9 +- .../internal/service/MemberGCPausesService.java | 9 +- .../internal/service/MemberGatewayHubService.java | 9 +- .../internal/service/MemberHeapUsageService.java | 9 +- .../service/MemberKeyStatisticsService.java | 9 +- .../internal/service/MemberRegionsService.java | 9 +- .../pulse/internal/service/MembersListService.java | 9 +- .../internal/service/PulseVersionService.java | 20 +- .../internal/service/QueryStatisticsService.java | 9 +- .../internal/service/SystemAlertsService.java | 9 +- geode-pulse/src/main/resources/pulse.properties | 35 + geode-pulse/src/main/webapp/WEB-INF/web.xml | 12 - .../src/main/webapp/scripts/pulsescript/common.js | 3 + .../tools/pulse/internal/PulseAppListenerTest.java | 27 +- .../pulse/internal/PulseAppListenerUnitTest.java | 58 +- .../data/JMXDataUpdaterGetDoubleAttributeTest.java | 2 +- .../pulse/internal/security/LogoutHandlerTest.java | 111 - .../security/RepositoryLogoutHandlerTest.java | 62 + geode-pulse/src/test/resources/expected-pom.xml | 2 +- .../src/test/resources/expected-pom.xml | 4 +- geode-redis/build.gradle | 31 +- .../geode/redis/ExistsDockerAcceptanceTest.java | 56 + .../redis/ExpireAtNativeRedisAcceptanceTest.java | 50 + .../redis/ExpireNativeRedisAcceptanceTest.java | 52 + .../geode/redis/GeoNativeRedisAcceptanceTest.java | 85 + .../redis/HashesNativeRedisAcceptanceTest.java | 52 + .../redis/ListsNativeRedisAcceptanceTest.java | 48 + .../redis/PersistNativeRedisAcceptanceTest.java | 52 + .../redis/PexpireNativeRedisAcceptanceTest.java | 50 + .../redis/PubSubNativeRedisAcceptanceTest.java | 58 + .../redis/RenameNativeRedisAcceptanceTest.java | 74 + .../redis/SortedSetNativeRedisAcceptanceTest.java | 47 + .../redis/StringsNativeRedisAcceptanceTest.java | 63 + .../redis/sets/SDiffNativeRedisAcceptanceTest.java | 50 + .../sets/SInterNativeRedisAcceptanceTest.java | 50 + .../redis/sets/SMoveNativeRedisAcceptanceTest.java | 50 + .../redis/sets/SPopNativeRedisAcceptanceTest.java | 50 + .../redis/sets/SRemNativeRedisAcceptanceTest.java | 50 + .../sets/SUnionNativeRedisAcceptanceTest.java | 50 + .../redis/sets/SetsNativeRedisAcceptanceTest.java | 50 + .../geode/redis/ConcurrentLoopingThreads.java | 85 + .../org/apache/geode/redis/MockSubscriber.java | 16 + .../org/apache/geode/redis/PubSubDUnitTest.java | 385 ++- .../org/apache/geode/redis/RedisDistDUnitTest.java | 95 +- .../geode/redis/RedisSessionDistDUnitTest.java | 256 ++ .../geode/redis/executors/ExpireDUnitTest.java | 223 ++ .../geode/redis/executors/hash/HMsetDUnitTest.java | 282 ++ .../geode/redis/executors/hash/HsetDUnitTest.java | 281 ++ .../redis/executors/keys/ExistsDUnitTest.java | 76 + .../redis/executors/keys/PersistDUnitTest.java | 142 + .../geode/redis/executors/set/SaddDUnitTest.java | 246 ++ .../geode/redis/executors/set/SremDUnitTest.java | 259 ++ .../RedisSpringTestApplication.java} | 20 +- .../SessionController.java | 60 + .../config/DUnitSocketAddressResolver.java | 51 + .../config/SessionListener.java} | 19 +- .../config/WebMvcConfig.java | 43 + .../org/apache/geode/redis/GeoIntegrationTest.java | 56 +- .../apache/geode/redis/HashesIntegrationTest.java | 428 ++- .../apache/geode/redis/ListsIntegrationTest.java | 11 +- .../apache/geode/redis/PubSubIntegrationTest.java | 28 +- ...t.java => RedisLockServiceIntegrationTest.java} | 57 +- .../geode/redis/RedisServerIntegrationTest.java | 30 +- ...{RenameTest.java => RenameIntegrationTest.java} | 95 +- .../apache/geode/redis/SetsIntegrationTest.java | 756 ----- .../geode/redis/SortedSetsIntegrationTest.java | 13 +- .../apache/geode/redis/StringsIntegrationTest.java | 1049 ++++++- .../geode/redis/general/ExistsIntegrationTest.java | 303 ++ .../redis/general/ExpireAtIntegrationTest.java | 139 + .../geode/redis/general/ExpireIntegrationTest.java | 467 +++ .../redis/general/PersistIntegrationTest.java | 217 ++ .../PexpireIntegrationTest.java} | 63 +- .../geode/redis/internal/DummySubscription.java} | 37 +- .../internal/SubscriptionsIntegrationTest.java | 194 ++ .../apache/geode/redis/mocks/MockSubscriber.java | 9 +- .../redis/mocks/MockSubscriberWithLatch.java} | 7 +- .../geode/redis/sets/SDiffIntegrationTest.java | 192 ++ .../geode/redis/sets/SInterIntegrationTest.java | 192 ++ .../geode/redis/sets/SMoveIntegrationTest.java | 161 + .../geode/redis/sets/SPopIntegrationTest.java | 207 ++ .../geode/redis/sets/SRemIntegrationTest.java | 291 ++ .../geode/redis/sets/SUnionIntegrationTest.java | 185 ++ .../geode/redis/sets/SetsIntegrationTest.java | 227 ++ .../apache/geode/codeAnalysis/excludedClasses.txt | 2 +- .../codeAnalysis/sanctionedDataSerializables.txt | 3 + .../org/apache/geode/redis/GeodeRedisServer.java | 173 +- .../geode/redis/internal/AbstractSubscription.java | 33 +- .../geode/redis/internal/AutoCloseableLock.java | 4 +- .../geode/redis/internal/ByteArrayWrapper.java | 3 +- .../org/apache/geode/redis/internal/Client.java | 4 + .../org/apache/geode/redis/internal/Coder.java | 19 +- .../org/apache/geode/redis/internal/Command.java | 28 + .../redis/internal/ExecutionHandlerContext.java | 54 +- .../org/apache/geode/redis/internal/Executor.java | 3 + .../org/apache/geode/redis/internal/GeoCoder.java | 8 +- .../geode/redis/internal/KeyHashIdentifier.java | 70 + .../apache/geode/redis/internal/KeyRegistrar.java | 19 +- .../EvenParameterRequirements.java} | 19 +- .../ExactParameterRequirements.java} | 21 +- .../MaximumParameterRequirements.java} | 21 +- .../MinimumParameterRequirements.java} | 22 +- .../MultipleParameterRequirements.java} | 40 +- .../ParameterRequirements.java} | 16 +- .../RedisParametersMismatchException.java | 11 +- .../SpopParameterRequirements.java} | 21 +- .../UnspecifiedParameterRequirements.java} | 19 +- .../apache/geode/redis/internal/PubSubImpl.java | 52 +- .../redis/internal/PublishResultCollector.java | 60 + .../geode/redis/internal/RedisCommandType.java | 3123 +------------------- .../geode/redis/internal/RedisConstants.java | 101 +- .../geode/redis/internal/RedisLockService.java | 46 +- .../geode/redis/internal/RegionProvider.java | 20 +- .../apache/geode/redis/internal/Subscription.java | 3 +- .../apache/geode/redis/internal/Subscriptions.java | 19 +- .../internal/executor/AbstractScanExecutor.java | 7 +- .../redis/internal/executor/CommandFunction.java | 133 + .../redis/internal/executor/ExistsExecutor.java | 18 +- .../internal/executor/ExpirationExecutor.java | 14 +- .../redis/internal/executor/ExpireAtExecutor.java | 46 +- .../redis/internal/executor/ExpireExecutor.java | 36 +- .../redis/internal/executor/PersistExecutor.java | 2 +- .../redis/internal/executor/RenameExecutor.java | 3 +- .../redis/internal/executor/ScanExecutor.java | 5 +- .../geode/redis/internal/executor/TTLExecutor.java | 4 +- .../executor/hash/GeodeRedisHashSynchronized.java | 112 + .../redis/internal/executor/hash/HDelExecutor.java | 45 +- .../internal/executor/hash/HExistsExecutor.java | 6 - .../internal/executor/hash/HGetAllExecutor.java | 29 +- .../redis/internal/executor/hash/HGetExecutor.java | 6 - .../internal/executor/hash/HIncrByExecutor.java | 6 - .../executor/hash/HIncrByFloatExecutor.java | 7 - .../internal/executor/hash/HKeysExecutor.java | 9 - .../redis/internal/executor/hash/HLenExecutor.java | 9 - .../internal/executor/hash/HMGetExecutor.java | 6 - .../internal/executor/hash/HMSetExecutor.java | 36 +- .../internal/executor/hash/HScanExecutor.java | 9 +- .../redis/internal/executor/hash/HSetExecutor.java | 54 +- .../internal/executor/hash/HSetNXExecutor.java | 6 - .../internal/executor/hash/HValsExecutor.java | 9 - .../redis/internal/executor/hash/RedisHash.java | 17 +- .../internal/executor/list/LIndexExecutor.java | 6 - .../redis/internal/executor/list/LLenExecutor.java | 9 - .../redis/internal/executor/list/LPopExecutor.java | 7 - .../internal/executor/list/LPushExecutor.java | 5 - .../internal/executor/list/LPushXExecutor.java | 8 - .../internal/executor/list/LRangeExecutor.java | 6 - .../redis/internal/executor/list/LRemExecutor.java | 6 - .../redis/internal/executor/list/LSetExecutor.java | 6 - .../internal/executor/list/LTrimExecutor.java | 6 - .../redis/internal/executor/list/PopExecutor.java | 12 +- .../redis/internal/executor/list/PushExecutor.java | 8 +- .../internal/executor/list/PushXExecutor.java | 8 +- .../redis/internal/executor/list/RPopExecutor.java | 6 - .../internal/executor/list/RPushExecutor.java | 7 - .../internal/executor/list/RPushXExecutor.java | 9 - .../executor/pubsub/PsubscribeExecutor.java | 5 +- .../internal/executor/pubsub/PublishExecutor.java | 29 +- .../executor/pubsub/SubscribeExecutor.java | 5 +- .../executor/pubsub/UnsubscribeExecutor.java | 10 +- .../redis/internal/executor/set/RedisSet.java | 373 +++ .../{SDiffExecutor.java => RedisSetCommands.java} | 52 +- .../set/RedisSetCommandsFunctionExecutor.java | 131 + .../redis/internal/executor/set/SAddExecutor.java | 52 +- .../redis/internal/executor/set/SCardExecutor.java | 27 +- .../redis/internal/executor/set/SDiffExecutor.java | 7 - .../internal/executor/set/SDiffStoreExecutor.java | 8 - .../internal/executor/set/SInterExecutor.java | 6 - .../internal/executor/set/SInterStoreExecutor.java | 7 - .../internal/executor/set/SIsMemberExecutor.java | 24 +- .../internal/executor/set/SMembersExecutor.java | 40 +- .../redis/internal/executor/set/SMoveExecutor.java | 35 +- .../redis/internal/executor/set/SPopExecutor.java | 72 +- .../internal/executor/set/SRandMemberExecutor.java | 105 +- .../redis/internal/executor/set/SRemExecutor.java | 68 +- .../redis/internal/executor/set/SScanExecutor.java | 71 +- .../internal/executor/set/SUnionExecutor.java | 7 - .../internal/executor/set/SUnionStoreExecutor.java | 9 - .../redis/internal/executor/set/SetExecutor.java | 18 +- .../redis/internal/executor/set/SetOpExecutor.java | 24 +- .../internal/executor/set/StripedExecutor.java | 43 + .../executor/set/SynchronizedStripedExecutor.java | 65 + .../internal/executor/sortedset/ZScanExecutor.java | 5 +- .../internal/executor/string/DecrExecutor.java | 81 +- .../internal/executor/string/GetExecutor.java | 2 +- .../internal/executor/string/GetRangeExecutor.java | 42 +- .../internal/executor/string/GetSetExecutor.java | 39 +- .../internal/executor/string/IncrExecutor.java | 98 +- .../internal/executor/string/MSetExecutor.java | 21 +- .../internal/executor/string/MSetNXExecutor.java | 7 +- .../internal/executor/string/SetExecutor.java | 241 +- .../internal/executor/string/SetNXExecutor.java | 5 +- .../internal/executor/string/StringExecutor.java | 10 + .../internal/executor/string/StrlenExecutor.java | 8 +- .../NamedThreadFactory.java} | 32 +- .../sanctioned-geode-redis-serializables.txt | 129 +- .../internal/ExecutionHandlerContextJUnitTest.java | 12 +- .../geode/redis/internal/GeoCoderJUnitTest.java} | 12 +- .../redis/internal/KeyHashIdentifierTest.java} | 41 +- .../geode/redis/internal/PubSubImplJUnitTest.java | 46 +- .../redis/internal/RedisLockServiceJUnitTest.java | 65 +- .../redis/internal/RegionProviderJUnitTest.java | 4 +- .../ExistsExecutorJUnitTest.java} | 40 +- .../general/ExpireAtExecutorJUnitTest.java | 83 + .../executor/general/ExpireExecutorJUnitTest.java | 87 + .../general/PExpireAtExecutorJUnitTest.java | 84 + .../PersistExecutorJUnitTest.java} | 48 +- .../general/PexpireExecutorJUnitTest.java} | 23 +- .../executor/set/SetExecutorJUnitTest.java | 408 +-- ...ExecutorTest.java => DelExecutorJUnitTest.java} | 38 +- .../executor/string/GetRangeExecutorJUnitTest.java | 108 + .../executor/string/GetSetExecutorJUnitTest.java | 99 + ...xecutorTest.java => IncrExecutorJUnitTest.java} | 51 +- .../string/StringGetExecutorJUnitTest.java | 111 + ...rTest.java => StringMGetExecutorJUnitTest.java} | 50 +- ...rTest.java => StringMSetExecutorJUnitTest.java} | 53 +- .../string/StringSetExecutorJUnitTest.java | 179 +- ...cutorTest.java => StrlenExecutorJUnitTest.java} | 41 +- geode-redis/src/test/resources/expected-pom.xml | 57 +- .../serialization/DataSerializableFixedID.java | 9 +- .../geode/internal/serialization/Version.java | 10 +- .../src/test/resources/expected-pom.xml | 4 +- .../TcpServerProductVersionDUnitTest.java | 3 +- .../internal/tcpserver/AdvancedSocketCreator.java | 5 + .../tcpserver/AdvancedSocketCreatorImpl.java | 31 +- .../internal/tcpserver/ClientSocketCreator.java | 7 +- .../tcpserver/ClientSocketCreatorImpl.java | 9 +- .../internal/tcpserver/ClusterSocketCreator.java | 3 +- .../tcpserver/ClusterSocketCreatorImpl.java | 5 +- .../internal/tcpserver/HostAndPort.java | 2 +- .../distributed/internal/tcpserver/TcpClient.java | 53 +- .../internal/tcpserver/TcpSocketCreatorImpl.java | 10 +- .../internal/tcpserver/TcpSocketFactory.java | 18 +- .../internal/tcpserver/HostAndPortTest.java | 14 +- .../internal/tcpserver/TcpServerJUnitTest.java | 12 +- .../src/test/resources/expected-pom.xml | 4 +- geode-unsafe/src/test/resources/expected-pom.xml | 4 +- geode-wan/build.gradle | 2 +- .../geode/internal/cache/wan/WANTestBase.java | 24 +- .../cache/wan/misc/WanValidationsDUnitTest.java | 1830 +++++------- .../ParallelGatewaySenderOperationsDUnitTest.java | 116 + .../geode/management/WANManagementDUnitTest.java | 3 +- .../cli/commands/AlterRegionCommandDUnitTest.java | 126 +- .../cli/commands/CreateRegionCommandDUnitTest.java | 4 +- ...rConfigurationIndexWithFromClauseDUnitTest.java | 1 - ...SenderEventRemoteDispatcherIntegrationTest.java | 0 .../cache/wan/misc/WANConfigurationJUnitTest.java | 2 +- .../internal/locator/wan/LocatorDiscovery.java | 4 +- .../locator/wan/LocatorMembershipListenerImpl.java | 4 +- .../cache/wan/AbstractRemoteGatewaySender.java | 4 +- geode-wan/src/test/resources/expected-pom.xml | 4 +- ...ateGatewaySenderMixedSiteOneCurrentSiteTwo.java | 25 +- geode-web-api/build.gradle | 7 + .../web/controllers/RestAccessControllerTest.java | 421 ++- .../web/controllers/AbstractBaseController.java | 75 +- .../web/controllers/CommonCrudController.java | 47 +- .../web/controllers/FunctionAccessController.java | 5 +- .../web/controllers/PdxBasedCrudController.java | 253 +- .../web/controllers/QueryAccessController.java | 12 +- .../internal/web/controllers/support/UpdateOp.java | 2 +- geode-web-api/src/test/resources/expected-pom.xml | 2 +- geode-web-management/build.gradle | 7 + .../internal/rest/DeploymentIntegrationTest.java | 86 + .../DeploymentManagementController.java | 14 +- .../rest/security/RestSecurityConfiguration.java | 6 +- .../DeploymentManagementControllerTest.java | 4 +- .../src/test/resources/expected-pom.xml | 2 +- geode-web/build.gradle | 7 + .../RebalanceCommandOverHttpDistributedTest.java | 24 - geode-web/src/test/resources/expected-pom.xml | 2 +- gradle.properties | 6 +- gradle/check-pom.gradle | 30 + gradle/japicmp.gradle | 88 + gradle/java.gradle | 2 +- gradle/publish-artifacts.gradle | 72 + gradle/publish-common.gradle | 50 - gradle/publish-java.gradle | 8 +- gradle/publish-war.gradle | 8 +- gradle/spotless.gradle | 2 +- gradle/standard-subproject-configuration.gradle | 4 +- settings.gradle | 3 +- 971 files changed, 34563 insertions(+), 15897 deletions(-) create mode 100644 .asf.yaml copy gradle/publish-java.gradle => buildSrc/src/main/groovy/org/apache/geode/gradle/japicmp/AllowMajorBreakingChanges.groovy (59%) create mode 100644 buildSrc/src/main/groovy/org/apache/geode/gradle/japicmp/ParentIsExperimental.groovy delete mode 100755 ci/images/google-geode-builder/build_image.sh rename ci/images/google-windows-geode-builder/{windows-packer.json => packer.json} (97%) rename ci/{images/google-windows-geode-builder => scripts}/build_image.sh (79%) create mode 100755 dev-tools/release/create_support_branches.sh create mode 100755 dev-tools/release/end_of_support.sh delete mode 100755 dev-tools/release/finalize_release.sh create mode 100755 dev-tools/release/license_review.sh create mode 100755 dev-tools/release/set_copyright.sh create mode 100755 dev-tools/release/set_versions.sh rename extensions/geode-modules/src/{test/java/org/apache/geode/modules/util/BootstrappingFunctionTest.java => integrationTest/java/org/apache/geode/modules/util/BootstrappingFunctionIntegrationTest.java} (98%) create mode 100644 geode-assembly/src/acceptanceTest/java/org/apache/geode/client/sni/ClientSNICQAcceptanceTest.java create mode 100644 geode-assembly/src/acceptanceTest/java/org/apache/geode/client/sni/ClientSNIDropProxyAcceptanceTest.java create mode 100644 geode-assembly/src/acceptanceTest/java/org/apache/geode/client/sni/DualServerSNIAcceptanceTest.java create mode 100644 geode-assembly/src/acceptanceTest/java/org/apache/geode/client/sni/NotOnWindowsDockerRule.java create mode 100644 geode-assembly/src/acceptanceTest/java/org/apache/geode/client/sni/SingleServerSNIAcceptanceTest.java create mode 100644 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/docker-compose.yml create mode 100644 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/geode-config/gemfire.properties create mode 100644 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/geode-config/gfsecurity.properties create mode 100644 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/geode-config/locator-maeve-keystore.jks create mode 100644 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/geode-config/server-clementine-keystore.jks create mode 100644 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/geode-config/server-dolores-keystore.jks create mode 100644 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/geode-config/truststore.jks create mode 100644 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/haproxy.cfg create mode 100755 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/scripts/forever create mode 100644 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/scripts/geode-starter-2.gfsh create mode 100644 geode-assembly/src/acceptanceTest/resources/org/apache/geode/client/sni/scripts/geode-starter.gfsh create mode 100644 geode-assembly/src/integrationTest/java/org/apache/geode/tools/pulse/EmbeddedPulseClusterSecurityTest.java rename geode-assembly/src/integrationTest/java/org/apache/geode/tools/pulse/{PulseSecurityTest.java => EmbeddedPulseHttpSecurityTest.java} (72%) copy geode-core/src/test/java/org/apache/geode/distributed/internal/DistributionMessageTest.java => geode-assembly/src/integrationTest/java/org/apache/geode/tools/pulse/PulseLoggingTest.java (54%) create mode 100644 geode-assembly/src/integrationTest/java/org/apache/geode/tools/pulse/PulseSecurityConfigCustomProfileTest.java create mode 100644 geode-assembly/src/integrationTest/java/org/apache/geode/tools/pulse/PulseSecurityConfigOAuthProfileTest.java copy {geode-pulse => geode-assembly}/src/integrationTest/resources/pulse-authentication-custom.xml (100%) create mode 100644 geode-core/src/distributedTest/java/org/apache/geode/cache/client/SocketFactoryDUnitTest.java create mode 100644 geode-core/src/distributedTest/java/org/apache/geode/cache/query/dunit/MultiServerPartitionedRegionQueryDUnitTest.java create mode 100644 geode-core/src/distributedTest/java/org/apache/geode/internal/cache/control/RestoreRedundancyOperationDUnitTest.java create mode 100644 geode-core/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/PingOpDistributedTest.java create mode 100644 geode-core/src/distributedTest/java/org/apache/geode/management/MemberMXBeanDistributedTest.java rename geode-core/src/{test => integrationTest}/java/org/apache/geode/distributed/internal/InternalDistributedSystemIntegrationTest.java (100%) rename geode-core/src/{test/java/org/apache/geode/distributed/internal/InternalDistributedSystemTest.java => integrationTest/java/org/apache/geode/distributed/internal/InternalDistributedSystemLockMemoryIntegrationTest.java} (81%) create mode 100644 geode-core/src/integrationTest/java/org/apache/geode/distributed/internal/InternalLocatorClusterManagementServiceIntegrationTest.java rename geode-core/src/{test/java/org/apache/geode/distributed/internal/locks/DLockServiceJUnitTest.java => integrationTest/java/org/apache/geode/distributed/internal/locks/DLockServiceDisconnectIntegrationTest.java} (83%) delete mode 100644 geode-core/src/integrationTest/java/org/apache/geode/distributed/internal/membership/gms/MembershipOnlyTest.java rename geode-core/src/{test => integrationTest}/resources/org/apache/geode/cache/client/ClientCacheFactoryJUnitTest_single_pool.xml (82%) create mode 100644 geode-core/src/main/java/org/apache/geode/cache/client/SocketFactory.java copy geode-redis/src/main/java/org/apache/geode/redis/internal/executor/list/LPushExecutor.java => geode-core/src/main/java/org/apache/geode/cache/client/proxy/ProxySocketFactories.java (63%) mode change 100755 => 100644 copy geode-redis/src/main/java/org/apache/geode/redis/internal/Client.java => geode-core/src/main/java/org/apache/geode/cache/client/proxy/SniProxySocket.java (56%) create mode 100644 geode-core/src/main/java/org/apache/geode/cache/client/proxy/SniSocketFactory.java create mode 100644 geode-core/src/main/java/org/apache/geode/cache/control/RegionRedundancyStatus.java create mode 100644 geode-core/src/main/java/org/apache/geode/cache/control/RestoreRedundancyOperation.java create mode 100644 geode-core/src/main/java/org/apache/geode/cache/control/RestoreRedundancyResults.java create mode 100644 geode-core/src/main/java/org/apache/geode/distributed/internal/ServerLocationAndMemberId.java create mode 100644 geode-core/src/main/java/org/apache/geode/internal/cache/DistributedPingMessage.java create mode 100644 geode-core/src/main/java/org/apache/geode/internal/cache/control/RegionRedundancyStatusImpl.java create mode 100644 geode-core/src/main/java/org/apache/geode/internal/cache/control/RestoreRedundancyOperationImpl.java create mode 100644 geode-core/src/main/java/org/apache/geode/internal/cache/control/RestoreRedundancyResultsImpl.java create mode 100644 geode-core/src/test/java/org/apache/geode/distributed/internal/ServerLocationAndMemberIdTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/internal/SystemTimerTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/DistributedPingMessageTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/LatestLastAccessTimeMessageTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/control/RegionRedundancyStatusImplTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/control/RestoreRedundancyOperationImplTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/control/RestoreRedundancyResultsImplTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/PingTest.java create mode 100644 geode-core/src/test/java/org/apache/geode/internal/tcp/MsgStreamerTest.java create mode 100644 geode-docs/developing/partitioned_regions/restoring_region_redundancy.html.md.erb create mode 100644 geode-docs/tools_modules/gfsh/command-pages/restore.html.md.erb create mode 100644 geode-dunit/src/main/java/org/apache/geode/management/internal/cli/commands/RebalanceCommandDistributedTest.java delete mode 100644 geode-dunit/src/main/java/org/apache/geode/management/internal/cli/commands/RebalanceCommandDistributedTestBase.java create mode 100644 geode-gfsh/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/RebalanceMembersColocationTest.java create mode 100644 geode-gfsh/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/RestoreRedundancyCommandDUnitTest.java create mode 100644 geode-gfsh/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/StatusRedundancyCommandDUnitTest.java create mode 100644 geode-gfsh/src/main/java/org/apache/geode/management/internal/cli/commands/RedundancyCommand.java create mode 100644 geode-gfsh/src/main/java/org/apache/geode/management/internal/cli/commands/RestoreRedundancyCommand.java create mode 100644 geode-gfsh/src/main/java/org/apache/geode/management/internal/cli/commands/StatusRedundancyCommand.java create mode 100644 geode-gfsh/src/main/java/org/apache/geode/management/internal/cli/functions/RedundancyCommandFunction.java create mode 100644 geode-gfsh/src/test/java/org/apache/geode/management/internal/cli/commands/RedundancyCommandTest.java create mode 100644 geode-gfsh/src/test/java/org/apache/geode/management/internal/cli/functions/RedundancyCommandFunctionTest.java copy geode-redis/src/main/java/org/apache/geode/redis/internal/AutoCloseableLock.java => geode-junit/src/main/java/org/apache/geode/test/junit/rules/IgnoreOnWindowsRule.java (57%) rename geode-lucene/src/{test/java/org/apache/geode/cache/lucene/FlatFormatPdxSerializerJunitTest.java => integrationTest/java/org/apache/geode/cache/lucene/FlatFormatPdxSerializerIntegrationTest.java} (88%) rename geode-lucene/src/{test => integrationTest}/java/org/apache/geode/cache/lucene/LocalCacheRule.java (100%) create mode 100644 geode-membership/src/integrationTest/java/org/apache/geode/distributed/internal/membership/gms/MembershipIntegrationTest.java copy geode-membership/src/{main/java/org/apache/geode/distributed/internal/membership/gms/messages/HeartbeatMessage.java => integrationTest/java/org/apache/geode/distributed/internal/membership/gms/TestMessage.java} (50%) mode change 100755 => 100644 rename geode-protobuf/src/{test => integrationTest}/java/org/apache/geode/internal/protocol/protobuf/v1/operations/OqlQueryRequestOperationHandlerIntegrationTest.java (100%) rename geode-protobuf/src/{test/java/org/apache/geode/internal/protocol/protobuf/v1/serialization/codec/JsonPdxConverterJUnitTest.java => integrationTest/java/org/apache/geode/internal/protocol/protobuf/v1/serialization/codec/JsonPdxConverterIntegrationTest.java} (99%) copy geode-pulse/src/{main/java/org/apache/geode/tools/pulse/internal/security/GemfireSecurityConfig.java => integrationTest/java/org/apache/geode/tools/pulse/internal/context/OAuthSecurityTokenHandoffTestConfig.java} (50%) create mode 100644 geode-pulse/src/integrationTest/java/org/apache/geode/tools/pulse/internal/context/PulseControllerTestContext.java create mode 100644 geode-pulse/src/integrationTest/java/org/apache/geode/tools/pulse/security/OAuthSecurityConfigTest.java create mode 100644 geode-pulse/src/integrationTest/java/org/apache/geode/tools/pulse/security/OAuthSecurityTokenHandoffTest.java create mode 100644 geode-pulse/src/integrationTest/resources/pulse.properties create mode 100644 geode-pulse/src/main/java/org/apache/geode/tools/pulse/internal/ClassPathPropertiesFileLoader.java rename geode-gfsh/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/RebalanceCommandDistributedTest.java => geode-pulse/src/main/java/org/apache/geode/tools/pulse/internal/PropertiesFileLoader.java (77%) copy geode-web-api/src/main/java/org/apache/geode/rest/internal/web/controllers/support/UpdateOp.java => geode-pulse/src/main/java/org/apache/geode/tools/pulse/internal/data/ClusterFactory.java (76%) create mode 100644 geode-pulse/src/main/java/org/apache/geode/tools/pulse/internal/security/OAuthClientConfig.java create mode 100644 geode-pulse/src/main/java/org/apache/geode/tools/pulse/internal/security/OAuthSecurityConfig.java rename geode-pulse/src/main/java/org/apache/geode/tools/pulse/internal/security/{LogoutHandler.java => RepositoryLogoutHandler.java} (62%) delete mode 100644 geode-pulse/src/test/java/org/apache/geode/tools/pulse/internal/security/LogoutHandlerTest.java create mode 100644 geode-pulse/src/test/java/org/apache/geode/tools/pulse/internal/security/RepositoryLogoutHandlerTest.java create mode 100644 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/ExistsDockerAcceptanceTest.java create mode 100644 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/ExpireAtNativeRedisAcceptanceTest.java create mode 100644 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/ExpireNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/GeoNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/HashesNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/ListsNativeRedisAcceptanceTest.java create mode 100644 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/PersistNativeRedisAcceptanceTest.java create mode 100644 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/PexpireNativeRedisAcceptanceTest.java create mode 100644 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/PubSubNativeRedisAcceptanceTest.java create mode 100644 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/RenameNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/SortedSetNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/StringsNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/sets/SDiffNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/sets/SInterNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/sets/SMoveNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/sets/SPopNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/sets/SRemNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/sets/SUnionNativeRedisAcceptanceTest.java create mode 100755 geode-redis/src/acceptanceTest/java/org/apache/geode/redis/sets/SetsNativeRedisAcceptanceTest.java create mode 100644 geode-redis/src/commonTest/java/org/apache/geode/redis/ConcurrentLoopingThreads.java create mode 100644 geode-redis/src/distributedTest/java/org/apache/geode/redis/RedisSessionDistDUnitTest.java create mode 100644 geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/ExpireDUnitTest.java create mode 100644 geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/hash/HMsetDUnitTest.java create mode 100644 geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/hash/HsetDUnitTest.java create mode 100644 geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/keys/ExistsDUnitTest.java create mode 100644 geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/keys/PersistDUnitTest.java create mode 100644 geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/set/SaddDUnitTest.java create mode 100644 geode-redis/src/distributedTest/java/org/apache/geode/redis/executors/set/SremDUnitTest.java copy geode-redis/src/{main/java/org/apache/geode/redis/internal/executor/list/LPopExecutor.java => distributedTest/java/org/apache/geode/redis/springRedisTestApplication/RedisSpringTestApplication.java} (69%) create mode 100644 geode-redis/src/distributedTest/java/org/apache/geode/redis/springRedisTestApplication/SessionController.java create mode 100644 geode-redis/src/distributedTest/java/org/apache/geode/redis/springRedisTestApplication/config/DUnitSocketAddressResolver.java copy geode-redis/src/{main/java/org/apache/geode/redis/internal/executor/list/LPushExecutor.java => distributedTest/java/org/apache/geode/redis/springRedisTestApplication/config/SessionListener.java} (57%) mode change 100755 => 100644 create mode 100755 geode-redis/src/distributedTest/java/org/apache/geode/redis/springRedisTestApplication/config/WebMvcConfig.java copy geode-redis/src/integrationTest/java/org/apache/geode/redis/{SetCommandNegativeCaseIntegrationTest.java => RedisLockServiceIntegrationTest.java} (60%) rename geode-redis/src/integrationTest/java/org/apache/geode/redis/{RenameTest.java => RenameIntegrationTest.java} (66%) delete mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/SetsIntegrationTest.java create mode 100644 geode-redis/src/integrationTest/java/org/apache/geode/redis/general/ExistsIntegrationTest.java create mode 100644 geode-redis/src/integrationTest/java/org/apache/geode/redis/general/ExpireAtIntegrationTest.java create mode 100644 geode-redis/src/integrationTest/java/org/apache/geode/redis/general/ExpireIntegrationTest.java create mode 100644 geode-redis/src/integrationTest/java/org/apache/geode/redis/general/PersistIntegrationTest.java rename geode-redis/src/integrationTest/java/org/apache/geode/redis/{SetCommandNegativeCaseIntegrationTest.java => general/PexpireIntegrationTest.java} (55%) copy geode-redis/src/{main/java/org/apache/geode/redis/internal/Client.java => integrationTest/java/org/apache/geode/redis/internal/DummySubscription.java} (61%) create mode 100644 geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/SubscriptionsIntegrationTest.java copy geode-redis/src/{distributedTest/java/org/apache/geode/redis/MockSubscriber.java => integrationTest/java/org/apache/geode/redis/mocks/MockSubscriberWithLatch.java} (89%) create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/sets/SDiffIntegrationTest.java create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/sets/SInterIntegrationTest.java create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/sets/SMoveIntegrationTest.java create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/sets/SPopIntegrationTest.java create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/sets/SRemIntegrationTest.java create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/sets/SUnionIntegrationTest.java create mode 100755 geode-redis/src/integrationTest/java/org/apache/geode/redis/sets/SetsIntegrationTest.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/KeyHashIdentifier.java copy geode-redis/src/main/java/org/apache/geode/redis/internal/{executor/string/StringExecutor.java => ParameterRequirements/EvenParameterRequirements.java} (62%) mode change 100755 => 100644 copy geode-redis/src/main/java/org/apache/geode/redis/internal/{executor/string/StringExecutor.java => ParameterRequirements/ExactParameterRequirements.java} (60%) mode change 100755 => 100644 copy geode-redis/src/main/java/org/apache/geode/redis/internal/{executor/string/StringExecutor.java => ParameterRequirements/MaximumParameterRequirements.java} (60%) mode change 100755 => 100644 copy geode-redis/src/main/java/org/apache/geode/redis/internal/{executor/string/StringExecutor.java => ParameterRequirements/MinimumParameterRequirements.java} (61%) mode change 100755 => 100644 rename geode-redis/src/{test/java/org/apache/geode/redis/internal/executor/hash/HDelExecutorJUnitTest.java => main/java/org/apache/geode/redis/internal/ParameterRequirements/MultipleParameterRequirements.java} (53%) copy geode-redis/src/main/java/org/apache/geode/redis/internal/{executor/string/StringExecutor.java => ParameterRequirements/ParameterRequirements.java} (65%) mode change 100755 => 100644 copy geode-core/src/main/java/org/apache/geode/internal/cache/util/UncheckedUtils.java => geode-redis/src/main/java/org/apache/geode/redis/internal/ParameterRequirements/RedisParametersMismatchException.java (73%) copy geode-redis/src/main/java/org/apache/geode/redis/internal/{executor/string/StringExecutor.java => ParameterRequirements/SpopParameterRequirements.java} (60%) mode change 100755 => 100644 copy geode-redis/src/main/java/org/apache/geode/redis/internal/{executor/list/LPushXExecutor.java => ParameterRequirements/UnspecifiedParameterRequirements.java} (68%) mode change 100755 => 100644 create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/PublishResultCollector.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/executor/CommandFunction.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/executor/hash/GeodeRedisHashSynchronized.java copy geode-management/src/main/java/org/apache/geode/management/configuration/HasFile.java => geode-redis/src/main/java/org/apache/geode/redis/internal/executor/hash/RedisHash.java (67%) create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/executor/set/RedisSet.java copy geode-redis/src/main/java/org/apache/geode/redis/internal/executor/set/{SDiffExecutor.java => RedisSetCommands.java} (54%) mode change 100755 => 100644 create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/executor/set/RedisSetCommandsFunctionExecutor.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/executor/set/StripedExecutor.java create mode 100644 geode-redis/src/main/java/org/apache/geode/redis/internal/executor/set/SynchronizedStripedExecutor.java copy geode-redis/src/main/java/org/apache/geode/redis/internal/{executor/ExpirationExecutor.java => serverinitializer/NamedThreadFactory.java} (55%) mode change 100755 => 100644 rename geode-redis/src/{integrationTest/java/org/apache/geode/redis/GeoCoderIntegrationTest.java => test/java/org/apache/geode/redis/internal/GeoCoderJUnitTest.java} (81%) mode change 100755 => 100644 copy geode-redis/src/{main/java/org/apache/geode/redis/internal/Client.java => test/java/org/apache/geode/redis/internal/KeyHashIdentifierTest.java} (51%) copy geode-redis/src/test/java/org/apache/geode/redis/internal/executor/{string/DelExecutorTest.java => general/ExistsExecutorJUnitTest.java} (57%) create mode 100644 geode-redis/src/test/java/org/apache/geode/redis/internal/executor/general/ExpireAtExecutorJUnitTest.java create mode 100644 geode-redis/src/test/java/org/apache/geode/redis/internal/executor/general/ExpireExecutorJUnitTest.java create mode 100644 geode-redis/src/test/java/org/apache/geode/redis/internal/executor/general/PExpireAtExecutorJUnitTest.java copy geode-redis/src/test/java/org/apache/geode/redis/internal/executor/{string/DelExecutorTest.java => general/PersistExecutorJUnitTest.java} (54%) copy geode-redis/src/{main/java/org/apache/geode/redis/internal/executor/list/LPushXExecutor.java => test/java/org/apache/geode/redis/internal/executor/general/PexpireExecutorJUnitTest.java} (60%) mode change 100755 => 100644 copy geode-redis/src/test/java/org/apache/geode/redis/internal/executor/string/{DelExecutorTest.java => DelExecutorJUnitTest.java} (64%) create mode 100644 geode-redis/src/test/java/org/apache/geode/redis/internal/executor/string/GetRangeExecutorJUnitTest.java create mode 100644 geode-redis/src/test/java/org/apache/geode/redis/internal/executor/string/GetSetExecutorJUnitTest.java copy geode-redis/src/test/java/org/apache/geode/redis/internal/executor/string/{DelExecutorTest.java => IncrExecutorJUnitTest.java} (56%) create mode 100644 geode-redis/src/test/java/org/apache/geode/redis/internal/executor/string/StringGetExecutorJUnitTest.java copy geode-redis/src/test/java/org/apache/geode/redis/internal/executor/string/{DelExecutorTest.java => StringMGetExecutorJUnitTest.java} (57%) copy geode-redis/src/test/java/org/apache/geode/redis/internal/executor/string/{DelExecutorTest.java => StringMSetExecutorJUnitTest.java} (53%) rename geode-redis/src/test/java/org/apache/geode/redis/internal/executor/string/{DelExecutorTest.java => StrlenExecutorJUnitTest.java} (62%) copy geode-management/src/main/java/org/apache/geode/management/configuration/HasFile.java => geode-tcp-server/src/main/java/org/apache/geode/distributed/internal/tcpserver/TcpSocketFactory.java (71%) rename geode-wan/src/{test => integrationTest}/java/org/apache/geode/internal/cache/wan/GatewaySenderEventRemoteDispatcherIntegrationTest.java (100%) create mode 100644 geode-web-management/src/integrationTest/java/org/apache/geode/management/internal/rest/DeploymentIntegrationTest.java delete mode 100644 geode-web/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/RebalanceCommandOverHttpDistributedTest.java create mode 100644 gradle/japicmp.gradle create mode 100644 gradle/publish-artifacts.gradle