You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by bo...@apache.org on 2017/10/17 18:38:52 UTC
[geode] 01/01: Merge branch 'develop' into feature/GEODE-3026
This is an automated email from the ASF dual-hosted git repository.
boglesby pushed a commit to branch feature/GEODE-3026
in repository https://gitbox.apache.org/repos/asf/geode.git
commit 9f39add38cc4961e592e352f64bef782ffb58bff
Merge: 8757eee b7208d2
Author: Barry Oglesby <bo...@users.noreply.github.com>
AuthorDate: Tue Oct 17 11:38:49 2017 -0700
Merge branch 'develop' into feature/GEODE-3026
.../cli/commands/StopServerAcceptanceTest.java | 14 -
.../session/tests/TomcatClientServerTest.java | 1 +
geode-book/config.yml | 6 +-
geode-book/redirects.rb | 4 +-
.../org/apache/geode/cache/query/IndexType.java | 24 +-
.../geode/cache/query/internal/CompiledIn.java | 65 +-
.../cache/query/internal/CompiledIteratorDef.java | 3 +
.../geode/cache/query/internal/CompiledSelect.java | 2 +-
.../RestrictedMethodInvocationAuthorizer.java | 29 +
.../org/apache/geode/cache/wan/GatewaySender.java | 7 +-
.../geode/cache/wan/GatewaySenderFactory.java | 2 +
.../distributed/internal/InternalLocator.java | 6 +-
.../membership/gms/fd/GMSHealthMonitor.java | 28 +-
.../membership/gms/membership/GMSJoinLeave.java | 19 +
.../gms/messages/FinalCheckPassedMessage.java | 71 ++
.../distributed/internal/tcpserver/TcpServer.java | 38 +-
.../geode/internal/DataSerializableFixedID.java | 1 +
.../java/org/apache/geode/internal/Version.java | 8 +-
.../internal/admin/remote/RemoteBridgeServer.java | 12 +-
.../geode/internal/cache/AbstractCacheServer.java | 2 +-
.../geode/internal/cache/AbstractRegionEntry.java | 23 +-
.../apache/geode/internal/cache/BackupManager.java | 74 +-
.../apache/geode/internal/cache/CacheConfig.java | 18 +-
.../geode/internal/cache/CacheServerImpl.java | 20 +
...oOpStatistics.java => InternalCacheServer.java} | 14 +-
...sageHandlerFactory.java => InternalRegion.java} | 36 +-
.../apache/geode/internal/cache/LocalRegion.java | 2 +-
.../org/apache/geode/internal/cache/Oplog.java | 4 +-
.../cache/persistence/BackupInspector.java | 13 +-
.../internal/cache/persistence/RestoreScript.java | 69 +-
.../cache/persistence/ScriptGenerator.java | 17 +-
.../cache/persistence/UnixBackupInspector.java | 9 +-
.../cache/persistence/UnixScriptGenerator.java | 41 +-
.../cache/persistence/WindowsBackupInspector.java | 7 +-
.../cache/persistence/WindowsScriptGenerator.java | 47 +-
.../apache/geode/internal/cache/tier/Acceptor.java | 22 +-
.../internal/cache/tier/sockets/AcceptorImpl.java | 79 +-
.../cache/tier/sockets/CacheClientProxy.java | 2 +-
...geHandler.java => ClientProtocolProcessor.java} | 32 +-
...sageHandler.java => ClientProtocolService.java} | 35 +-
.../tier/sockets/ClientProtocolServiceLoader.java | 51 ++
.../cache/tier/sockets/CommandInitializer.java | 5 +
.../sockets/GenericProtocolServerConnection.java | 27 +-
.../tier/sockets/ServerConnectionFactory.java | 84 +-
.../cache/tier/sockets/TcpServerFactory.java | 10 +-
.../cache/versions/RegionVersionVector.java | 10 +-
.../cache/xmlcache/CacheServerCreation.java | 13 +-
.../geode/internal/cache/xmlcache/CacheXml.java | 2 +-
.../internal/cache/xmlcache/CacheXmlParser.java | 14 +-
.../internal/cache/xmlcache/XmlGeneratorUtils.java | 60 ++
.../geode/internal/i18n/LocalizedStrings.java | 3 +
.../statistics/platform/LinuxProcFsStatistics.java | 12 +-
.../statistics/platform/LinuxSystemStats.java | 6 +-
.../geode/management/DistributedSystemMXBean.java | 2 +-
.../apache/geode/management/cli/ConverterHint.java | 3 +-
.../management/internal/cli/CommandManager.java | 3 +
.../internal/cli/commands/CreateIndexCommand.java | 157 ++--
.../internal/cli/commands/CreateRegionCommand.java | 26 +-
.../internal/cli/commands/DefineIndexCommand.java | 36 +-
.../cli/commands/DescribeRegionCommand.java | 259 +++---
.../internal/cli/commands/DestroyIndexCommand.java | 1 -
.../cli/commands/DestroyRegionCommand.java | 195 +----
.../internal/cli/commands/DisconnectCommand.java | 3 +-
.../internal/cli/commands/GetCommand.java | 11 -
.../internal/cli/commands/GfshCommand.java | 9 +
.../internal/cli/commands/ListIndexCommand.java | 6 +-
.../internal/cli/commands/LocateEntryCommand.java | 11 -
.../internal/cli/commands/PutCommand.java | 15 -
.../internal/cli/commands/RemoveCommand.java | 5 -
.../internal/cli/commands/ShowMetricsCommand.java | 26 +-
...{IndexTypeConverter.java => EnumConverter.java} | 34 +-
.../cli/converters/IndexTypeConverter.java | 30 +-
.../cli/converters/RegionPathConverter.java | 52 +-
.../internal/cli/domain/IndexDetails.java | 56 +-
.../management/internal/cli/domain/IndexInfo.java | 16 +-
.../functions/CreateDefinedIndexesFunction.java | 5 +-
.../cli/functions/CreateIndexFunction.java | 6 +-
.../cli/functions/DescribeDiskStoreFunction.java | 7 +-
.../internal/cli/functions/ExportDataFunction.java | 3 +-
.../cli/functions/GarbageCollectionFunction.java | 3 +-
.../functions/GatewayReceiverCreateFunction.java | 3 +-
.../cli/functions/GatewaySenderCreateFunction.java | 3 +-
.../functions/GatewaySenderDestroyFunction.java | 3 +-
.../GetMemberConfigInformationFunction.java | 3 +-
.../functions/GetMemberInformationFunction.java | 3 +-
.../functions/GetRegionDescriptionFunction.java | 3 +-
.../cli/functions/GetStackTracesFunction.java | 3 +-
.../internal/cli/functions/ImportDataFunction.java | 3 +-
.../functions/ListAsyncEventQueuesFunction.java | 8 +-
.../cli/functions/ListDeployedFunction.java | 7 +-
.../cli/functions/ListDurableCqNamesFunction.java | 8 +-
.../cli/functions/ListFunctionFunction.java | 3 +-
.../cli/functions/MemberRegionFunction.java | 3 +-
.../cli/functions/MembersForRegionFunction.java | 4 +-
.../internal/cli/functions/RebalanceFunction.java | 3 +-
.../cli/functions/RegionAlterFunction.java | 3 +-
.../cli/functions/RegionCreateFunction.java | 7 +-
.../cli/functions/RegionDestroyFunction.java | 3 +-
.../internal/cli/functions/UndeployFunction.java | 8 +-
.../internal/cli/functions/UnregisterFunction.java | 4 -
.../management/internal/cli/i18n/CliStrings.java | 6 +-
.../geode/management/internal/cli/shell/Gfsh.java | 11 +-
.../configuration/domain/CacheElement.java | 26 +-
.../internal/configuration/utils/XmlUtils.java | 143 +---
.../{ => internal}/server/Authenticator.java | 2 +-
.../security/{ => internal}/server/Authorizer.java | 2 +-
.../{ => internal}/server/NoOpAuthenticator.java | 2 +-
.../{ => internal}/server/NoOpAuthorizer.java | 2 +-
.../security/{ => internal}/server/package.html | 0
.../geode.apache.org/schema/cache/cache-1.0.xsd | 7 +-
...he.geode.security.internal.server.Authenticator | 1 +
.../org.apache.geode.security.server.Authenticator | 1 -
.../java/org/apache/geode/LonerDMJUnitTest.java | 15 -
.../apache/geode/cache/query/IndexTypeTest.java | 29 +-
.../cache/query/internal/CompiledInJUnitTest.java | 68 +-
.../RestrictedMethodInvocationAuthorizerTest.java | 250 ++++++
.../geode/cache30/CacheStatisticsDUnitTest.java | 3 +-
.../geode/cache30/MultiVMRegionTestCase.java | 119 +--
.../geode/cache30/PreloadedRegionTestCase.java | 102 ---
.../gms/fd/GMSHealthMonitorJUnitTest.java | 81 +-
.../internal/cache/AbstractRegionEntryTest.java | 64 +-
.../internal/cache/FixedPRSinglehopDUnitTest.java | 1 -
.../cache/PRCacheListenerInvocationTest.java | 86 ++
...istenerWithInterestPolicyAllInvocationTest.java | 70 ++
.../cache/PartitionedRegionCloseDUnitTest.java | 196 +++++
.../internal/cache/RemoteOperationMessageTest.java | 30 +-
.../ReplicateCacheListenerInvocationTest.java | 327 +++++++
.../cache/ha/HARQueueNewImplDUnitTest.java | 16 +-
.../cache/partitioned/PartitionMessageTest.java | 32 +-
.../BackupInspectorIntegrationTest.java | 2 +-
.../cache/persistence/UnixScriptGeneratorTest.java | 118 +++
.../persistence/WindowsScriptGeneratorTest.java | 120 +++
.../tier/sockets/ClientProxyWithDeltaTest.java | 308 +++++++
.../sockets/ClientWithInterestFailoverTest.java | 280 ++++++
.../DataSerializerPropogationDUnitTest.java | 3 +-
.../RegisterInterestServerMetaDataTest.java | 272 ++++++
.../tier/sockets/ServerConnectionFactoryTest.java | 18 +-
.../cache/tier/sockets/ServerConnectionTest.java | 6 +-
.../versions/RegionVersionVectorJUnitTest.java | 68 +-
.../internal/statistics/LinuxSystemStatsTest.java | 198 +++++
.../internal/cli/GfshParserAutoCompletionTest.java | 18 +-
.../internal/cli/GfshParserParsingTest.java | 10 +-
.../cli/commands/CreateIndexCommandTest.java | 134 +++
.../cli/commands/CreateRegionCommandDUnitTest.java | 334 +++-----
.../cli/commands/CreateRegionCommandTest.java | 16 -
.../commands/DestroyRegionCommandDUnitTest.java | 420 +++------
.../cli/commands/DestroyRegionCommandTest.java | 76 ++
...Test.java => IndexCommandsIntegrationTest.java} | 194 ++---
.../cli/commands/RemoveCommandDUnitTest.java | 5 +-
.../cli/converters/IndexTypeConverterTest.java | 64 ++
.../converters/RegionPathConverterJUnitTest.java | 90 +-
.../cli/domain/IndexDetailsIntegrationTest.java | 12 +-
.../DescribeDiskStoreFunctionJUnitTest.java | 149 ++--
.../cli/functions/ListIndexFunctionJUnitTest.java | 18 +-
.../internal/cli/result/CommandResultTest.java | 8 +-
.../internal/cli/shell/GfshJunitTest.java | 12 +-
.../ImportOldClusterConfigDUnitTest.java | 104 +++
.../configuration/utils/XmlUtilsJUnitTest.java | 306 +++++--
...rictedButMethodsDoNotExistQueriesDUnitTest.java | 24 +-
.../geode/security/query/QuerySecurityBase.java | 3 +
.../QuerySecurityRestrictedQueriesDUnitTest.java | 98 +--
...rityRetrictedButMethodsDoNotExistDUnitTest.java | 127 +++
.../test/dunit/rules/CleanupDUnitVMsRule.java | 8 +
.../test/dunit/rules/LocatorServerStartupRule.java | 6 +
.../apache/geode/test/dunit/rules/MemberVM.java | 4 +
.../geode/test/junit/rules/GfshParserRule.java | 17 +-
.../test/junit/rules/GfshShellConnectionRule.java | 10 +-
.../codeAnalysis/sanctionedDataSerializables.txt | 44 +-
.../geode/codeAnalysis/sanctionedSerializables.txt | 8 +-
.../management/internal/configuration/cluster8.xml | 25 +
.../configuration/domain/CacheElementJUnitTest.xml | 16 +
...LocationMapMapOfStringListOfStringAttribute.xml | 10 -
.../query_select/the_where_clause.html.md.erb | 24 +
.../implementing_authentication.html.md.erb | 7 +-
.../implementing_authorization.html.md.erb | 6 +
geode-docs/reference/statistics_list.html.md.erb | 1 +
.../reference/topics/gfe_cache_xml.html.md.erb | 4 +-
.../gfsh/command-pages/connect.html.md.erb | 15 +-
.../gfsh/command-pages/create.html.md.erb | 2 +-
.../tools_modules/lucene_integration.html.md.erb | 2 +-
.../setting_up_a_multisite_system.html.md.erb | 20 -
.../apache/geode/test/compiler/ClassBuilder.java | 7 -
.../geode/cache/lucene/FlatFormatSerializer.java | 119 +++
.../org/apache/geode/cache/lucene/LuceneIndex.java | 5 +
.../geode/cache/lucene/LuceneIndexFactory.java | 7 +
.../serializer => }/LuceneSerializer.java | 18 +-
.../AbstractPartitionedRepositoryManager.java | 2 +-
.../lucene/internal/IndexRepositoryFactory.java | 4 +-
.../internal/LuceneIndexCreationProfile.java | 41 +-
.../lucene/internal/LuceneIndexFactoryImpl.java | 10 +-
.../internal/LuceneIndexForPartitionedRegion.java | 8 +-
.../cache/lucene/internal/LuceneIndexImpl.java | 17 +-
.../cache/lucene/internal/LuceneIndexStats.java | 11 +
.../cache/lucene/internal/LuceneRawIndex.java | 8 +-
.../lucene/internal/LuceneRegionListener.java | 11 +-
.../cache/lucene/internal/LuceneServiceImpl.java | 24 +-
.../internal/PartitionedRepositoryManager.java | 2 +-
.../lucene/internal/RawIndexRepositoryFactory.java | 4 +-
.../internal/RawLuceneRepositoryManager.java | 2 +-
.../lucene/internal/cli/LuceneCliStrings.java | 16 +-
.../lucene/internal/cli/LuceneIndexCommands.java | 109 +--
.../lucene/internal/cli/LuceneIndexDetails.java | 19 +-
.../cache/lucene/internal/cli/LuceneIndexInfo.java | 10 +-
.../cli/functions/LuceneCreateIndexFunction.java | 17 +
.../cli/functions/LuceneDestroyIndexFunction.java | 7 +-
.../internal/repository/IndexRepositoryImpl.java | 57 +-
.../serializer/HeterogeneousLuceneSerializer.java | 47 +-
.../repository/serializer/PdxLuceneSerializer.java | 17 +-
.../repository/serializer/PrimitiveSerializer.java | 9 +-
.../serializer/ReflectionLuceneSerializer.java | 9 +-
.../lucene/internal/xml/LuceneIndexCreation.java | 14 +-
.../internal/xml/LuceneIndexXmlGenerator.java | 20 +-
.../lucene/internal/xml/LuceneXmlConstants.java | 3 +-
.../cache/lucene/internal/xml/LuceneXmlParser.java | 41 +-
.../geode.apache.org/schema/lucene/lucene-1.0.xsd | 8 +
.../geode/cache/lucene/DummyLuceneSerializer.java | 16 +-
.../lucene/FlatFormatSerializerJUnitTest.java | 90 ++
.../cache/lucene/LuceneIndexCreationDUnitTest.java | 46 +
.../LuceneIndexMaintenanceIntegrationTest.java | 102 +++
.../NestedObjectSeralizerIntegrationTest.java | 314 +++++++
.../LuceneIndexCreationProfileJUnitTest.java | 59 +-
.../internal/LuceneIndexFactoryImplJUnitTest.java | 40 +-
.../LuceneIndexForPartitionedRegionTest.java | 44 +-
.../LuceneIndexRecoveryHAIntegrationTest.java | 4 +-
.../lucene/internal/LuceneIndexStatsJUnitTest.java | 14 +
.../internal/LuceneRegionListenerJUnitTest.java | 67 ++
.../internal/LuceneServiceImplJUnitTest.java | 18 +-
.../PartitionedRepositoryManagerJUnitTest.java | 4 +-
.../RawLuceneRepositoryManagerJUnitTest.java | 2 +-
.../internal/ValidateCommandParametersTest.java | 40 +-
.../internal/cli/LuceneIndexCommandsDUnitTest.java | 217 +++--
.../internal/cli/LuceneIndexCommandsJUnitTest.java | 38 +-
.../LuceneCreateIndexFunctionJUnitTest.java | 29 +-
.../LuceneDestroyIndexFunctionJUnitTest.java | 33 +-
.../LuceneClusterConfigurationDUnitTest.java | 86 +-
.../distributed/DistributedScoringJUnitTest.java | 7 +-
.../repository/IndexRepositoryImplJUnitTest.java | 51 +-
.../IndexRepositoryImplPerformanceTest.java | 6 +-
.../HeterogeneousLuceneSerializerJUnitTest.java | 35 +-
.../serializer/PdxFieldMapperJUnitTest.java | 54 +-
.../serializer/ReflectionFieldMapperJUnitTest.java | 21 +-
.../serializer/SerializerTestHelper.java} | 25 +-
...uceneIndexXmlGeneratorIntegrationJUnitTest.java | 78 +-
.../xml/LuceneIndexXmlGeneratorJUnitTest.java | 82 +-
.../LuceneIndexXmlParserIntegrationJUnitTest.java | 59 ++
.../apache/geode/cache/lucene/test/Customer.java} | 27 +-
.../cache/lucene/test/IndexRepositorySpy.java | 2 +-
.../test/LuceneDeclarable2TestSerializer.java} | 22 +-
.../cache/lucene/test/LuceneTestSerializer.java | 66 ++
.../cache/lucene/test/LuceneTestUtilities.java | 2 +
.../org/apache/geode/cache/lucene/test/Page.java} | 34 +-
.../apache/geode/cache/lucene/test/Person.java} | 28 +-
...ionJUnitTest.parseIndexWithSerializer.cache.xml | 37 +
...exWithSerializerAndDeclarableProperty.cache.xml | 45 +
...eIndexWithSerializerAndStringProperty.cache.xml | 40 +
.../tier/sockets/ClientProtocolMessageHandler.java | 4 -
.../tier/sockets/MessageExecutionContext.java | 17 +-
.../internal/protocol/ProtobufCachePipeline.java | 66 ++
.../internal/protocol/ProtobufLocatorPipeline.java | 55 ++
.../internal/protocol/ProtobufProtocolService.java | 63 ++
.../protobuf/ProtobufSimpleAuthenticator.java | 4 +-
.../protobuf/ProtobufSimpleAuthorizer.java | 2 +-
.../protocol/protobuf/ProtobufStreamProcessor.java | 20 +-
.../protobuf/statistics}/NoOpStatistics.java | 24 +-
.../statistics/ProtobufClientStatistics.java | 14 +-
.../protobuf/utilities/ProtobufUtilities.java | 35 +-
geode-protobuf/src/main/proto/clientProtocol.proto | 15 +-
...cache.tier.sockets.ClientProtocolMessageHandler | 1 -
...ternal.cache.tier.sockets.ClientProtocolService | 1 +
...e.geode.security.internal.server.Authenticator} | 0
.../GenericProtocolServerConnectionTest.java | 39 +-
.../geode/internal/protocol/MessageUtil.java | 20 +-
.../protocol/ProtobufProtocolServiceJUnitTest.java | 38 +-
.../acceptance/CacheConnectionJUnitTest.java | 37 +-
.../CacheConnectionTimeoutJUnitTest.java | 15 +-
.../acceptance/CacheMaxConnectionJUnitTest.java | 12 +-
.../acceptance/CacheOperationsJUnitTest.java | 59 +-
.../acceptance/LocatorConnectionDUnitTest.java | 108 +--
.../protobuf/ProtobufStreamProcessorTest.java | 2 +-
.../GetAllRequestOperationHandlerJUnitTest.java | 2 +-
...tAvailableServersOperationHandlerJUnitTest.java | 11 +-
...egionNamesRequestOperationHandlerJUnitTest.java | 2 +-
.../GetRegionRequestOperationHandlerJUnitTest.java | 2 +-
.../GetRequestOperationHandlerJUnitTest.java | 2 +-
.../PutAllRequestOperationHandlerJUnitTest.java | 2 +-
.../PutRequestOperationHandlerJUnitTest.java | 2 +-
.../RemoveRequestOperationHandlerJUnitTest.java | 2 +-
.../internal/cache/UpdateVersionDUnitTest.java | 940 ++++++++++-----------
.../cli/commands/IndexCommandOverHttpTest.java | 12 +-
gradle.properties | 2 +-
gradle/dependency-versions.properties | 2 +-
gradle/rat.gradle | 1 -
292 files changed, 8119 insertions(+), 4005 deletions(-)
diff --cc geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java
index c329a5c,70e7e0b..df9dca0
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java
@@@ -45,14 -45,13 +46,17 @@@ public class LuceneRegionListener imple
private final String[] fields;
+ private LuceneSerializer serializer;
+
private LuceneIndexImpl luceneIndex;
+ private AtomicBoolean beforeCreateInvoked = new AtomicBoolean();
+
+ private AtomicBoolean afterCreateInvoked = new AtomicBoolean();
+
public LuceneRegionListener(LuceneServiceImpl service, InternalCache cache, String indexName,
- String regionPath, String[] fields, Analyzer analyzer, Map<String, Analyzer> fieldAnalyzers) {
+ String regionPath, String[] fields, Analyzer analyzer, Map<String, Analyzer> fieldAnalyzers,
+ LuceneSerializer serializer) {
this.service = service;
this.cache = cache;
this.indexName = indexName;
diff --cc geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
index 4427930,afd8c96..948ba14
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
@@@ -14,8 -14,8 +14,9 @@@
*/
package org.apache.geode.cache.lucene;
+ import org.apache.geode.cache.lucene.internal.repository.serializer.HeterogeneousLuceneSerializer;
import org.apache.geode.cache.lucene.test.LuceneTestUtilities;
+import org.apache.geode.internal.i18n.LocalizedStrings;
import org.apache.geode.test.dunit.SerializableRunnableIF;
import org.apache.geode.test.junit.categories.DistributedTest;
import org.apache.geode.util.test.TestUtil;
@@@ -325,33 -325,28 +326,54 @@@ public class LuceneIndexCreationDUnitTe
dataStore2.invoke(() -> initDataStore(createIndex2, regionType));
}
- @Test
+ @Parameters("PARTITION")
+ public void verifyDifferentSerializerShouldFail(RegionTestableType regionType) {
+ SerializableRunnableIF createIndex1 = getIndexWithDefaultSerializer();
+ dataStore1.invoke(() -> initDataStore(createIndex1, regionType));
+
+ SerializableRunnableIF createIndex2 = getIndexWithDummySerializer();
+ dataStore2.invoke(() -> initDataStore(createIndex2, regionType,
+ CANNOT_CREATE_LUCENE_INDEX_DIFFERENT_SERIALIZER));
+ }
+
+ @Test
+ @Parameters("PARTITION")
+ public void verifyDifferentSerializerShouldFail2(RegionTestableType regionType) {
+ SerializableRunnableIF createIndex1 = getHeterogeneousLuceneSerializerCreationProfile();
+ dataStore1.invoke(() -> initDataStore(createIndex1, regionType));
+
+ SerializableRunnableIF createIndex2 = getIndexWithDummySerializer();
+ dataStore2.invoke(() -> initDataStore(createIndex2, regionType,
+ CANNOT_CREATE_LUCENE_INDEX_DIFFERENT_SERIALIZER));
+ }
+
+ @Test
+ public void verifyAsyncEventQueueIsCleanedUpIfRegionCreationFails() {
+ SerializableRunnableIF createIndex = get2FieldsIndexes();
+
+ // Create a Cache in dataStore1 with a PR defining 10 buckets
+ dataStore1.invoke(() -> initDataStore(createIndex, RegionTestableType.PARTITION));
+
+ // Attempt to create a Cache in dataStore2 with a PR defining 20 buckets. This will fail.
+ String exceptionMessage =
+ LocalizedStrings.PartitionedRegion_THE_TOTAL_NUMBER_OF_BUCKETS_FOUND_IN_PARTITIONATTRIBUTES_0_IS_INCOMPATIBLE_WITH_THE_TOTAL_NUMBER_OF_BUCKETS_USED_BY_OTHER_DISTRIBUTED_MEMBERS_SET_THE_NUMBER_OF_BUCKETS_TO_1
+ .toLocalizedString(new Object[] {NUM_BUCKETS * 2, NUM_BUCKETS});
+ dataStore2.invoke(() -> initDataStore(createIndex,
+ RegionTestableType.PARTITION_WITH_DOUBLE_BUCKETS, exceptionMessage));
+
+ // Verify dataStore1 has two AsyncEventQueues
+ dataStore1.invoke(() -> verifyAsyncEventQueues(2));
+
+ // Verify dataStore2 has no AsyncEventQueues
+ dataStore2.invoke(() -> verifyAsyncEventQueues(0));
+
+ // Create a Cache in dataStore2 with a PR defining 10 buckets. This will succeed.
+ dataStore2.invoke(() -> initDataStore(RegionTestableType.PARTITION));
+
+ // Verify dataStore2 has two AsyncEventQueues
+ dataStore2.invoke(() -> verifyAsyncEventQueues(2));
+ }
+
protected String getXmlFileForTest(String testName) {
return TestUtil.getResourcePath(getClass(),
getClassSimpleName() + "." + testName + ".cache.xml");
@@@ -491,11 -486,27 +513,35 @@@
};
}
+ protected SerializableRunnableIF getIndexWithDummySerializer() {
+ return () -> {
+ LuceneService luceneService = LuceneServiceProvider.get(getCache());
+ luceneService.createIndexFactory().setFields(new String[] {"field1", "field2"})
+ .setLuceneSerializer(new DummyLuceneSerializer()).create(INDEX_NAME, REGION_NAME);
+ };
+ }
+
+ protected SerializableRunnableIF getIndexWithDefaultSerializer() {
+ return () -> {
+ LuceneService luceneService = LuceneServiceProvider.get(getCache());
+ luceneService.createIndexFactory().setFields(new String[] {"field1", "field2"})
+ .create(INDEX_NAME, REGION_NAME);
+ };
+ }
+
+ protected SerializableRunnableIF getHeterogeneousLuceneSerializerCreationProfile() {
+ return () -> {
+ LuceneService luceneService = LuceneServiceProvider.get(getCache());
+ luceneService.createIndexFactory().setFields(new String[] {"field1", "field2"})
+ .setLuceneSerializer(new HeterogeneousLuceneSerializer()).create(INDEX_NAME, REGION_NAME);
+ };
+ }
++
+ protected void initDataStore(RegionTestableType regionTestType) throws Exception {
+ regionTestType.createDataStore(getCache(), REGION_NAME);
+ }
+
+ protected void verifyAsyncEventQueues(final int expectedSize) {
+ assertEquals(expectedSize, getCache().getAsyncEventQueues(false).size());
+ }
}
--
To stop receiving notification emails like this one, please contact
"commits@geode.apache.org" <co...@geode.apache.org>.