use of org.infinispan.configuration.cache.ClusteringConfigurationBuilder in project wildfly by wildfly.
the class InfinispanClientMappingsRegistryProvider method accept.
@Override
public void accept(ConfigurationBuilder builder) {
ClusteringConfigurationBuilder clustering = builder.clustering();
CacheMode mode = clustering.cacheMode();
clustering.cacheMode(mode.needsStateTransfer() ? CacheMode.REPL_SYNC : CacheMode.LOCAL);
clustering.l1().disable();
// Workaround for ISPN-8722
AttributeSet attributes = ConfigurationBuilderAttributesAccessor.INSTANCE.apply(clustering);
attributes.attribute(ClusteringConfiguration.BIAS_ACQUISITION).reset();
attributes.attribute(ClusteringConfiguration.BIAS_LIFESPAN).reset();
attributes.attribute(ClusteringConfiguration.INVALIDATION_BATCH_SIZE).reset();
// Ensure we use the default data container
builder.addModule(DataContainerConfigurationBuilder.class).evictable(null);
// Disable expiration
builder.expiration().lifespan(-1).maxIdle(-1);
// Disable eviction
builder.memory().storage(StorageType.HEAP).maxCount(-1).whenFull(EvictionStrategy.NONE);
builder.persistence().clearStores();
StateTransferConfigurationBuilder stateTransfer = clustering.stateTransfer().fetchInMemoryState(mode.needsStateTransfer());
attributes = ConfigurationBuilderAttributesAccessor.INSTANCE.apply(stateTransfer);
attributes.attribute(StateTransferConfiguration.AWAIT_INITIAL_TRANSFER).reset();
attributes.attribute(StateTransferConfiguration.TIMEOUT).reset();
}
Aggregations