This is an automated email from the ASF dual-hosted git repository. ringles pushed a commit to branch Revert-GEODE-9969 in repository https://gitbox.apache.org/repos/asf/geode.git
commit 64f7205065463babc3ab5d60105b7a8aad0cd5b5 Author: Ray Ingles <[email protected]> AuthorDate: Wed Jan 26 18:20:41 2022 -0500 Revert "GEODE-9969: Fix unescaping the region name with underscore (#7282)" This reverts commit 4b5b30e379c35f17578251fe297c2b7fe7921fa4. Breaking windows-acceptance-test. --- ...gDiskStoreAfterServerRestartAcceptanceTest.java | 161 --------------------- .../internal/cache/PartitionedRegionHelper.java | 2 - .../cache/PartitionedRegionHelperJUnitTest.java | 42 ++---- 3 files changed, 16 insertions(+), 189 deletions(-) diff --git a/geode-assembly/src/acceptanceTest/java/org/apache/geode/cache/persistence/MissingDiskStoreAfterServerRestartAcceptanceTest.java b/geode-assembly/src/acceptanceTest/java/org/apache/geode/cache/persistence/MissingDiskStoreAfterServerRestartAcceptanceTest.java deleted file mode 100644 index 3501ea3..0000000 --- a/geode-assembly/src/acceptanceTest/java/org/apache/geode/cache/persistence/MissingDiskStoreAfterServerRestartAcceptanceTest.java +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more contributor license - * agreements. See the NOTICE file distributed with this work for additional information regarding - * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance with the License. You may obtain a - * copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - */ -package org.apache.geode.cache.persistence; - -import static org.apache.geode.cache.Region.SEPARATOR; -import static org.apache.geode.internal.AvailablePortHelper.getRandomAvailableTCPPorts; -import static org.apache.geode.test.awaitility.GeodeAwaitility.await; -import static org.assertj.core.api.Assertions.assertThat; - -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.nio.file.StandardCopyOption; - -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.rules.TemporaryFolder; - -import org.apache.geode.test.assertj.LogFileAssert; -import org.apache.geode.test.junit.rules.gfsh.GfshRule; - -public class MissingDiskStoreAfterServerRestartAcceptanceTest { - - private static final String SERVER_1_NAME = "server1"; - private static final String SERVER_2_NAME = "server2"; - private static final String SERVER_3_NAME = "server3"; - private static final String SERVER_4_NAME = "server4"; - private static final String SERVER_5_NAME = "server5"; - private static final String LOCATOR_NAME = "locator"; - private static final String REGION_NAME_WITH_UNDERSCORE = "_myRegion"; - - private Path server4Folder; - private Path server5Folder; - private TemporaryFolder temporaryFolder; - - private int locatorPort; - - private String startServer1Command; - private String startServer2Command; - private String startServer3Command; - private String startServer4Command; - private String startServer5Command; - - private String createRegionWithUnderscoreCommand; - private String connectToLocatorCommand; - private String queryCommand; - - @Rule - public GfshRule gfshRule = new GfshRule(); - - @Before - public void setUp() throws Exception { - temporaryFolder = gfshRule.getTemporaryFolder(); - server4Folder = temporaryFolder.newFolder(SERVER_4_NAME).toPath().toAbsolutePath(); - server5Folder = temporaryFolder.newFolder(SERVER_5_NAME).toPath().toAbsolutePath(); - - int[] ports = getRandomAvailableTCPPorts(6); - locatorPort = ports[0]; - int server1Port = ports[1]; - int server2Port = ports[2]; - int server3Port = ports[3]; - int server4Port = ports[4]; - int server5Port = ports[5]; - - String startLocatorCommand = String.join(" ", - "start locator", - "--name=" + LOCATOR_NAME, - "--port=" + locatorPort, - "--locators=localhost[" + locatorPort + "]"); - - startServer1Command = String.join(" ", - "start server", - "--name=" + SERVER_1_NAME, - "--locators=localhost[" + locatorPort + "]", - "--server-port=" + server1Port); - - startServer2Command = String.join(" ", - "start server", - "--name=" + SERVER_2_NAME, - "--locators=localhost[" + locatorPort + "]", - "--server-port=" + server2Port); - - startServer3Command = String.join(" ", - "start server", - "--name=" + SERVER_3_NAME, - "--locators=localhost[" + locatorPort + "]", - "--server-port=" + server3Port); - - startServer4Command = String.join(" ", - "start server", - "--name=" + SERVER_4_NAME, - "--dir=" + server4Folder, - "--locators=localhost[" + locatorPort + "]", - "--server-port=" + server4Port); - - startServer5Command = String.join(" ", - "start server", - "--name=" + SERVER_5_NAME, - "--dir=" + server5Folder, - "--locators=localhost[" + locatorPort + "]", - "--server-port=" + server5Port); - - createRegionWithUnderscoreCommand = String.join(" ", - "create region", - "--name=" + REGION_NAME_WITH_UNDERSCORE, - "--type=PARTITION_REDUNDANT_PERSISTENT", - "--redundant-copies=1", - "--enable-synchronous-disk=false"); - - connectToLocatorCommand = "connect --locator=localhost[" + locatorPort + "]"; - - queryCommand = - "query --query=\"select * from " + SEPARATOR + REGION_NAME_WITH_UNDERSCORE + "\""; - - gfshRule.execute(startLocatorCommand, startServer1Command, startServer2Command, - startServer3Command, startServer4Command, - createRegionWithUnderscoreCommand); - } - - @Test - public void serverLauncherUnderscore() throws IOException { - gfshRule.execute(connectToLocatorCommand, queryCommand); - gfshRule.execute(connectToLocatorCommand, "stop server --name=" + SERVER_4_NAME); - assertThat( - gfshRule.execute(connectToLocatorCommand, "show missing-disk-stores").getOutputText()) - .contains("Missing Disk Stores"); - - Path server4Path = Paths.get(String.valueOf(server4Folder)); - Path server5Path = Paths.get(String.valueOf(server5Folder)); - Files.move(server4Path, server5Path, StandardCopyOption.REPLACE_EXISTING); - - gfshRule.execute(startServer5Command); - - await().untilAsserted(() -> { - String waitingForMembersMessage = String.format( - "Server server5 startup completed in"); - - LogFileAssert.assertThat(server5Folder.resolve(SERVER_5_NAME + ".log").toFile()) - .exists() - .contains(waitingForMembersMessage); - }); - - String showDiskStoresOutput = - gfshRule.execute(connectToLocatorCommand, "show missing-disk-stores").getOutputText(); - assertThat(showDiskStoresOutput).contains("No missing disk store found"); - } -} diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegionHelper.java b/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegionHelper.java index 258e5b2..d7fcdee 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegionHelper.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegionHelper.java @@ -761,11 +761,9 @@ public class PartitionedRegionHelper { public static final String TWO_SEPARATORS = SEPARATOR + SEPARATOR; - public static final String THREE_SEPARATORS = TWO_SEPARATORS + SEPARATOR; public static String unescapePRPath(String escapedPath) { String path = escapedPath.replace('_', SEPARATOR_CHAR); - path = path.replace(THREE_SEPARATORS, SEPARATOR + "_"); path = path.replace(TWO_SEPARATORS, "_"); return path; } diff --git a/geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionHelperJUnitTest.java b/geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionHelperJUnitTest.java index 16c581c..b179f8b 100644 --- a/geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionHelperJUnitTest.java +++ b/geode-core/src/test/java/org/apache/geode/internal/cache/PartitionedRegionHelperJUnitTest.java @@ -15,7 +15,7 @@ package org.apache.geode.internal.cache; import static org.apache.geode.cache.Region.SEPARATOR; -import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.Assert.assertEquals; import org.junit.Test; @@ -24,31 +24,21 @@ public class PartitionedRegionHelperJUnitTest { @Test public void testEscapeUnescape() { - String bucketName = - PartitionedRegionHelper.getBucketName(SEPARATOR + "root" + SEPARATOR + "region", 5); - assertThat(bucketName).as("Name = " + bucketName).doesNotContain(SEPARATOR); - assertThat(PartitionedRegionHelper.getPRPath(bucketName)) - .isEqualTo(SEPARATOR + "root" + SEPARATOR + "region"); - - bucketName = - PartitionedRegionHelper.getBucketName(SEPARATOR + "root" + SEPARATOR + "region_one", 5); - assertThat(bucketName).as("Name = " + bucketName).doesNotContain(SEPARATOR); - assertThat(PartitionedRegionHelper.getPRPath(bucketName)) - .isEqualTo(SEPARATOR + "root" + SEPARATOR + "region_one"); + { + String bucketName = + PartitionedRegionHelper.getBucketName(SEPARATOR + "root" + SEPARATOR + "region", 5); + assertEquals("Name = " + bucketName, -1, bucketName.indexOf(SEPARATOR)); + assertEquals(SEPARATOR + "root" + SEPARATOR + "region", + PartitionedRegionHelper.getPRPath(bucketName)); + } + + { + String bucketName = + PartitionedRegionHelper.getBucketName(SEPARATOR + "root" + SEPARATOR + "region_one", 5); + assertEquals("Name = " + bucketName, -1, bucketName.indexOf(SEPARATOR)); + assertEquals(SEPARATOR + "root" + SEPARATOR + "region_one", + PartitionedRegionHelper.getPRPath(bucketName)); + } } - @Test - public void testEscapeUnescapeWhenRegionHasUnderscoreInTheName() { - String bucketName = - PartitionedRegionHelper.getBucketName(SEPARATOR + "_region", 5); - assertThat(bucketName).as("Name = " + bucketName).doesNotContain(SEPARATOR); - assertThat(PartitionedRegionHelper.getPRPath(bucketName)) - .isEqualTo(SEPARATOR + "_region"); - - bucketName = - PartitionedRegionHelper.getBucketName(SEPARATOR + "root" + SEPARATOR + "_region_one", 5); - assertThat(bucketName).as("Name = " + bucketName).doesNotContain(SEPARATOR); - assertThat(PartitionedRegionHelper.getPRPath(bucketName)) - .isEqualTo(SEPARATOR + "root" + SEPARATOR + "_region_one"); - } }
