# Custom Hazelcast Config.
hazelcast:
+ cluster-name: ${CPS_NCMP_CACHES_CLUSTER_NAME:"cps-and-ncmp-common-cache-cluster"}
mode:
kubernetes:
enabled: ${HAZELCAST_MODE_KUBERNETES_ENABLED:false}
*/
@Bean
public BlockingQueue<DataNode> moduleSyncWorkQueue() {
- return createHazelcastInstance("moduleSyncWorkQueue", commonQueueConfig,
- "synchronization-caches")
- .getQueue("moduleSyncWorkQueue");
+ return createHazelcastInstance("moduleSyncWorkQueue", commonQueueConfig).getQueue("moduleSyncWorkQueue");
}
/**
*/
@Bean
public IMap<String, Object> moduleSyncStartedOnCmHandles() {
- return createHazelcastInstance("moduleSyncStartedOnCmHandles", moduleSyncStartedConfig,
- "synchronization-caches")
- .getMap("moduleSyncStartedOnCmHandles");
+ return createHazelcastInstance("moduleSyncStartedOnCmHandles", moduleSyncStartedConfig).getMap(
+ "moduleSyncStartedOnCmHandles");
}
/**
*/
@Bean
public IMap<String, Boolean> dataSyncSemaphores() {
- return createHazelcastInstance("dataSyncSemaphores", dataSyncSemaphoresConfig,
- "synchronization-caches")
- .getMap("dataSyncSemaphores");
+ return createHazelcastInstance("dataSyncSemaphores", dataSyncSemaphoresConfig).getMap("dataSyncSemaphores");
}
}
@Bean
public IMap<String, Set<String>> forwardedSubscriptionEventCache() {
return createHazelcastInstance("hazelCastInstanceSubscriptionEvents",
- forwardedSubscriptionEventCacheMapConfig, "cps-ncmp-service-caches")
- .getMap("forwardedSubscriptionEventCache");
+ forwardedSubscriptionEventCacheMapConfig).getMap("forwardedSubscriptionEventCache");
}
}
def 'Verify configs for Distributed objects'(){
given: 'the Module Sync Work Queue config'
- def queueConfig = Hazelcast.getHazelcastInstanceByName('moduleSyncWorkQueue').config.queueConfigs.get('defaultQueueConfig')
+ def moduleSyncWorkQueueConfig = Hazelcast.getHazelcastInstanceByName('moduleSyncWorkQueue').config
+ def moduleSyncDefaultWorkQueueConfig = moduleSyncWorkQueueConfig.queueConfigs.get('defaultQueueConfig')
and: 'the Module Sync Started Cm Handle Map config'
- def moduleSyncStartedOnCmHandlesConfig = Hazelcast.getHazelcastInstanceByName('moduleSyncStartedOnCmHandles').config.mapConfigs.get('moduleSyncStartedConfig')
+ def moduleSyncStartedOnCmHandlesConfig = Hazelcast.getHazelcastInstanceByName('moduleSyncStartedOnCmHandles').config
+ def moduleSyncStartedOnCmHandlesMapConfig = moduleSyncStartedOnCmHandlesConfig.mapConfigs.get('moduleSyncStartedConfig')
and: 'the Data Sync Semaphores Map config'
- def dataSyncSemaphoresConfig = Hazelcast.getHazelcastInstanceByName('dataSyncSemaphores').config.mapConfigs.get('dataSyncSemaphoresConfig')
+ def dataSyncSemaphoresConfig = Hazelcast.getHazelcastInstanceByName('dataSyncSemaphores').config
+ def dataSyncSemaphoresMapConfig = dataSyncSemaphoresConfig.mapConfigs.get('dataSyncSemaphoresConfig')
expect: 'system created instance with correct config of Module Sync Work Queue'
- assert queueConfig.backupCount == 3
- assert queueConfig.asyncBackupCount == 3
+ assert moduleSyncDefaultWorkQueueConfig.backupCount == 3
+ assert moduleSyncDefaultWorkQueueConfig.asyncBackupCount == 3
and: 'Module Sync Started Cm Handle Map has the correct settings'
- assert moduleSyncStartedOnCmHandlesConfig.backupCount == 3
- assert moduleSyncStartedOnCmHandlesConfig.asyncBackupCount == 3
+ assert moduleSyncStartedOnCmHandlesMapConfig.backupCount == 3
+ assert moduleSyncStartedOnCmHandlesMapConfig.asyncBackupCount == 3
and: 'Data Sync Semaphore Map has the correct settings'
- assert dataSyncSemaphoresConfig.backupCount == 3
- assert dataSyncSemaphoresConfig.asyncBackupCount == 3
+ assert dataSyncSemaphoresMapConfig.backupCount == 3
+ assert dataSyncSemaphoresMapConfig.asyncBackupCount == 3
+ and: 'all instances are part of same cluster'
+ def testClusterName = 'cps-and-ncmp-test-caches'
+ assert moduleSyncWorkQueueConfig.clusterName == testClusterName
+ assert moduleSyncStartedOnCmHandlesConfig.clusterName == testClusterName
+ assert dataSyncSemaphoresConfig.clusterName == testClusterName
}
def 'Verify deployment network configs for Distributed objects'() {
def 'Verify configs for Distributed Caches'(){
given: 'the Forwarded Subscription Event Cache config'
- def forwardedSubscriptionEventCacheConfig = Hazelcast.getHazelcastInstanceByName('hazelCastInstanceSubscriptionEvents').config.mapConfigs.get('forwardedSubscriptionEventCacheMapConfig')
+ def forwardedSubscriptionEventCacheConfig = Hazelcast.getHazelcastInstanceByName('hazelCastInstanceSubscriptionEvents').config
+ def forwardedSubscriptionEventCacheMapConfig = forwardedSubscriptionEventCacheConfig.mapConfigs.get('forwardedSubscriptionEventCacheMapConfig')
expect: 'system created instance with correct config'
- assert forwardedSubscriptionEventCacheConfig.backupCount == 3
- assert forwardedSubscriptionEventCacheConfig.asyncBackupCount == 3
+ assert forwardedSubscriptionEventCacheConfig.clusterName == 'cps-and-ncmp-test-caches'
+ assert forwardedSubscriptionEventCacheMapConfig.backupCount == 3
+ assert forwardedSubscriptionEventCacheMapConfig.asyncBackupCount == 3
}
def 'Verify deployment network configs for Distributed Caches'() {
# Custom Hazelcast Config.
hazelcast:
+ cluster-name: "cps-and-ncmp-test-caches"
mode:
kubernetes:
enabled: false
*/
@Bean
public IMap<String, AnchorDataCacheEntry> anchorDataCache() {
- return createHazelcastInstance("hazelCastInstanceCpsCore", anchorDataCacheMapConfig, "cps-service-caches")
- .getMap("anchorDataCache");
+ return createHazelcastInstance("hazelCastInstanceCpsCore", anchorDataCacheMapConfig).getMap("anchorDataCache");
}
}
@Slf4j
public class HazelcastCacheConfig {
+ @Value("${hazelcast.cluster-name}")
+ protected String clusterName;
+
@Value("${hazelcast.mode.kubernetes.enabled}")
protected boolean cacheKubernetesEnabled;
protected String cacheKubernetesServiceName;
protected HazelcastInstance createHazelcastInstance(final String hazelcastInstanceName,
- final NamedConfig namedConfig, final String clusterName) {
- return Hazelcast.newHazelcastInstance(initializeConfig(hazelcastInstanceName, namedConfig, clusterName));
+ final NamedConfig namedConfig) {
+ return Hazelcast.newHazelcastInstance(initializeConfig(hazelcastInstanceName, namedConfig));
}
- private Config initializeConfig(final String instanceName, final NamedConfig namedConfig,
- final String clusterName) {
+ private Config initializeConfig(final String instanceName, final NamedConfig namedConfig) {
final Config config = new Config(instanceName);
if (namedConfig instanceof MapConfig) {
config.addMapConfig((MapConfig) namedConfig);
def 'Verify configs for Distributed Caches'(){
given: 'the Anchor Data Cache config'
- def anchorDataCacheConfig = Hazelcast.getHazelcastInstanceByName('hazelCastInstanceCpsCore').config.mapConfigs.get('anchorDataCacheMapConfig')
+ def anchorDataCacheConfig = Hazelcast.getHazelcastInstanceByName('hazelCastInstanceCpsCore').config
+ def anchorDataCacheMapConfig = anchorDataCacheConfig.mapConfigs.get('anchorDataCacheMapConfig')
expect: 'system created instance with correct config'
- assert anchorDataCacheConfig.backupCount == 3
- assert anchorDataCacheConfig.asyncBackupCount == 3
+ assert anchorDataCacheConfig.clusterName == 'cps-and-ncmp-test-caches'
+ assert anchorDataCacheMapConfig.backupCount == 3
+ assert anchorDataCacheMapConfig.asyncBackupCount == 3
}
def 'Verify deployment network configs for Distributed Caches'() {
# Custom Hazelcast Config.
hazelcast:
+ cluster-name: "cps-and-ncmp-test-caches"
mode:
kubernetes:
enabled: false