Source:
public void alterReplicateRegionWithParallelAsynchronousEventQueueShouldFailAndDoNotPersistChangesIntoTheClusterConfigurationService() { addIgnoredException(AsyncEventQueueConfigurationException.class); String regionName = testName.getMethodName(); String asyncEventQueueName = testName.getMethodName() + "_asyncEventQueue"; gfsh.executeAndAssertThat( "create async-event-queue --parallel=true --persistent=false --listener=org.apache.geode.internal.cache.wan.MyAsyncEventListener --id=" + asyncEventQueueName) .statusIsSuccess(); locator.waitUntilAsyncEventQueuesAreReadyOnExactlyThisManyServers(asyncEventQueueName, 1); gfsh.executeAndAssertThat("create region --type=REPLICATE --name=" + regionName) .statusIsSuccess(); locator.waitUntilRegionIsReadyOnExactlyThisManyServers(SEPARATOR + regionName, 1); gfsh.executeAndAssertThat( "alter region --name=" + regionName + " --async-event-queue-id=" + asyncEventQueueName) .statusIsError() .containsOutput("server-1", "Parallel Async Event Queue " + asyncEventQueueName + " can not be used with replicated region " + SEPARATOR + regionName); locator.invoke(() -> { InternalLocator internalLocator = ClusterStartupRule.getLocator(); assertThat(internalLocator).isNotNull(); CacheConfig config = internalLocator.getConfigurationPersistenceService().getCacheConfig("cluster"); RegionConfig regionConfig = find(config.getRegions(), regionName); assertThat(regionConfig).isNotNull(); assertThat(regionConfig.getRegionAttributes()).isNotNull(); assertThat(regionConfig.getRegionAttributes().getAsyncEventQueueIds()).isNull(); }); }

Target:
public void alterReplicateRegionWithParallelAsynchronousEventQueueShouldFailAndDoNotPersistChangesIntoTheClusterConfigurationService() { addIgnoredException(AsyncEventQueueConfigurationException.class); String regionName = testName.getMethodName(); String asyncEventQueueName = testName.getMethodName() + "_asyncEventQueue"; CommandStringBuilder createAsyncQueueBuilder = new CommandStringBuilder("create async-event-queue") .addOption("id", asyncEventQueueName) .addOption("parallel", "true") .addOption("persistent", "false") .addOption("listener", MyAsyncEventListener.class.getCanonicalName()); gfsh.executeAndAssertThat(createAsyncQueueBuilder.getCommandString()).statusIsSuccess(); locator.waitUntilAsyncEventQueuesAreReadyOnExactlyThisManyServers(asyncEventQueueName, 1); CommandStringBuilder createRegionBuilder = new CommandStringBuilder("create region") .addOption("name", regionName) .addOption("type", RegionShortcut.REPLICATE.toString()); gfsh.executeAndAssertThat(createRegionBuilder.getCommandString()).statusIsSuccess(); locator.waitUntilRegionIsReadyOnExactlyThisManyServers(SEPARATOR + regionName, 1); CommandStringBuilder alterRegionBuilder = new CommandStringBuilder("alter region") .addOption("name", regionName) .addOption("async-event-queue-id", asyncEventQueueName); gfsh.executeAndAssertThat(alterRegionBuilder.getCommandString()) .statusIsError() .containsOutput("server-1", "Parallel Async Event Queue " + asyncEventQueueName + " can not be used with replicated region " + SEPARATOR + regionName); locator.invoke(() -> { InternalLocator internalLocator = ClusterStartupRule.getLocator(); assertThat(internalLocator).isNotNull(); CacheConfig config = internalLocator.getConfigurationPersistenceService().getCacheConfig("cluster"); RegionConfig regionConfig = find(config.getRegions(), regionName); assertThat(regionConfig).isNotNull(); assertThat(regionConfig.getRegionAttributes()).isNotNull(); assertThat(regionConfig.getRegionAttributes().getAsyncEventQueueIds()).isNull(); }); }