org.apache.ignite.configuration

## Class IgniteConfiguration

- java.lang.Object
- - org.apache.ignite.configuration.IgniteConfiguration

    public class IgniteConfiguration
    extends Object

This class defines grid runtime configuration. This configuration is passed to `Ignition.start(IgniteConfiguration)` method. It defines all configuration parameters required to start a grid instance. Usually, a special class called "loader" will create an instance of this interface and apply `Ignition.start(IgniteConfiguration)` method to initialize Ignite instance.

Note that you should only set values that differ from defaults, as grid will automatically pick default values for all values that are not set.

For more information about grid configuration and startup refer to `Ignition` documentation.

### Field Summary

Fields
`static int` `AVAILABLE_PROC_CNT` Default core size of public thread pool.
`static String` `COURTESY_LOGGER_NAME` Courtesy notice log category.
`static boolean` `DFLT_ACTIVE_ON_START` Deprecated.
`static boolean` `DFLT_ALL_SEG_RESOLVERS_PASS_REQ` Default value for all segmentation resolvers pass required.
`static boolean` `DFLT_AUTO_ACTIVATION` Deprecated.
`static int` `DFLT_BUILD_IDX_THREAD_POOL_SIZE` Default size of index create/rebuild thread pool.
`static boolean` `DFLT_CACHE_SANITY_CHECK_ENABLED` Default value for cache sanity check enabled flag.
`static Long` `DFLT_CLIENT_FAILURE_DETECTION_TIMEOUT` Default failure detection timeout for client nodes in millis.
`static int` `DFLT_DATA_STREAMER_POOL_SIZE` Default size of data streamer thread pool.
`static DeploymentMode` `DFLT_DEPLOYMENT_MODE` Default deployment mode (value is `DeploymentMode.SHARED`).
`static long` `DFLT_DISCOVERY_STARTUP_DELAY` Default discovery startup delay in milliseconds (value is `60,000ms`).
`static Long` `DFLT_FAILURE_DETECTION_TIMEOUT` Default failure detection timeout in millis.
`static boolean` `DFLT_LATE_AFF_ASSIGNMENT` Deprecated.
`static long` `DFLT_LONG_QRY_WARN_TIMEOUT` Deprecated. Please use `SqlConfiguration.DFLT_LONG_QRY_WARN_TIMEOUT`.
`static boolean` `DFLT_MARSHAL_LOCAL_JOBS` Default marshal local jobs flag.
`static long` `DFLT_METRICS_EXPIRE_TIME` Default metrics expire time.
`static int` `DFLT_METRICS_HISTORY_SIZE` Default metrics history size (value is `10000`).
`static long` `DFLT_METRICS_LOG_FREQ` Default frequency of metrics log print out.
`static long` `DFLT_METRICS_UPDATE_FREQ` Default metrics update frequency.
`static int` `DFLT_MGMT_THREAD_CNT` Default size of management thread pool.
`static long` `DFLT_MVCC_VACUUM_FREQUENCY` Default time interval between MVCC vacuum runs in milliseconds.
`static int` `DFLT_MVCC_VACUUM_THREAD_CNT` Default number of MVCC vacuum threads..
`static int` `DFLT_NETWORK_COMPRESSION` Default compression level for network messages (value is Deflater.BEST_SPEED.
`static long` `DFLT_NETWORK_TIMEOUT` Default maximum timeout to wait for network responses in milliseconds (value is `5,000ms`).
`static boolean` `DFLT_P2P_ENABLED` Default flag for peer class loading.
`static int` `DFLT_P2P_MISSED_RESOURCES_CACHE_SIZE` Default cache size for missed resources.
`static int` `DFLT_P2P_THREAD_CNT` Default size of peer class loading thread pool.
`static int` `DFLT_PUBLIC_THREAD_CNT` Default core size of public thread pool.
`static int` `DFLT_QUERY_THREAD_POOL_SIZE` Default size of query thread pool.
`static int` `DFLT_REBALANCE_BATCH_SIZE` Default rebalance batch size in bytes (value is `512Kb`).
`static long` `DFLT_REBALANCE_BATCHES_PREFETCH_COUNT` Default rebalance batches prefetch count (value is `3`).
`static int` `DFLT_REBALANCE_THREAD_POOL_SIZE` Default limit of threads used for rebalance.
`static long` `DFLT_REBALANCE_THROTTLE` Time to wait between rebalance messages in milliseconds to avoid overloading CPU (value is `0`).
`static long` `DFLT_REBALANCE_TIMEOUT` Default rebalance message timeout in milliseconds (value is `10000`).
`static long` `DFLT_SEG_CHK_FREQ` Default segment check frequency in discovery manager.
`static SegmentationPolicy` `DFLT_SEG_PLC` Default segmentation policy.
`static int` `DFLT_SEG_RESOLVE_ATTEMPTS` Default value segmentation resolve attempts count.
`static int` `DFLT_SEND_RETRY_CNT` Default message send retries count.
`static long` `DFLT_SEND_RETRY_DELAY` Default interval between message send retries.
`static ShutdownPolicy` `DFLT_SHUTDOWN_POLICY` Default policy for node shutdown.
`static String` `DFLT_SNAPSHOT_DIRECTORY` Default relative working directory path for snapshot operation result.
`static int` `DFLT_SNAPSHOT_THREAD_POOL_SIZE` Default number of threads to perform snapshot operations.
`static int` `DFLT_SQL_QUERY_HISTORY_SIZE` Deprecated. Please use `SqlConfiguration.DFLT_SQL_QUERY_HISTORY_SIZE`.
`static ClusterState` `DFLT_STATE_ON_START` Default value for cluster state on start.
`static int` `DFLT_SYSTEM_CORE_THREAD_CNT` Default size of system thread pool.
`static int` `DFLT_TCP_PORT` Default TCP server port.
`static long` `DFLT_THREAD_KEEP_ALIVE_TIME` Default Ignite thread keep alive time.
`static int` `DFLT_TIME_SERVER_PORT_BASE` Default time server port base.
`static int` `DFLT_TIME_SERVER_PORT_RANGE` Default time server port range.
`static boolean` `DFLT_WAIT_FOR_SEG_ON_START` Default value for wait for segment on startup flag.
`ShutdownPolicy` `shutdown` Shutdown policy for cluster.

### Constructor Summary

Constructors
Constructor and Description
`IgniteConfiguration()` Creates valid grid configuration with all default values.
`IgniteConfiguration(IgniteConfiguration cfg)` Creates grid configuration by coping all configuration properties from given configuration.

### Method Summary

All Methods Instance Methods Concrete Methods Deprecated Methods
`AddressResolver` `getAddressResolver()` Gets address resolver for addresses mapping determination.
`int` `getAsyncCallbackPoolSize()` Size of thread pool that is in charge of processing asynchronous callbacks.
`Executor` `getAsyncContinuationExecutor()` Gets the continuation executor for cache async APIs.
`AtomicConfiguration` `getAtomicConfiguration()`
`BinaryConfiguration` `getBinaryConfiguration()` Gets configuration for Ignite Binary objects.
`int` `getBuildIndexThreadPoolSize()` Size of thread pool for create/rebuild index.
`CacheConfiguration[]` `getCacheConfiguration()` Gets configuration (descriptors) for all caches.
`CacheKeyConfiguration[]` `getCacheKeyConfiguration()` Gets cache key configuration.
`javax.cache.configuration.Factory<CacheStoreSessionListener>[]` `getCacheStoreSessionListenerFactories()` Gets cache store session listener factories.
`CheckpointSpi[]` `getCheckpointSpi()` Should return fully configured checkpoint SPI implementation.
`ClassLoader` `getClassLoader()`
`@Nullable ClientConnectorConfiguration` `getClientConnectorConfiguration()` Gets client connector configuration.
`Long` `getClientFailureDetectionTimeout()` Returns failure detection timeout for client nodes used by `TcpDiscoverySpi` and `TcpCommunicationSpi`.
`@Nullable ClusterState` `getClusterStateOnStart()` Gets state of cluster on start.
`CollisionSpi` `getCollisionSpi()` Should return fully configured collision SPI implementation.
`CommunicationFailureResolver` `getCommunicationFailureResolver()`
`CommunicationSpi` `getCommunicationSpi()` Should return fully configured SPI communication implementation.
`ConnectorConfiguration` `getConnectorConfiguration()`
`Serializable` `getConsistentId()` Gets consistent globally unique node ID which survives node restarts.
`DataStorageConfiguration` `getDataStorageConfiguration()` Gets page memory configuration.
`int` `getDataStreamerThreadPoolSize()` Size of thread pool that is in charge of processing data stream messages.
`long` `getDefaultQueryTimeout()` Deprecated. Use `SqlConfiguration.getDefaultQueryTimeout()` instead.
`DeploymentMode` `getDeploymentMode()` Gets deployment mode for deploying tasks and other classes on this node.
`DeploymentSpi` `getDeploymentSpi()` Should return fully configured deployment SPI implementation.
`DiscoverySpi` `getDiscoverySpi()` Should return fully configured discovery SPI implementation.
`long` `getDiscoveryStartupDelay()` Deprecated. Not used any more.
`EncryptionSpi` `getEncryptionSpi()` Gets fully configured encryption SPI implementations.
`EventStorageSpi` `getEventStorageSpi()` Should return fully configured event SPI implementation.
`ExecutorConfiguration[]` `getExecutorConfiguration()` Gets custom executors for user compute tasks.
`FailoverSpi[]` `getFailoverSpi()` Should return fully configured failover SPI implementation.
`Long` `getFailureDetectionTimeout()` Returns failure detection timeout used by `TcpDiscoverySpi` and `TcpCommunicationSpi`.
`FailureHandler` `getFailureHandler()` Gets failure handler.
`IgniteLogger` `getGridLogger()` Should return an instance of logger to use in grid.
`String` `getGridName()` Deprecated. Use `getIgniteInstanceName()` instead.
`String` `getIgniteHome()` Should return Ignite installation home folder.
`String` `getIgniteInstanceName()` Gets optional local instance name.
`int[]` `getIncludeEventTypes()` Gets array of event types, which will be recorded.
`String[]` `getIncludeProperties()` Gets array of system or environment properties to include into node attributes.
`IndexingSpi` `getIndexingSpi()` Should return fully configured indexing SPI implementations.
`LifecycleBean[]` `getLifecycleBeans()` Returns a collection of life-cycle beans.
`LoadBalancingSpi[]` `getLoadBalancingSpi()` Should return fully configured load balancing SPI implementation.
`Map<IgnitePredicate<? extends Event>,int[]>` `getLocalEventListeners()` Gets map of pre-configured local event listeners.
`String` `getLocalHost()` Gets system-wide local address or host for all Ignite components to bind to.
`long` `getLongQueryWarningTimeout()` Deprecated. Use `SqlConfiguration.getLongQueryWarningTimeout()` instead.
`int` `getManagementThreadPoolSize()` Size of thread pool that is in charge of processing internal and Visor `GridJobs`.
`Marshaller` `getMarshaller()` Deprecated. Since 2.1. Some Ignite features will not work if non-null marshaller is set (IgniteCache.withKeepBinary(), .NET, CPP, ODBC)
`MBeanServer` `getMBeanServer()` Should return MBean server instance.
`MemoryConfiguration` `getMemoryConfiguration()` Deprecated. Use `DataStorageConfiguration` instead.
`MetricExporterSpi[]` `getMetricExporterSpi()` Gets fully configured metric SPI implementations.
`long` `getMetricsExpireTime()` Elapsed time in milliseconds after which node metrics are considered expired.
`int` `getMetricsHistorySize()` Number of node metrics to keep in memory to calculate totals and averages.
`long` `getMetricsLogFrequency()` Gets frequency of metrics log print out.
`long` `getMetricsUpdateFrequency()` Gets Ignite metrics update frequency in milliseconds.
`long` `getMvccVacuumFrequency()` This is an experimental feature.
`int` `getMvccVacuumThreadCount()` This is an experimental feature.
`int` `getNetworkCompressionLevel()` Compression level of internal network messages.
`int` `getNetworkSendRetryCount()` Message send retries count.
`long` `getNetworkSendRetryDelay()` Interval in milliseconds between message send retries.
`long` `getNetworkTimeout()` Maximum timeout in milliseconds for network requests.
`UUID` `getNodeId()` Deprecated.
`OdbcConfiguration` `getOdbcConfiguration()` Deprecated. Use `getClientConnectorConfiguration()` ()} instead.
`String[]` `getPeerClassLoadingLocalClassPathExclude()` Should return list of packages from the system classpath that need to be peer-to-peer loaded from task originating node. '*' is supported at the end of the package name which means that all sub-packages and their classes are included like in Java package import clause.
`int` `getPeerClassLoadingMissedResourcesCacheSize()` Returns missed resources cache size.
`int` `getPeerClassLoadingThreadPoolSize()` Size of thread pool which is in charge of peer class loading requests/responses.
`PersistentStoreConfiguration` `getPersistentStoreConfiguration()` Deprecated. Part of old API. Use `DataStorageConfiguration` for configuring persistence instead.
`PlatformConfiguration` `getPlatformConfiguration()` Gets platform configuration.
`PluginConfiguration[]` `getPluginConfigurations()` Deprecated.
`PluginProvider[]` `getPluginProviders()` Gets plugin providers.
`int` `getPublicThreadPoolSize()` Should return a thread pool size to be used in grid.
`int` `getQueryThreadPoolSize()` Size of thread pool that is in charge of processing query messages.
`long` `getRebalanceBatchesPrefetchCount()` The number of batches generated by supply node at rebalancing procedure start.
`int` `getRebalanceBatchSize()` The supply message size in bytes to be loaded within a single rebalance batch.
`int` `getRebalanceThreadPoolSize()` Gets Max count of threads can be used at rebalancing.
`long` `getRebalanceThrottle()` Time in milliseconds to wait between rebalance messages to avoid overloading of CPU or network.
`long` `getRebalanceTimeout()` Rebalance timeout for supply and demand messages in milliseconds.
`SegmentationPolicy` `getSegmentationPolicy()` Returns segmentation policy.
`int` `getSegmentationResolveAttempts()` Gets segmentation resolve attempts.
`SegmentationResolver[]` `getSegmentationResolvers()` Returns a collection of segmentation resolvers.
`long` `getSegmentCheckFrequency()` Returns frequency of network segment check by discovery manager.
`ServiceConfiguration[]` `getServiceConfiguration()` Gets configurations for services to be deployed on the grid.
`int` `getServiceThreadPoolSize()` Should return a thread pool size to be used in grid.
`ShutdownPolicy` `getShutdownPolicy()` Gets shutdown policy.
`String` `getSnapshotPath()`
`int` `getSnapshotThreadPoolSize()`
`SqlConfiguration` `getSqlConfiguration()` Gets Configuration of the SQL subsystem.
`SqlConnectorConfiguration` `getSqlConnectorConfiguration()` Deprecated. Use `getClientConnectorConfiguration()` instead.
`int` `getSqlQueryHistorySize()` Deprecated. Use `SqlConfiguration.setSqlQueryHistorySize(int)` instead.
`String[]` `getSqlSchemas()` Deprecated. Use `SqlConfiguration.getSqlSchemas()` instead.
`javax.cache.configuration.Factory<SSLContext>` `getSslContextFactory()` Returns SSL context factory that will be used for creating a secure socket layer.
`int` `getStripedPoolSize()` Returns striped pool size that should be used for cache requests processing.
`int` `getSystemThreadPoolSize()` Size of thread pool that is in charge of processing internal system messages.
`SystemViewExporterSpi[]` `getSystemViewExporterSpi()` Gets fully configured system view SPI implementations.
`Long` `getSystemWorkerBlockedTimeout()` Returns maximum inactivity period for system worker.
`int` `getTimeServerPortBase()` Gets base UPD port number for grid time server.
`int` `getTimeServerPortRange()` Defines port range to try for time server start.
`TracingSpi` `getTracingSpi()` Gets fully configured tracing SPI implementation.
`TransactionConfiguration` `getTransactionConfiguration()` Gets transactions configuration.
`Map<String,?>` `getUserAttributes()` Should return any user-defined attributes to be added to this node.
`long` `getUtilityCacheKeepAliveTime()` Keep alive time of thread pool that is in charge of processing utility cache messages.
`int` `getUtilityCacheThreadPoolSize()` Default size of thread pool that is in charge of processing utility cache messages.
`IgniteInClosure<IgniteConfiguration>` `getWarmupClosure()` Gets grid warmup closure.
`String` `getWorkDirectory()` Gets Ignite work directory.
`boolean` `isActiveOnStart()` Deprecated. Use `getClusterStateOnStart()` instead.
`boolean` `isAllSegmentationResolversPassRequired()` Gets all segmentation resolvers pass required flag.
`boolean` `isAuthenticationEnabled()` Returns `true` if user authentication is enabled for cluster.
`boolean` `isAutoActivationEnabled()` Deprecated. Use `getClusterStateOnStart()` instead.
`boolean` `isCacheSanityCheckEnabled()` Gets flag indicating whether cache sanity check is enabled.
`Boolean` `isClientMode()` Gets client mode flag.
`boolean` `isDaemon()` Whether or not this node should be a daemon node.
`boolean` `isLateAffinityAssignment()` Deprecated. Starting from Ignite 2.1 late affinity assignment is always enabled.
`boolean` `isMarshalLocalJobs()` If this flag is set to `true`, jobs mapped to local node will be marshalled as if it was remote node.
`boolean` `isPeerClassLoadingEnabled()` Returns `true` if peer class loading is enabled, `false` otherwise.
`boolean` `isPersistentStoreEnabled()` Deprecated. Part of legacy configuration API. Doesn't work if new configuration API is used.
`boolean` `isWaitForSegmentOnStart()` Gets wait for segment on startup flag.
`IgniteConfiguration` `setActiveOnStart(boolean activeOnStart)` Deprecated. Use `setClusterStateOnStart(ClusterState)` instead.
`IgniteConfiguration` `setAddressResolver(AddressResolver addrRslvr)` Sets address resolver for addresses mapping determination.
`IgniteConfiguration` `setAllSegmentationResolversPassRequired(boolean allResolversPassReq)` Sets all segmentation resolvers pass required flag.
`IgniteConfiguration` `setAsyncCallbackPoolSize(int poolSize)` Sets async callback thread pool size to use within grid.
`IgniteConfiguration` `setAsyncContinuationExecutor(Executor asyncContinuationExecutor)` Sets the continuation executor for cache async APIs.
`IgniteConfiguration` `setAtomicConfiguration(AtomicConfiguration atomicCfg)`
`IgniteConfiguration` `setAuthenticationEnabled(boolean authEnabled)` Sets flag indicating whether the user authentication is enabled for cluster.
`IgniteConfiguration` `setAutoActivationEnabled(boolean autoActivation)` Deprecated. Use `setClusterStateOnStart(ClusterState)` instead.
`IgniteConfiguration` `setBinaryConfiguration(BinaryConfiguration binaryCfg)` Sets configuration for Ignite Binary objects.
`IgniteConfiguration` `setBuildIndexThreadPoolSize(int poolSize)` Sets index create/rebuild thread pool size to use within grid.
`IgniteConfiguration` `setCacheConfiguration(CacheConfiguration... cacheCfg)` Sets cache configurations.
`IgniteConfiguration` `setCacheKeyConfiguration(CacheKeyConfiguration... cacheKeyCfg)` Sets cache key configuration.
`IgniteConfiguration` `setCacheSanityCheckEnabled(boolean cacheSanityCheckEnabled)` Sets cache sanity check flag.
`IgniteConfiguration` `setCacheStoreSessionListenerFactories(javax.cache.configuration.Factory<CacheStoreSessionListener>... storeSesLsnrs)` Cache store session listener factories.
`IgniteConfiguration` `setCheckpointSpi(CheckpointSpi... cpSpi)` Sets fully configured instance of `CheckpointSpi`.
`IgniteConfiguration` `setClassLoader(ClassLoader classLdr)` Sets loader which will be used for instantiating execution context (`EntryProcessors`, `CacheEntryListeners`, `CacheLoaders` and `ExpiryPolicys`).
`IgniteConfiguration` `setClientConnectorConfiguration(@Nullable ClientConnectorConfiguration cliConnCfg)` Sets client connector configuration.
`IgniteConfiguration` `setClientFailureDetectionTimeout(long clientFailureDetectionTimeout)` Sets failure detection timeout to use in `TcpDiscoverySpi` and `TcpCommunicationSpi`.
`IgniteConfiguration` `setClientMode(boolean clientMode)` Sets client mode flag.
`IgniteConfiguration` `setClusterStateOnStart(ClusterState state)` Sets state of cluster on start.
`IgniteConfiguration` `setCollisionSpi(CollisionSpi colSpi)` Sets fully configured instance of `CollisionSpi`.
`IgniteConfiguration` `setCommunicationFailureResolver(CommunicationFailureResolver commFailureRslvr)`
`IgniteConfiguration` `setCommunicationSpi(CommunicationSpi commSpi)` Sets fully configured instance of `CommunicationSpi`.
`IgniteConfiguration` `setConnectorConfiguration(ConnectorConfiguration connectorCfg)`
`IgniteConfiguration` `setConsistentId(Serializable consistentId)` Sets consistent globally unique node ID which survives node restarts.
`IgniteConfiguration` `setDaemon(boolean daemon)` Sets daemon flag.
`IgniteConfiguration` `setDataStorageConfiguration(DataStorageConfiguration dsCfg)` Sets durable memory configuration.
`IgniteConfiguration` `setDataStreamerThreadPoolSize(int poolSize)` Set thread pool size that will be used to process data stream messages.
`IgniteConfiguration` `setDefaultQueryTimeout(long dfltQryTimeout)` Deprecated. Use `SqlConfiguration.setDefaultQueryTimeout(long)` instead.
`IgniteConfiguration` `setDeploymentMode(DeploymentMode deployMode)` Sets task classes and resources sharing mode.
`IgniteConfiguration` `setDeploymentSpi(DeploymentSpi deploySpi)` Sets fully configured instance of `DeploymentSpi`.
`IgniteConfiguration` `setDiscoverySpi(DiscoverySpi discoSpi)` Sets fully configured instance of `DiscoverySpi`.
`IgniteConfiguration` `setDiscoveryStartupDelay(long discoStartupDelay)` Deprecated. Not used any more.
`IgniteConfiguration` `setEncryptionSpi(EncryptionSpi encryptionSpi)` Sets fully configured instances of `EncryptionSpi`.
`IgniteConfiguration` `setEventStorageSpi(EventStorageSpi evtSpi)` Sets fully configured instance of `EventStorageSpi`.
`IgniteConfiguration` `setExecutorConfiguration(ExecutorConfiguration... execCfgs)` Sets custom executors for user compute tasks.
`IgniteConfiguration` `setFailoverSpi(FailoverSpi... failSpi)` Sets fully configured instance of `FailoverSpi`.
`IgniteConfiguration` `setFailureDetectionTimeout(long failureDetectionTimeout)` Sets failure detection timeout to use in `TcpDiscoverySpi` and `TcpCommunicationSpi`.
`IgniteConfiguration` `setFailureHandler(FailureHandler failureHnd)` Sets failure handler.
`IgniteConfiguration` `setGridLogger(IgniteLogger log)` Sets logger to use within grid.
`IgniteConfiguration` `setGridName(String gridName)` Deprecated. Use `setIgniteInstanceName(String)` instead.
`IgniteConfiguration` `setIgniteHome(String igniteHome)` Sets Ignite installation folder.
`IgniteConfiguration` `setIgniteInstanceName(String instanceName)` Sets of local instance name.
`IgniteConfiguration` `setIncludeEventTypes(int... inclEvtTypes)` Sets array of event types, which will be recorded by `GridEventStorageManager.record(Event)`.
`IgniteConfiguration` `setIncludeProperties(String... includeProps)` Sets array of system or environment property names to include into node attributes.
`IgniteConfiguration` `setIndexingSpi(IndexingSpi indexingSpi)` Sets fully configured instances of `IndexingSpi`.
`IgniteConfiguration` `setLateAffinityAssignment(boolean lateAffAssignment)` Deprecated. Starting from Ignite 2.1 late affinity assignment is always enabled.
`IgniteConfiguration` `setLifecycleBeans(LifecycleBean... lifecycleBeans)` Sets a collection of lifecycle beans.
`IgniteConfiguration` `setLoadBalancingSpi(LoadBalancingSpi... loadBalancingSpi)` Sets fully configured instance of `LoadBalancingSpi`.
`IgniteConfiguration` `setLocalEventListeners(Map<IgnitePredicate<? extends Event>,int[]> lsnrs)` Sets map of pre-configured local event listeners.
`IgniteConfiguration` `setLocalHost(String locHost)` Sets system-wide local address or host for all Ignite components to bind to.
`IgniteConfiguration` `setLongQueryWarningTimeout(long longQryWarnTimeout)` Deprecated. Use `SqlConfiguration.setLongQueryWarningTimeout(long)` instead.
`IgniteConfiguration` `setManagementThreadPoolSize(int poolSize)` Sets management thread pool size to use within grid.
`IgniteConfiguration` `setMarshaller(Marshaller marsh)` Deprecated. Since 2.1. Some Ignite features will not work if non-null marshaller is set (IgniteCache.withKeepBinary(), .NET, CPP, ODBC)
`IgniteConfiguration` `setMarshalLocalJobs(boolean marshLocJobs)` Sets marshal local jobs flag.
`IgniteConfiguration` `setMBeanServer(MBeanServer mbeanSrv)` Sets initialized and started MBean server.
`IgniteConfiguration` `setMemoryConfiguration(MemoryConfiguration memCfg)` Deprecated. Use `DataStorageConfiguration` instead.
`IgniteConfiguration` `setMetricExporterSpi(MetricExporterSpi... metricExporterSpi)` Sets fully configured instances of `MetricExporterSpi`.
`IgniteConfiguration` `setMetricsExpireTime(long metricsExpTime)` Sets time in milliseconds after which a certain metric value is considered expired.
`IgniteConfiguration` `setMetricsHistorySize(int metricsHistSize)` Sets number of metrics kept in history to compute totals and averages.
`IgniteConfiguration` `setMetricsLogFrequency(long metricsLogFreq)` Sets frequency of metrics log print out.
`IgniteConfiguration` `setMetricsUpdateFrequency(long metricsUpdateFreq)` Sets Ignite metrics update frequency in milliseconds.
`IgniteConfiguration` `setMvccVacuumFrequency(long mvccVacuumFreq)` This is an experimental feature.
`IgniteConfiguration` `setMvccVacuumThreadCount(int mvccVacuumThreadCnt)` This is an experimental feature.
`void` `setNetworkCompressionLevel(int netCompressionLevel)` Sets compression level for internal network messages.
`IgniteConfiguration` `setNetworkSendRetryCount(int sndRetryCnt)` Sets message send retries count.
`IgniteConfiguration` `setNetworkSendRetryDelay(long sndRetryDelay)` Sets interval in milliseconds between message send retries.
`IgniteConfiguration` `setNetworkTimeout(long netTimeout)` Maximum timeout in milliseconds for network requests.
`IgniteConfiguration` `setNodeId(UUID nodeId)` Deprecated. Use `setConsistentId(Serializable)` instead.
`IgniteConfiguration` `setOdbcConfiguration(OdbcConfiguration odbcCfg)` Deprecated. Use `setClientConnectorConfiguration(ClientConnectorConfiguration)` instead.
`IgniteConfiguration` `setPeerClassLoadingEnabled(boolean p2pEnabled)` Enables/disables peer class loading.
`IgniteConfiguration` `setPeerClassLoadingLocalClassPathExclude(String... p2pLocClsPathExcl)` Sets list of packages in a system class path that should be P2P loaded even if they exist locally.
`IgniteConfiguration` `setPeerClassLoadingMissedResourcesCacheSize(int p2pMissedCacheSize)` Sets size of missed resources cache.
`IgniteConfiguration` `setPeerClassLoadingThreadPoolSize(int poolSize)` Sets thread pool size to use for peer class loading.
`IgniteConfiguration` `setPersistentStoreConfiguration(PersistentStoreConfiguration pstCfg)` Deprecated. Part of old API. Use `DataStorageConfiguration` for configuring persistence instead.
`IgniteConfiguration` `setPlatformConfiguration(PlatformConfiguration platformCfg)` Sets platform configuration.
`IgniteConfiguration` `setPluginConfigurations(PluginConfiguration... pluginCfgs)` Deprecated. Since `PluginProvider`s can be set explicitly via `setPluginProviders(PluginProvider[])` it's preferable to store `PluginConfiguration` as a part of `PluginProvider`.
`IgniteConfiguration` `setPluginProviders(PluginProvider... pluginProvs)` Sets plugin providers.
`IgniteConfiguration` `setPublicThreadPoolSize(int poolSize)` Sets thread pool size to use within grid.
`IgniteConfiguration` `setQueryThreadPoolSize(int poolSize)` Sets query thread pool size to use within grid.
`IgniteConfiguration` `setRebalanceBatchesPrefetchCount(long rebalanceBatchesCnt)` The number of batches generated by supply node at rebalancing procedure start.
`IgniteConfiguration` `setRebalanceBatchSize(int rebalanceBatchSize)` The supply message size in bytes to be loaded within a single rebalance batch.
`IgniteConfiguration` `setRebalanceThreadPoolSize(int rebalanceThreadPoolSize)` Sets Max count of threads can be used at rebalancing.
`IgniteConfiguration` `setRebalanceThrottle(long rebalanceThrottle)` Time in milliseconds to wait between rebalance messages to avoid overloading of CPU or network.
`IgniteConfiguration` `setRebalanceTimeout(long rebalanceTimeout)` Rebalance timeout for supply and demand messages in milliseconds.
`IgniteConfiguration` `setSegmentationPolicy(SegmentationPolicy segPlc)` Sets segmentation policy.
`IgniteConfiguration` `setSegmentationResolveAttempts(int segResolveAttempts)` Sets segmentation resolve attempts count.
`IgniteConfiguration` `setSegmentationResolvers(SegmentationResolver... segResolvers)` Sets segmentation resolvers.
`IgniteConfiguration` `setSegmentCheckFrequency(long segChkFreq)` Sets network segment check frequency.
`IgniteConfiguration` `setServiceConfiguration(ServiceConfiguration... svcCfgs)` Sets configurations for services to be deployed on the grid.
`IgniteConfiguration` `setServiceThreadPoolSize(int poolSize)` Sets thread pool size to use within grid.
`IgniteConfiguration` `setShutdownPolicy(ShutdownPolicy shutdownPolicy)` Sets shutdown policy.
`IgniteConfiguration` `setSnapshotPath(String snapshotPath)`
`IgniteConfiguration` `setSnapshotThreadPoolSize(int snapshotThreadPoolSize)`
`IgniteConfiguration` `setSqlConfiguration(SqlConfiguration sqlCfg)`
`IgniteConfiguration` `setSqlConnectorConfiguration(SqlConnectorConfiguration sqlConnCfg)` Deprecated. Use `setClientConnectorConfiguration(ClientConnectorConfiguration)` instead.
`IgniteConfiguration` `setSqlQueryHistorySize(int size)` Deprecated. Use `SqlConfiguration.getSqlQueryHistorySize()` instead.
`IgniteConfiguration` `setSqlSchemas(String... sqlSchemas)` Deprecated. Use `SqlConfiguration.setSqlSchemas(String...)` instead.
`IgniteConfiguration` `setSslContextFactory(javax.cache.configuration.Factory<SSLContext> sslCtxFactory)` Sets SSL context factory that will be used for creating a secure socket layer.
`IgniteConfiguration` `setStripedPoolSize(int stripedPoolSize)` Sets striped pool size that should be used for cache requests processing.
`IgniteConfiguration` `setSystemThreadPoolSize(int poolSize)` Sets system thread pool size to use within grid.
`IgniteConfiguration` `setSystemViewExporterSpi(SystemViewExporterSpi... sysViewExporterSpi)` Sets fully configured instances of `SystemViewExporterSpi`.
`IgniteConfiguration` `setSystemWorkerBlockedTimeout(long sysWorkerBlockedTimeout)` Sets maximum inactivity period for system worker.
`IgniteConfiguration` `setTimeServerPortBase(int timeSrvPortBase)` Sets time server port base.
`IgniteConfiguration` `setTimeServerPortRange(int timeSrvPortRange)` Sets time server port range.
`IgniteConfiguration` `setTracingSpi(TracingSpi tracingSpi)` Set fully configured instance of `TracingSpi`.
`IgniteConfiguration` `setTransactionConfiguration(TransactionConfiguration txCfg)` Sets transactions configuration.
`IgniteConfiguration` `setUserAttributes(Map<String,?> userAttrs)` Sets user attributes for this node.
`IgniteConfiguration` `setUtilityCacheKeepAliveTime(long keepAliveTime)` Sets keep alive time of thread pool size that will be used to process utility cache messages.
`IgniteConfiguration` `setUtilityCachePoolSize(int poolSize)` Sets default thread pool size that will be used to process utility cache messages.
`IgniteConfiguration` `setWaitForSegmentOnStart(boolean waitForSegOnStart)` Sets wait for segment on start flag.
`IgniteConfiguration` `setWarmupClosure(IgniteInClosure<IgniteConfiguration> warmupClos)` Sets warmup closure to execute before grid startup.
`IgniteConfiguration` `setWorkDirectory(String igniteWorkDir)` Sets Ignite work folder.
`String` `toString()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### COURTESY_LOGGER_NAME

    public static final String COURTESY_LOGGER_NAME

Courtesy notice log category.

See Also:
  Constant Field Values

#### DFLT_P2P_ENABLED

    public static final boolean DFLT_P2P_ENABLED

Default flag for peer class loading. By default the value is `false` which means that peer class loading is disabled.

See Also:
  Constant Field Values

#### DFLT_METRICS_HISTORY_SIZE

    public static final int DFLT_METRICS_HISTORY_SIZE

Default metrics history size (value is `10000`).

See Also:
  Constant Field Values

#### DFLT_METRICS_UPDATE_FREQ

    public static final long DFLT_METRICS_UPDATE_FREQ

Default metrics update frequency.

See Also:
  Constant Field Values

#### DFLT_METRICS_EXPIRE_TIME

    public static final long DFLT_METRICS_EXPIRE_TIME

Default metrics expire time. The value is `Long.MAX_VALUE` which means that metrics never expire.

See Also:
  Constant Field Values

#### DFLT_NETWORK_TIMEOUT

    public static final long DFLT_NETWORK_TIMEOUT

Default maximum timeout to wait for network responses in milliseconds (value is `5,000ms`).

See Also:
  Constant Field Values

#### DFLT_NETWORK_COMPRESSION

    public static final int DFLT_NETWORK_COMPRESSION

Default compression level for network messages (value is Deflater.BEST_SPEED.

See Also:
  Constant Field Values

#### DFLT_SEND_RETRY_DELAY

    public static final long DFLT_SEND_RETRY_DELAY

Default interval between message send retries.

See Also:
  Constant Field Values

#### DFLT_SEND_RETRY_CNT

    public static final int DFLT_SEND_RETRY_CNT

Default message send retries count.

See Also:
  Constant Field Values

#### DFLT_DISCOVERY_STARTUP_DELAY

    public static final long DFLT_DISCOVERY_STARTUP_DELAY

Default discovery startup delay in milliseconds (value is `60,000ms`).

See Also:
  Constant Field Values

#### DFLT_DEPLOYMENT_MODE

    public static final DeploymentMode DFLT_DEPLOYMENT_MODE

Default deployment mode (value is `DeploymentMode.SHARED`).

#### DFLT_P2P_MISSED_RESOURCES_CACHE_SIZE

    public static final int DFLT_P2P_MISSED_RESOURCES_CACHE_SIZE

Default cache size for missed resources.

See Also:
  Constant Field Values

#### DFLT_TIME_SERVER_PORT_BASE

    public static final int DFLT_TIME_SERVER_PORT_BASE

Default time server port base.

See Also:
  Constant Field Values

#### DFLT_TIME_SERVER_PORT_RANGE

    public static final int DFLT_TIME_SERVER_PORT_RANGE

Default time server port range.

See Also:
  Constant Field Values

#### AVAILABLE_PROC_CNT

    public static final int AVAILABLE_PROC_CNT

Default core size of public thread pool.

#### DFLT_PUBLIC_THREAD_CNT

    public static final int DFLT_PUBLIC_THREAD_CNT

Default core size of public thread pool.

#### DFLT_DATA_STREAMER_POOL_SIZE

    public static final int DFLT_DATA_STREAMER_POOL_SIZE

Default size of data streamer thread pool.

#### DFLT_REBALANCE_THREAD_POOL_SIZE

    public static final int DFLT_REBALANCE_THREAD_POOL_SIZE

Default limit of threads used for rebalance.

#### DFLT_REBALANCE_TIMEOUT

    public static final long DFLT_REBALANCE_TIMEOUT

Default rebalance message timeout in milliseconds (value is `10000`).

See Also:
  Constant Field Values

#### DFLT_REBALANCE_BATCHES_PREFETCH_COUNT

    public static final long DFLT_REBALANCE_BATCHES_PREFETCH_COUNT

Default rebalance batches prefetch count (value is `3`).

See Also:
  Constant Field Values

#### DFLT_REBALANCE_THROTTLE

    public static final long DFLT_REBALANCE_THROTTLE

Time to wait between rebalance messages in milliseconds to avoid overloading CPU (value is `0`).

See Also:
  Constant Field Values

#### DFLT_REBALANCE_BATCH_SIZE

    public static final int DFLT_REBALANCE_BATCH_SIZE

Default rebalance batch size in bytes (value is `512Kb`).

See Also:
  Constant Field Values

#### DFLT_SYSTEM_CORE_THREAD_CNT

    public static final int DFLT_SYSTEM_CORE_THREAD_CNT

Default size of system thread pool.

#### DFLT_QUERY_THREAD_POOL_SIZE

    public static final int DFLT_QUERY_THREAD_POOL_SIZE

Default size of query thread pool.

#### DFLT_BUILD_IDX_THREAD_POOL_SIZE

    public static final int DFLT_BUILD_IDX_THREAD_POOL_SIZE

Default size of index create/rebuild thread pool.

#### DFLT_THREAD_KEEP_ALIVE_TIME

    public static final long DFLT_THREAD_KEEP_ALIVE_TIME

Default Ignite thread keep alive time.

See Also:
  Constant Field Values

#### DFLT_P2P_THREAD_CNT

    public static final int DFLT_P2P_THREAD_CNT

Default size of peer class loading thread pool.

See Also:
  Constant Field Values

#### DFLT_MGMT_THREAD_CNT

    public static final int DFLT_MGMT_THREAD_CNT

Default size of management thread pool.

See Also:
  Constant Field Values

#### DFLT_SEG_PLC

    public static final SegmentationPolicy DFLT_SEG_PLC

Default segmentation policy.

#### DFLT_WAIT_FOR_SEG_ON_START

    public static final boolean DFLT_WAIT_FOR_SEG_ON_START

Default value for wait for segment on startup flag.

See Also:
  Constant Field Values

#### DFLT_ALL_SEG_RESOLVERS_PASS_REQ

    public static final boolean DFLT_ALL_SEG_RESOLVERS_PASS_REQ

Default value for all segmentation resolvers pass required.

See Also:
  Constant Field Values

#### DFLT_SEG_RESOLVE_ATTEMPTS

    public static final int DFLT_SEG_RESOLVE_ATTEMPTS

Default value segmentation resolve attempts count.

See Also:
  Constant Field Values

#### DFLT_SEG_CHK_FREQ

    public static final long DFLT_SEG_CHK_FREQ

Default segment check frequency in discovery manager.

See Also:
  Constant Field Values

#### DFLT_METRICS_LOG_FREQ

    public static final long DFLT_METRICS_LOG_FREQ

Default frequency of metrics log print out.

See Also:
  Constant Field Values

#### DFLT_TCP_PORT

    public static final int DFLT_TCP_PORT

Default TCP server port.

See Also:
  Constant Field Values

#### DFLT_MARSHAL_LOCAL_JOBS

    public static final boolean DFLT_MARSHAL_LOCAL_JOBS

Default marshal local jobs flag.

See Also:
  Constant Field Values

#### DFLT_CACHE_SANITY_CHECK_ENABLED

    public static final boolean DFLT_CACHE_SANITY_CHECK_ENABLED

Default value for cache sanity check enabled flag.

See Also:
  Constant Field Values

#### DFLT_SNAPSHOT_DIRECTORY

    public static final String DFLT_SNAPSHOT_DIRECTORY

Default relative working directory path for snapshot operation result. The default directory is `snapshots`.

See Also:
  Constant Field Values

#### DFLT_SNAPSHOT_THREAD_POOL_SIZE

    public static final int DFLT_SNAPSHOT_THREAD_POOL_SIZE

Default number of threads to perform snapshot operations. The default value is `4`.

See Also:
  Constant Field Values

#### DFLT_LATE_AFF_ASSIGNMENT

    @Deprecated
    public static final boolean DFLT_LATE_AFF_ASSIGNMENT

Deprecated.
Default value for late affinity assignment flag.

See Also:
  Constant Field Values

#### DFLT_STATE_ON_START

    public static final ClusterState DFLT_STATE_ON_START

Default value for cluster state on start.

#### DFLT_ACTIVE_ON_START

    @Deprecated
    public static final boolean DFLT_ACTIVE_ON_START

Deprecated.
Default value for active on start flag.

See Also:
  Constant Field Values

#### DFLT_AUTO_ACTIVATION

    @Deprecated
    public static final boolean DFLT_AUTO_ACTIVATION

Deprecated.
Default value for auto-activation flag.

See Also:
  Constant Field Values

#### DFLT_FAILURE_DETECTION_TIMEOUT

    public static final Long DFLT_FAILURE_DETECTION_TIMEOUT

Default failure detection timeout in millis.

#### DFLT_CLIENT_FAILURE_DETECTION_TIMEOUT

    public static final Long DFLT_CLIENT_FAILURE_DETECTION_TIMEOUT

Default failure detection timeout for client nodes in millis.

#### DFLT_SHUTDOWN_POLICY

    public static final ShutdownPolicy DFLT_SHUTDOWN_POLICY

Default policy for node shutdown.

#### DFLT_LONG_QRY_WARN_TIMEOUT

    @Deprecated
    public static final long DFLT_LONG_QRY_WARN_TIMEOUT

Deprecated. Please use `SqlConfiguration.DFLT_LONG_QRY_WARN_TIMEOUT`.
Default timeout after which long query warning will be printed.

See Also:
  Constant Field Values

#### DFLT_MVCC_VACUUM_THREAD_CNT

    public static final int DFLT_MVCC_VACUUM_THREAD_CNT

Default number of MVCC vacuum threads..

See Also:
  Constant Field Values

#### DFLT_MVCC_VACUUM_FREQUENCY

    public static final long DFLT_MVCC_VACUUM_FREQUENCY

Default time interval between MVCC vacuum runs in milliseconds.

See Also:
  Constant Field Values

#### DFLT_SQL_QUERY_HISTORY_SIZE

    @Deprecated
    public static final int DFLT_SQL_QUERY_HISTORY_SIZE

Deprecated. Please use `SqlConfiguration.DFLT_SQL_QUERY_HISTORY_SIZE`.
Default SQL query history size.

See Also:
  Constant Field Values

#### shutdown

    public ShutdownPolicy shutdown

Shutdown policy for cluster.

### Constructor Detail

#### IgniteConfiguration

    public IgniteConfiguration()

Creates valid grid configuration with all default values.

#### IgniteConfiguration

    public IgniteConfiguration(IgniteConfiguration cfg)

Creates grid configuration by coping all configuration properties from given configuration.

Parameters:
  `cfg` - Grid configuration to copy from.

### Method Detail

#### getCommunicationFailureResolver

    public CommunicationFailureResolver getCommunicationFailureResolver()

Returns:
  Communication failure resovler.

#### setCommunicationFailureResolver

    public IgniteConfiguration setCommunicationFailureResolver(CommunicationFailureResolver commFailureRslvr)

Parameters:
  `commFailureRslvr` - Communication failure resovler.
Returns:
  `this` instance.

#### getGridName

    @Deprecated
    public String getGridName()

Deprecated. Use `getIgniteInstanceName()` instead.
Gets optional grid name. Returns `null` if non-default grid name was not provided.

The name only works locally and has no effect on topology

Returns:
  Optional grid name. Can be `null`, which is default grid name, if non-default grid name was not provided.

#### getIgniteInstanceName

    public String getIgniteInstanceName()

Gets optional local instance name. Returns `null` if non-default local instance name was not provided.

The name only works locally and has no effect on topology

Returns:
  Optional local instance name. Can be `null`, which is default local instance name, if non-default local instance name was not provided.

#### isDaemon

    public boolean isDaemon()

Whether or not this node should be a daemon node.

Daemon nodes are the usual grid nodes that participate in topology but not visible on the main APIs, i.e. they are not part of any cluster groups. The only way to see daemon nodes is to use `ClusterGroup.forDaemons()` method.

Daemon nodes are used primarily for management and monitoring functionality that is build on Ignite and needs to participate in the topology, but also needs to be excluded from the "normal" topology, so that it won't participate in the task execution or in-memory data grid storage.

Returns:
  `True` if this node should be a daemon node, `false` otherwise.
See Also:
  `ClusterGroup.forDaemons()`

#### setDaemon

    public IgniteConfiguration setDaemon(boolean daemon)

Sets daemon flag.

Daemon nodes are the usual grid nodes that participate in topology but not visible on the main APIs, i.e. they are not part of any cluster group. The only way to see daemon nodes is to use `ClusterGroup.forDaemons()` method.

Daemon nodes are used primarily for management and monitoring functionality that is build on Ignite and needs to participate in the topology, but also needs to be excluded from the "normal" topology, so that it won't participate in the task execution or in-memory data grid storage.

Parameters:
  `daemon` - Daemon flag.
Returns:
  `this` for chaining.

#### setGridName

    @Deprecated
    public IgniteConfiguration setGridName(String gridName)

Deprecated. Use `setIgniteInstanceName(String)` instead.
Sets grid name. Note that `null` is a default grid name.

Parameters:
  `gridName` - Grid name to set. Can be `null`, which is default grid name.
Returns:
  `this` for chaining.

#### setIgniteInstanceName

    public IgniteConfiguration setIgniteInstanceName(String instanceName)

Sets of local instance name. Note that `null` is a default local instance name.

Parameters:
  `instanceName` - Local instance name to set. Can be `null`. which is default local instance name.
Returns:
  `this` for chaining.

#### setConsistentId

    public IgniteConfiguration setConsistentId(Serializable consistentId)

Sets consistent globally unique node ID which survives node restarts.

Parameters:
  `consistentId` - Node consistent ID.
Returns:
  `this` for chaining.

#### getConsistentId

    public Serializable getConsistentId()

Gets consistent globally unique node ID which survives node restarts.

Returns:
  Node consistent ID.

#### getUserAttributes

    public Map<String,?> getUserAttributes()

Should return any user-defined attributes to be added to this node. These attributes can then be accessed on nodes by calling `ClusterNode.attribute(String)` or `ClusterNode.attributes()` methods.

Note that system adds the following (among others) attributes automatically:

- `{@link System#getProperties()}` - All system properties.
- `{@link System#getenv(String)}` - All environment properties.

Note that grid will add all System properties and environment properties to grid node attributes also. SPIs may also add node attributes that are used for SPI implementation.

NOTE: attributes names starting with `org.apache.ignite` are reserved for internal use.

Returns:
  User defined attributes for this node.

#### setUserAttributes

    public IgniteConfiguration setUserAttributes(Map<String,?> userAttrs)

Sets user attributes for this node.

Parameters:
  `userAttrs` - User attributes for this node.
Returns:
  `this` for chaining.
See Also:
  `getUserAttributes()`

#### getGridLogger

    public IgniteLogger getGridLogger()

Should return an instance of logger to use in grid. If not provided, `Log4JLogger` will be used.

Returns:
  Logger to use in grid.

#### setGridLogger

    public IgniteConfiguration setGridLogger(IgniteLogger log)

Sets logger to use within grid.

Parameters:
  `log` - Logger to use within grid.
Returns:
  `this` for chaining.
See Also:
  `getGridLogger()`

#### getStripedPoolSize

    public int getStripedPoolSize()

Returns striped pool size that should be used for cache requests processing.

Striped pool is better for typical cache operations.

Returns:
  The number of threads (stripes) to be used for requests processing.
See Also:
  `getPublicThreadPoolSize()`, `getSystemThreadPoolSize()`

#### setStripedPoolSize

    public IgniteConfiguration setStripedPoolSize(int stripedPoolSize)

Sets striped pool size that should be used for cache requests processing.

Striped pool is better for typical cache operations.

Parameters:
  `stripedPoolSize` - The number of threads (stripes) to be used for requests processing.
Returns:
  `this` for chaining.
See Also:
  `getPublicThreadPoolSize()`, `getSystemThreadPoolSize()`

#### getPublicThreadPoolSize

    public int getPublicThreadPoolSize()

Should return a thread pool size to be used in grid. This executor service will be in charge of processing `GridJobs` and user messages sent to node.

If not provided, executor service will have size `DFLT_PUBLIC_THREAD_CNT`.

Returns:
  Thread pool size to be used in grid to process job execution requests and user messages sent to the node.

#### getServiceThreadPoolSize

    public int getServiceThreadPoolSize()

Should return a thread pool size to be used in grid. This executor service will be in charge of processing `Service` proxy invocations.

If not provided, executor service will have size `DFLT_PUBLIC_THREAD_CNT`.

Returns:
  Thread pool size to be used in grid to process service proxy invocations.

#### getSystemThreadPoolSize

    public int getSystemThreadPoolSize()

Size of thread pool that is in charge of processing internal system messages.

If not provided, executor service will have size `DFLT_SYSTEM_CORE_THREAD_CNT`.

Returns:
  Thread pool size to be used in grid for internal system messages.

#### getAsyncCallbackPoolSize

    public int getAsyncCallbackPoolSize()

Size of thread pool that is in charge of processing asynchronous callbacks.

This pool is used for callbacks annotated with `IgniteAsyncCallback`.

If not provided, executor service will have size `DFLT_PUBLIC_THREAD_CNT`.

Returns:
  Thread pool size to be used.
See Also:
  `IgniteAsyncCallback`

#### getManagementThreadPoolSize

    public int getManagementThreadPoolSize()

Size of thread pool that is in charge of processing internal and Visor `GridJobs`.

If not provided, executor service will have size `DFLT_MGMT_THREAD_CNT`

Returns:
  Thread pool size to be used in grid for internal and Visor jobs processing.

#### getPeerClassLoadingThreadPoolSize

    public int getPeerClassLoadingThreadPoolSize()

Size of thread pool which is in charge of peer class loading requests/responses. If you don't use peer class loading and use GAR deployment only we would recommend to decrease the value of total threads to `1`.

If not provided, executor service will have size `DFLT_P2P_THREAD_CNT`.

Returns:
  Thread pool size to be used for peer class loading requests handling.

#### getDataStreamerThreadPoolSize

    public int getDataStreamerThreadPoolSize()

Size of thread pool that is in charge of processing data stream messages.

If not provided, executor service will have size `DFLT_DATA_STREAMER_POOL_SIZE`.

Returns:
  Thread pool size to be used for data stream messages.

#### getUtilityCacheThreadPoolSize

    public int getUtilityCacheThreadPoolSize()

Default size of thread pool that is in charge of processing utility cache messages.

If not provided, executor service will have size `DFLT_SYSTEM_CORE_THREAD_CNT`.

Returns:
  Default thread pool size to be used in grid for utility cache messages.

#### getUtilityCacheKeepAliveTime

    public long getUtilityCacheKeepAliveTime()

Keep alive time of thread pool that is in charge of processing utility cache messages.

If not provided, executor service will have keep alive time `DFLT_THREAD_KEEP_ALIVE_TIME`.

Returns:
  Thread pool keep alive time (in milliseconds) to be used in grid for utility cache messages.

#### getQueryThreadPoolSize

    public int getQueryThreadPoolSize()

Size of thread pool that is in charge of processing query messages.

If not provided, executor service will have size `DFLT_QUERY_THREAD_POOL_SIZE`.

Returns:
  Thread pool size to be used in grid for query messages.

#### getBuildIndexThreadPoolSize

    public int getBuildIndexThreadPoolSize()

Size of thread pool for create/rebuild index.

If not provided, executor service will have size `DFLT_BUILD_IDX_THREAD_POOL_SIZE`.

Returns:
  Thread pool size for create/rebuild index.

#### setBuildIndexThreadPoolSize

    public IgniteConfiguration setBuildIndexThreadPoolSize(int poolSize)

Sets index create/rebuild thread pool size to use within grid.

Parameters:
  `poolSize` - Thread pool size to use within grid.
Returns:
  `this` for chaining.
See Also:
  `getBuildIndexThreadPoolSize()`

#### getSqlQueryHistorySize

    @Deprecated
    public int getSqlQueryHistorySize()

Deprecated. Use `SqlConfiguration.setSqlQueryHistorySize(int)` instead.
Number of SQL query history elements to keep in memory. If not provided, then default value `SqlConfiguration.DFLT_SQL_QUERY_HISTORY_SIZE` is used. If provided value is less or equals 0, then gathering SQL query history will be switched off.

Returns:
  SQL query history size.

#### setSqlQueryHistorySize

    @Deprecated
    public IgniteConfiguration setSqlQueryHistorySize(int size)

Deprecated. Use `SqlConfiguration.getSqlQueryHistorySize()` instead.
Sets number of SQL query history elements kept in memory. If not explicitly set, then default value is `SqlConfiguration.DFLT_SQL_QUERY_HISTORY_SIZE`.

Parameters:
  `size` - Number of SQL query history elements kept in memory.
Returns:
  `this` for chaining.

#### getShutdownPolicy

    public ShutdownPolicy getShutdownPolicy()

Gets shutdown policy. If policy was not set default policy will be return `IgniteCluster.DEFAULT_SHUTDOWN_POLICY`.

Returns:
  Shutdown policy.

#### setShutdownPolicy

    public IgniteConfiguration setShutdownPolicy(ShutdownPolicy shutdownPolicy)

Sets shutdown policy. If `null` is passed as a parameter, policy will be set as default.

Parameters:
  `shutdownPolicy` - Shutdown policy.
Returns:
  `this` for chaining.

#### getDefaultQueryTimeout

    @Deprecated
    public long getDefaultQueryTimeout()

Deprecated. Use `SqlConfiguration.getDefaultQueryTimeout()` instead.
Defines the default query timeout. Defaults to `SqlConfiguration.DFLT_QRY_TIMEOUT`. `0` means there is no timeout (this is a default value)

Returns:
  Default query timeout.

#### setDefaultQueryTimeout

    @Deprecated
    public IgniteConfiguration setDefaultQueryTimeout(long dfltQryTimeout)

Deprecated. Use `SqlConfiguration.setDefaultQueryTimeout(long)` instead.
Sets timeout in milliseconds for default query timeout. `0` means there is no timeout (this is a default value)

Parameters:
  `dfltQryTimeout` - Timeout in milliseconds.
Returns:
  `this` for chaining.

#### setPublicThreadPoolSize

    public IgniteConfiguration setPublicThreadPoolSize(int poolSize)

Sets thread pool size to use within grid.

Parameters:
  `poolSize` - Thread pool size to use within grid.
Returns:
  `this` for chaining.
See Also:
  `getPublicThreadPoolSize()`

#### setServiceThreadPoolSize

    public IgniteConfiguration setServiceThreadPoolSize(int poolSize)

Sets thread pool size to use within grid.

Parameters:
  `poolSize` - Thread pool size to use within grid.
Returns:
  `this` for chaining.
See Also:
  `getServiceThreadPoolSize()`

#### setSystemThreadPoolSize

    public IgniteConfiguration setSystemThreadPoolSize(int poolSize)

Sets system thread pool size to use within grid.

Parameters:
  `poolSize` - Thread pool size to use within grid.
Returns:
  `this` for chaining.
See Also:
  `getSystemThreadPoolSize()`

#### setAsyncCallbackPoolSize

    public IgniteConfiguration setAsyncCallbackPoolSize(int poolSize)

Sets async callback thread pool size to use within grid.

Parameters:
  `poolSize` - Thread pool size to use within grid.
Returns:
  `this` for chaining.
See Also:
  `getAsyncCallbackPoolSize()`, `IgniteAsyncCallback`

#### setManagementThreadPoolSize

    public IgniteConfiguration setManagementThreadPoolSize(int poolSize)

Sets management thread pool size to use within grid.

Parameters:
  `poolSize` - Thread pool size to use within grid.
Returns:
  `this` for chaining.
See Also:
  `getManagementThreadPoolSize()`

#### setPeerClassLoadingThreadPoolSize

    public IgniteConfiguration setPeerClassLoadingThreadPoolSize(int poolSize)

Sets thread pool size to use for peer class loading.

Parameters:
  `poolSize` - Thread pool size to use within grid.
Returns:
  `this` for chaining.
See Also:
  `getPeerClassLoadingThreadPoolSize()`

#### setDataStreamerThreadPoolSize

    public IgniteConfiguration setDataStreamerThreadPoolSize(int poolSize)

Set thread pool size that will be used to process data stream messages.

Parameters:
  `poolSize` - Executor service to use for data stream messages.
Returns:
  `this` for chaining.
See Also:
  `getDataStreamerThreadPoolSize()`

#### setUtilityCachePoolSize

    public IgniteConfiguration setUtilityCachePoolSize(int poolSize)

Sets default thread pool size that will be used to process utility cache messages.

Parameters:
  `poolSize` - Default executor service size to use for utility cache messages.
Returns:
  `this` for chaining.
See Also:
  `getUtilityCacheThreadPoolSize()`, `getUtilityCacheKeepAliveTime()`

#### setQueryThreadPoolSize

    public IgniteConfiguration setQueryThreadPoolSize(int poolSize)

Sets query thread pool size to use within grid.

Parameters:
  `poolSize` - Thread pool size to use within grid.
Returns:
  `this` for chaining.
See Also:
  `getQueryThreadPoolSize()`

#### setUtilityCacheKeepAliveTime

    public IgniteConfiguration setUtilityCacheKeepAliveTime(long keepAliveTime)

Sets keep alive time of thread pool size that will be used to process utility cache messages.

Parameters:
  `keepAliveTime` - Keep alive time of executor service to use for utility cache messages.
Returns:
  `this` for chaining.
See Also:
  `getUtilityCacheThreadPoolSize()`, `getUtilityCacheKeepAliveTime()`

#### getIgniteHome

    public String getIgniteHome()

Should return Ignite installation home folder. If not provided, the system will check `IGNITE_HOME` system property and environment variable in that order. If `IGNITE_HOME` still could not be obtained, then grid will not start and exception will be thrown.

Returns:
  Ignite installation home or `null` to make the system attempt to infer it automatically.
See Also:
  `IgniteSystemProperties.IGNITE_HOME`

#### setIgniteHome

    public IgniteConfiguration setIgniteHome(String igniteHome)

Sets Ignite installation folder.

Parameters:
  `igniteHome` - `Ignition` installation folder.
Returns:
  `this` for chaining.
See Also:
  `getIgniteHome()`, `IgniteSystemProperties.IGNITE_HOME`

#### getWorkDirectory

    public String getWorkDirectory()

Gets Ignite work directory. If not provided, the method will use work directory under `IGNITE_HOME` specified by `setIgniteHome(String)` or `IGNITE_HOME` environment variable or system property.

If `IGNITE_HOME` is not provided, then system temp directory is used.

Returns:
  Ignite work directory or `null` to make the system attempt to infer it automatically.
See Also:
  `getIgniteHome()`, `IgniteSystemProperties.IGNITE_HOME`

#### setWorkDirectory

    public IgniteConfiguration setWorkDirectory(String igniteWorkDir)

Sets Ignite work folder.

Parameters:
  `igniteWorkDir` - `Ignite` work directory.
Returns:
  `this` for chaining.
See Also:
  `getWorkDirectory()`

#### getMBeanServer

    public MBeanServer getMBeanServer()

Should return MBean server instance. If not provided, the system will use default platform MBean server.

Returns:
  MBean server instance or `null` to make the system create a default one.
See Also:
  `ManagementFactory.getPlatformMBeanServer()`

#### setMBeanServer

    public IgniteConfiguration setMBeanServer(MBeanServer mbeanSrv)

Sets initialized and started MBean server.

Parameters:
  `mbeanSrv` - Initialized and started MBean server.
Returns:
  `this` for chaining.

#### getNodeId

    @Deprecated
    public UUID getNodeId()

Deprecated.
Unique identifier for this node within grid.

Returns:
  Unique identifier for this node within grid.

#### setNodeId

    @Deprecated
    public IgniteConfiguration setNodeId(UUID nodeId)

Deprecated. Use `setConsistentId(Serializable)` instead.
Sets unique identifier for local node.

Parameters:
  `nodeId` - Unique identifier for local node.
Returns:
  `this` for chaining.
See Also:
  `getNodeId()`

#### getMarshaller

    @Deprecated
    public Marshaller getMarshaller()

Deprecated. Since 2.1. Some Ignite features will not work if non-null marshaller is set (IgniteCache.withKeepBinary(), .NET, CPP, ODBC)
Should return an instance of marshaller to use in grid. If not provided, default marshaller implementation that allows to read object field values without deserialization will be used.

Returns:
  Marshaller to use in grid.

#### setMarshaller

    @Deprecated
    public IgniteConfiguration setMarshaller(Marshaller marsh)

Deprecated. Since 2.1. Some Ignite features will not work if non-null marshaller is set (IgniteCache.withKeepBinary(), .NET, CPP, ODBC)
Sets marshaller to use within grid.

Parameters:
  `marsh` - Marshaller to use within grid.
Returns:
  `this` for chaining.
See Also:
  `getMarshaller()`

#### isPeerClassLoadingEnabled

    public boolean isPeerClassLoadingEnabled()

Returns `true` if peer class loading is enabled, `false` otherwise. Default value is `false` specified by `DFLT_P2P_ENABLED`.

When peer class loading is enabled and task is not deployed on local node, local node will try to load classes from the node that initiated task execution. This way, a task can be physically deployed only on one node and then internally penetrate to all other nodes.

See `ComputeTask` documentation for more information about task deployment.

Returns:
  `true` if peer class loading is enabled, `false` otherwise.

#### isMarshalLocalJobs

    public boolean isMarshalLocalJobs()

If this flag is set to `true`, jobs mapped to local node will be marshalled as if it was remote node.

If not provided, default value is defined by `DFLT_MARSHAL_LOCAL_JOBS`.

Returns:
  `True` if local jobs should be marshalled.

#### setMarshalLocalJobs

    public IgniteConfiguration setMarshalLocalJobs(boolean marshLocJobs)

Sets marshal local jobs flag.

Parameters:
  `marshLocJobs` - `True` if local jobs should be marshalled.
Returns:
  `this` for chaining.

#### setPeerClassLoadingEnabled

    public IgniteConfiguration setPeerClassLoadingEnabled(boolean p2pEnabled)

Enables/disables peer class loading.

Parameters:
  `p2pEnabled` - `true` if peer class loading is enabled, `false` otherwise.
Returns:
  `this` for chaining.

#### getPeerClassLoadingLocalClassPathExclude

    public String[] getPeerClassLoadingLocalClassPathExclude()

Should return list of packages from the system classpath that need to be peer-to-peer loaded from task originating node. '*' is supported at the end of the package name which means that all sub-packages and their classes are included like in Java package import clause.

Returns:
  List of peer-to-peer loaded package names.

#### setPeerClassLoadingLocalClassPathExclude

    public IgniteConfiguration setPeerClassLoadingLocalClassPathExclude(String... p2pLocClsPathExcl)

Sets list of packages in a system class path that should be P2P loaded even if they exist locally.

Parameters:
  `p2pLocClsPathExcl` - List of P2P loaded packages. Package name supports '*' at the end like in package import clause.
Returns:
  `this` for chaining.

#### getMetricsHistorySize

    public int getMetricsHistorySize()

Number of node metrics to keep in memory to calculate totals and averages. If not provided (value is `0`), then default value `DFLT_METRICS_HISTORY_SIZE` is used.

Returns:
  Metrics history size.
See Also:
  `DFLT_METRICS_HISTORY_SIZE`

#### setMetricsHistorySize

    public IgniteConfiguration setMetricsHistorySize(int metricsHistSize)

Sets number of metrics kept in history to compute totals and averages. If not explicitly set, then default value is `10,000`.

Parameters:
  `metricsHistSize` - Number of metrics kept in history to use for metric totals and averages calculations.
Returns:
  `this` for chaining.
See Also:
  `DFLT_METRICS_HISTORY_SIZE`

#### getMetricsUpdateFrequency

    public long getMetricsUpdateFrequency()

Gets Ignite metrics update frequency in milliseconds.

Updating metrics too frequently may have negative performance impact.

If not provided, then default value `DFLT_METRICS_UPDATE_FREQ` is used.

Returns:
  Metrics update frequency in milliseconds.
See Also:
  `DFLT_METRICS_UPDATE_FREQ`

#### setMetricsUpdateFrequency

    public IgniteConfiguration setMetricsUpdateFrequency(long metricsUpdateFreq)

Sets Ignite metrics update frequency in milliseconds.

Positive value defines the actual update frequency. If not provided, then default value `DFLT_METRICS_UPDATE_FREQ` is used.

Parameters:
  `metricsUpdateFreq` - Metrics update frequency in milliseconds.
Returns:
  `this` for chaining.

#### getMetricsExpireTime

    public long getMetricsExpireTime()

Elapsed time in milliseconds after which node metrics are considered expired. If not provided, then default value `DFLT_METRICS_EXPIRE_TIME` is used.

Returns:
  Metrics expire time.
See Also:
  `DFLT_METRICS_EXPIRE_TIME`

#### setMetricsExpireTime

    public IgniteConfiguration setMetricsExpireTime(long metricsExpTime)

Sets time in milliseconds after which a certain metric value is considered expired. If not set explicitly, then default value is `600,000` milliseconds (10 minutes).

Parameters:
  `metricsExpTime` - The metricsExpTime to set.
Returns:
  `this` for chaining.
See Also:
  `DFLT_METRICS_EXPIRE_TIME`

#### getNetworkTimeout

    public long getNetworkTimeout()

Maximum timeout in milliseconds for network requests.

If not provided, then default value `DFLT_NETWORK_TIMEOUT` is used.

Returns:
  Maximum timeout for network requests.
See Also:
  `DFLT_NETWORK_TIMEOUT`

#### setNetworkTimeout

    public IgniteConfiguration setNetworkTimeout(long netTimeout)

Maximum timeout in milliseconds for network requests.

If not provided (value is `0`), then default value `DFLT_NETWORK_TIMEOUT` is used.

Parameters:
  `netTimeout` - Maximum timeout for network requests.
Returns:
  `this` for chaining.
See Also:
  `DFLT_NETWORK_TIMEOUT`

#### getNetworkCompressionLevel

    public int getNetworkCompressionLevel()

Compression level of internal network messages.

If not provided, then default value Deflater.BEST_SPEED is used.

Returns:
  Network messages default compression level.

#### setNetworkCompressionLevel

    public void setNetworkCompressionLevel(int netCompressionLevel)

Sets compression level for internal network messages.

Parameters:
  `netCompressionLevel` - Compression level for internal network messages.

  If not provided, then default value `Deflater.BEST_SPEED` is used.

#### getNetworkSendRetryDelay

    public long getNetworkSendRetryDelay()

Interval in milliseconds between message send retries.

If not provided, then default value `DFLT_SEND_RETRY_DELAY` is used.

Returns:
  Interval between message send retries.
See Also:
  `getNetworkSendRetryCount()`, `DFLT_SEND_RETRY_DELAY`

#### setNetworkSendRetryDelay

    public IgniteConfiguration setNetworkSendRetryDelay(long sndRetryDelay)

Sets interval in milliseconds between message send retries.

If not provided, then default value `DFLT_SEND_RETRY_DELAY` is used.

Parameters:
  `sndRetryDelay` - Interval between message send retries.
Returns:
  `this` for chaining.

#### getNetworkSendRetryCount

    public int getNetworkSendRetryCount()

Message send retries count.

If not provided, then default value `DFLT_SEND_RETRY_CNT` is used.

Returns:
  Message send retries count.
See Also:
  `getNetworkSendRetryDelay()`, `DFLT_SEND_RETRY_CNT`

#### setNetworkSendRetryCount

    public IgniteConfiguration setNetworkSendRetryCount(int sndRetryCnt)

Sets message send retries count.

If not provided, then default value `DFLT_SEND_RETRY_CNT` is used.

Parameters:
  `sndRetryCnt` - Message send retries count.
Returns:
  `this` for chaining.

#### getSnapshotThreadPoolSize

    public int getSnapshotThreadPoolSize()

Returns:
  Total number of threads to perform snapshot operation. By default, the `DFLT_SNAPSHOT_THREAD_POOL_SIZE` is used.

#### setSnapshotThreadPoolSize

    public IgniteConfiguration setSnapshotThreadPoolSize(int snapshotThreadPoolSize)

Parameters:
  `snapshotThreadPoolSize` - Total number of threads to perform snapshot operation. By default, the `DFLT_SNAPSHOT_THREAD_POOL_SIZE` is used.
Returns:
  `this` for chaining.

#### getRebalanceThreadPoolSize

    public int getRebalanceThreadPoolSize()

Gets Max count of threads can be used at rebalancing. Minimum is 1.

Returns:
  count.

#### setRebalanceThreadPoolSize

    public IgniteConfiguration setRebalanceThreadPoolSize(int rebalanceThreadPoolSize)

Sets Max count of threads can be used at rebalancing. Default is `1` which has minimal impact on the operation of the grid.

Parameters:
  `rebalanceThreadPoolSize` - Number of system threads that will be assigned for partition transfer during rebalancing.
Returns:
  `this` for chaining.

#### getRebalanceTimeout

    public long getRebalanceTimeout()

Rebalance timeout for supply and demand messages in milliseconds. The `rebalanceTimeout` parameter specifies how long a message will stay in a receiving queue, waiting for other ordered messages that are ordered ahead of it to arrive will be processed. If timeout expires, then all messages that have not arrived before this message will be skipped. If an expired supply (demand) message actually does arrive, it will be ignored.

Default value is defined by `DFLT_REBALANCE_TIMEOUT`, if `0` than the `getNetworkTimeout()` will be used instead.

Returns:
  Rebalance message timeout in milliseconds.

#### setRebalanceTimeout

    public IgniteConfiguration setRebalanceTimeout(long rebalanceTimeout)

Rebalance timeout for supply and demand messages in milliseconds. The `rebalanceTimeout` parameter specifies how long a message will stay in a receiving queue, waiting for other ordered messages that are ordered ahead of it to arrive will be processed. If timeout expires, then all messages that have not arrived before this message will be skipped. If an expired supply (demand) message actually does arrive, it will be ignored.

Default value is defined by `DFLT_REBALANCE_TIMEOUT`, if `0` than the `getNetworkTimeout()` will be used instead.

Parameters:
  `rebalanceTimeout` - Rebalance message timeout in milliseconds.
Returns:
  `this` for chaining.

#### getRebalanceBatchesPrefetchCount

    public long getRebalanceBatchesPrefetchCount()

The number of batches generated by supply node at rebalancing procedure start. To gain better rebalancing performance supplier node can provide more than one batch at rebalancing start and provide one new to each next demand request.

Default value is defined by `DFLT_REBALANCE_BATCHES_PREFETCH_COUNT`, minimum value is `1`.

Returns:
  The number of batches prefetch count.

#### setRebalanceBatchesPrefetchCount

    public IgniteConfiguration setRebalanceBatchesPrefetchCount(long rebalanceBatchesCnt)

The number of batches generated by supply node at rebalancing procedure start. To gain better rebalancing performance supplier node can provide more than one batch at rebalancing start and provide one new to each next demand request.

Default value is defined by `DFLT_REBALANCE_BATCHES_PREFETCH_COUNT`, minimum value is `1`.

Parameters:
  `rebalanceBatchesCnt` - The number of batches prefetch count.
Returns:
  `this` for chaining.

#### getRebalanceThrottle

    public long getRebalanceThrottle()

Time in milliseconds to wait between rebalance messages to avoid overloading of CPU or network. When rebalancing large data sets, the CPU or network can get over-consumed with rebalancing messages, which consecutively may slow down the application performance. This parameter helps tune the amount of time to wait between rebalance messages to make sure that rebalancing process does not have any negative performance impact. Note that application will continue to work properly while rebalancing is still in progress.

Value of `0` means that throttling is disabled. By default throttling is disabled - the default is defined by `DFLT_REBALANCE_THROTTLE` constant.

Returns:
  Time in milliseconds to wait between rebalance messages, `0` to disable throttling.

#### setRebalanceThrottle

    public IgniteConfiguration setRebalanceThrottle(long rebalanceThrottle)

Time in milliseconds to wait between rebalance messages to avoid overloading of CPU or network. When rebalancing large data sets, the CPU or network can get over-consumed with rebalancing messages, which consecutively may slow down the application performance. This parameter helps tune the amount of time to wait between rebalance messages to make sure that rebalancing process does not have any negative performance impact. Note that application will continue to work properly while rebalancing is still in progress.

Value of `0` means that throttling is disabled. By default throttling is disabled - the default is defined by `DFLT_REBALANCE_THROTTLE` constant.

Parameters:
  `rebalanceThrottle` - Time in milliseconds to wait between rebalance messages, `0` to disable throttling.
Returns:
  `this` for chaining.

#### getRebalanceBatchSize

    public int getRebalanceBatchSize()

The supply message size in bytes to be loaded within a single rebalance batch. The data balancing algorithm splits all the cache data entries on supply node into multiple batches prior to sending them to the demand node.

Default value is defined by `DFLT_REBALANCE_BATCH_SIZE`.

Returns:
  Rebalance message size in bytes.

#### setRebalanceBatchSize

    public IgniteConfiguration setRebalanceBatchSize(int rebalanceBatchSize)

The supply message size in bytes to be loaded within a single rebalance batch. The data balancing algorithm splits all the cache data entries on supply node into multiple batches prior to sending them to the demand node.

Default value is defined by `DFLT_REBALANCE_BATCH_SIZE`.

Parameters:
  `rebalanceBatchSize` - Rebalance message size in bytes.
Returns:
  `this` for chaining.

#### getLifecycleBeans

    public LifecycleBean[] getLifecycleBeans()

Returns a collection of life-cycle beans. These beans will be automatically notified of grid life-cycle events. Use life-cycle beans whenever you want to perform certain logic before and after grid startup and stopping routines.

Returns:
  Collection of life-cycle beans.
See Also:
  `LifecycleBean`, `LifecycleEventType`

#### setLifecycleBeans

    public IgniteConfiguration setLifecycleBeans(LifecycleBean... lifecycleBeans)

Sets a collection of lifecycle beans. These beans will be automatically notified of grid lifecycle events. Use lifecycle beans whenever you want to perform certain logic before and after grid startup and stopping routines.

Parameters:
  `lifecycleBeans` - Collection of lifecycle beans.
Returns:
  `this` for chaining.
See Also:
  `LifecycleEventType`

#### setSslContextFactory

    public IgniteConfiguration setSslContextFactory(javax.cache.configuration.Factory<SSLContext> sslCtxFactory)

Sets SSL context factory that will be used for creating a secure socket layer.

Parameters:
  `sslCtxFactory` - Ssl context factory.
Returns:
  `this` for chaining.
See Also:
  `SslContextFactory`

#### getSslContextFactory

    public javax.cache.configuration.Factory<SSLContext> getSslContextFactory()

Returns SSL context factory that will be used for creating a secure socket layer.

Returns:
  SSL connection factory.
See Also:
  `SslContextFactory`

#### getEventStorageSpi

    public EventStorageSpi getEventStorageSpi()

Should return fully configured event SPI implementation. If not provided, `NoopEventStorageSpi` will be used.

Returns:
  Grid event SPI implementation or `null` to use default implementation.

#### setEventStorageSpi

    public IgniteConfiguration setEventStorageSpi(EventStorageSpi evtSpi)

Sets fully configured instance of `EventStorageSpi`.

Parameters:
  `evtSpi` - Fully configured instance of `EventStorageSpi`.
Returns:
  `this` for chaining.
See Also:
  `getEventStorageSpi()`

#### getDiscoverySpi

    public DiscoverySpi getDiscoverySpi()

Should return fully configured discovery SPI implementation. If not provided, `TcpDiscoverySpi` will be used by default.

Returns:
  Grid discovery SPI implementation or `null` to use default implementation.

#### setDiscoverySpi

    public IgniteConfiguration setDiscoverySpi(DiscoverySpi discoSpi)

Sets fully configured instance of `DiscoverySpi`.

Parameters:
  `discoSpi` - Fully configured instance of `DiscoverySpi`.
Returns:
  `this` for chaining.
See Also:
  `getDiscoverySpi()`

#### getSegmentationPolicy

    public SegmentationPolicy getSegmentationPolicy()

Returns segmentation policy. Default is `DFLT_SEG_PLC`.

Returns:
  Segmentation policy.

#### setSegmentationPolicy

    public IgniteConfiguration setSegmentationPolicy(SegmentationPolicy segPlc)

Sets segmentation policy.

Parameters:
  `segPlc` - Segmentation policy.
Returns:
  `this` for chaining.

#### isWaitForSegmentOnStart

    public boolean isWaitForSegmentOnStart()

Gets wait for segment on startup flag. Default is `DFLT_WAIT_FOR_SEG_ON_START`.

Returns `true` if node should wait for correct segment on start. If node detects that segment is incorrect on startup and this method returns `true`, node waits until segment becomes correct. If segment is incorrect on startup and this method returns `false`, exception is thrown.

Returns:
  `True` to wait for segment on startup, `false` otherwise.

#### setWaitForSegmentOnStart

    public IgniteConfiguration setWaitForSegmentOnStart(boolean waitForSegOnStart)

Sets wait for segment on start flag.

Parameters:
  `waitForSegOnStart` - `True` to wait for segment on start.
Returns:
  `this` for chaining.

#### isAllSegmentationResolversPassRequired

    public boolean isAllSegmentationResolversPassRequired()

Gets all segmentation resolvers pass required flag.

Returns `true` if all segmentation resolvers should succeed for node to be in correct segment. Returns `false` if at least one segmentation resolver should succeed for node to be in correct segment.

Default is `DFLT_ALL_SEG_RESOLVERS_PASS_REQ`.

Returns:
  `True` if all segmentation resolvers should succeed, `false` if only one is enough.

#### setAllSegmentationResolversPassRequired

    public IgniteConfiguration setAllSegmentationResolversPassRequired(boolean allResolversPassReq)

Sets all segmentation resolvers pass required flag.

Parameters:
  `allResolversPassReq` - `True` if all segmentation resolvers should succeed for node to be in the correct segment.
Returns:
  `this` for chaining.

#### getSegmentationResolveAttempts

    public int getSegmentationResolveAttempts()

Gets segmentation resolve attempts. Each configured resolver will have this attempts number to pass segmentation check prior to check failure. Default is `DFLT_SEG_RESOLVE_ATTEMPTS`.

Returns:
  Segmentation resolve attempts.

#### setSegmentationResolveAttempts

    public IgniteConfiguration setSegmentationResolveAttempts(int segResolveAttempts)

Sets segmentation resolve attempts count.

Parameters:
  `segResolveAttempts` - Segmentation resolve attempts.
Returns:
  `this` for chaining.

#### getSegmentationResolvers

    public SegmentationResolver[] getSegmentationResolvers()

Returns a collection of segmentation resolvers.

If array is `null` or empty, periodical and on-start network segment checks do not happen.

Returns:
  Segmentation resolvers.

#### setSegmentationResolvers

    public IgniteConfiguration setSegmentationResolvers(SegmentationResolver... segResolvers)

Sets segmentation resolvers.

Parameters:
  `segResolvers` - Segmentation resolvers.
Returns:
  `this` for chaining.

#### getSegmentCheckFrequency

    public long getSegmentCheckFrequency()

Returns frequency of network segment check by discovery manager.

if 0, periodic segment check is disabled and segment is checked only on topology changes (if segmentation resolvers are configured).

Default is `DFLT_SEG_CHK_FREQ`.

Returns:
  Segment check frequency.

#### setSegmentCheckFrequency

    public IgniteConfiguration setSegmentCheckFrequency(long segChkFreq)

Sets network segment check frequency.

Parameters:
  `segChkFreq` - Segment check frequency.
Returns:
  `this` for chaining.

#### getCommunicationSpi

    public CommunicationSpi getCommunicationSpi()

Should return fully configured SPI communication implementation. If not provided, `TcpCommunicationSpi` will be used by default.

Returns:
  Grid communication SPI implementation or `null` to use default implementation.

#### setCommunicationSpi

    public IgniteConfiguration setCommunicationSpi(CommunicationSpi commSpi)

Sets fully configured instance of `CommunicationSpi`.

Parameters:
  `commSpi` - Fully configured instance of `CommunicationSpi`.
Returns:
  `this` for chaining.
See Also:
  `getCommunicationSpi()`

#### getCollisionSpi

    public CollisionSpi getCollisionSpi()

Should return fully configured collision SPI implementation. If not provided, `NoopCollisionSpi` is used and jobs get activated immediately on arrive to mapped node. This approach suits well for large amount of small jobs (which is a wide-spread use case). User still can control the number of concurrent jobs by setting maximum thread pool size defined by `getPublicThreadPoolSize()` configuration property.

Returns:
  Grid collision SPI implementation or `null` to use default implementation.

#### setCollisionSpi

    public IgniteConfiguration setCollisionSpi(CollisionSpi colSpi)

Sets fully configured instance of `CollisionSpi`.

Parameters:
  `colSpi` - Fully configured instance of `CollisionSpi` or `null` if no SPI provided.
Returns:
  `this` for chaining.
See Also:
  `getCollisionSpi()`

#### getDeploymentSpi

    public DeploymentSpi getDeploymentSpi()

Should return fully configured deployment SPI implementation. If not provided, `LocalDeploymentSpi` will be used.

Returns:
  Grid deployment SPI implementation or `null` to use default implementation.

#### setDeploymentSpi

    public IgniteConfiguration setDeploymentSpi(DeploymentSpi deploySpi)

Sets fully configured instance of `DeploymentSpi`.

Parameters:
  `deploySpi` - Fully configured instance of `DeploymentSpi`.
Returns:
  `this` for chaining.
See Also:
  `getDeploymentSpi()`

#### getCheckpointSpi

    public CheckpointSpi[] getCheckpointSpi()

Should return fully configured checkpoint SPI implementation. If not provided, `NoopCheckpointSpi` will be used.

Returns:
  Grid checkpoint SPI implementation or `null` to use default implementation.

#### setCheckpointSpi

    public IgniteConfiguration setCheckpointSpi(CheckpointSpi... cpSpi)

Sets fully configured instance of `CheckpointSpi`.

Parameters:
  `cpSpi` - Fully configured instance of `CheckpointSpi`.
Returns:
  `this` for chaining.
See Also:
  `getCheckpointSpi()`

#### getFailoverSpi

    public FailoverSpi[] getFailoverSpi()

Should return fully configured failover SPI implementation. If not provided, `AlwaysFailoverSpi` will be used.

Returns:
  Grid failover SPI implementation or `null` to use default implementation.

#### setFailoverSpi

    public IgniteConfiguration setFailoverSpi(FailoverSpi... failSpi)

Sets fully configured instance of `FailoverSpi`.

Parameters:
  `failSpi` - Fully configured instance of `FailoverSpi` or `null` if no SPI provided.
Returns:
  `this` for chaining.
See Also:
  `getFailoverSpi()`

#### getClientFailureDetectionTimeout

    public Long getClientFailureDetectionTimeout()

Returns failure detection timeout for client nodes used by `TcpDiscoverySpi` and `TcpCommunicationSpi`.

Default is `DFLT_CLIENT_FAILURE_DETECTION_TIMEOUT`.

Returns:
  Failure detection timeout for client nodes in milliseconds.
See Also:
  `setClientFailureDetectionTimeout(long)`

#### setClientFailureDetectionTimeout

    public IgniteConfiguration setClientFailureDetectionTimeout(long clientFailureDetectionTimeout)

Sets failure detection timeout to use in `TcpDiscoverySpi` and `TcpCommunicationSpi`.

Failure detection timeout is used to determine how long the communication or discovery SPIs should wait before considering a remote connection failed.

Parameters:
  `clientFailureDetectionTimeout` - Failure detection timeout in milliseconds.
Returns:
  `this` for chaining.

#### getFailureDetectionTimeout

    public Long getFailureDetectionTimeout()

Returns failure detection timeout used by `TcpDiscoverySpi` and `TcpCommunicationSpi`.

Default is `DFLT_FAILURE_DETECTION_TIMEOUT`.

Returns:
  Failure detection timeout in milliseconds.
See Also:
  `setFailureDetectionTimeout(long)`

#### setFailureDetectionTimeout

    public IgniteConfiguration setFailureDetectionTimeout(long failureDetectionTimeout)

Sets failure detection timeout to use in `TcpDiscoverySpi` and `TcpCommunicationSpi`.

Failure detection timeout is used to determine how long the communication or discovery SPIs should wait before considering a remote connection failed.

Parameters:
  `failureDetectionTimeout` - Failure detection timeout in milliseconds.
Returns:
  `this` for chaining.

#### getSystemWorkerBlockedTimeout

    public Long getSystemWorkerBlockedTimeout()

Returns maximum inactivity period for system worker. When this value is exceeded, worker is considered blocked with consequent critical failure handler invocation.

Returns:
  Maximum inactivity period for system worker in milliseconds.
See Also:
  `setSystemWorkerBlockedTimeout(long)`

#### setSystemWorkerBlockedTimeout

    public IgniteConfiguration setSystemWorkerBlockedTimeout(long sysWorkerBlockedTimeout)

Sets maximum inactivity period for system worker. When this value is exceeded, worker is considered blocked with consequent critical failure handler invocation.

Parameters:
  `sysWorkerBlockedTimeout` - Maximum inactivity period for system worker in milliseconds.
Returns:
  `this` for chaining.
See Also:
  `setFailureHandler(FailureHandler)`

#### getLoadBalancingSpi

    public LoadBalancingSpi[] getLoadBalancingSpi()

Should return fully configured load balancing SPI implementation. If not provided, `RoundRobinLoadBalancingSpi` will be used.

Returns:
  Grid load balancing SPI implementation or `null` to use default implementation.

#### getDiscoveryStartupDelay

    @Deprecated
    public long getDiscoveryStartupDelay()

Deprecated. Not used any more.
This value is used to expire messages from waiting list whenever node discovery discrepancies happen.

During startup, it is possible for some SPIs to have a small time window when `Node A` has discovered `Node B`, but `Node B` has not discovered `Node A` yet. Such time window is usually very small, a matter of milliseconds, but certain JMS providers, for example, may be very slow and hence have larger discovery delay window.

The default value of this property is `60,000` specified by `DFLT_DISCOVERY_STARTUP_DELAY`. This should be good enough for vast majority of configurations. However, if you do anticipate an even larger delay, you should increase this value.

Returns:
  Time in milliseconds for when nodes can be out-of-sync.

#### setDiscoveryStartupDelay

    @Deprecated
    public IgniteConfiguration setDiscoveryStartupDelay(long discoStartupDelay)

Deprecated. Not used any more.
Sets time in milliseconds after which a certain metric value is considered expired. If not set explicitly, then default value is `600,000` milliseconds (10 minutes).

Parameters:
  `discoStartupDelay` - Time in milliseconds for when nodes can be out-of-sync during startup.
Returns:
  `this` for chaining.

#### setLoadBalancingSpi

    public IgniteConfiguration setLoadBalancingSpi(LoadBalancingSpi... loadBalancingSpi)

Sets fully configured instance of `LoadBalancingSpi`.

Parameters:
  `loadBalancingSpi` - Fully configured instance of `LoadBalancingSpi` or `null` if no SPI provided.
Returns:
  `this` for chaining.
See Also:
  `getLoadBalancingSpi()`

#### setIndexingSpi

    public IgniteConfiguration setIndexingSpi(IndexingSpi indexingSpi)

Sets fully configured instances of `IndexingSpi`.

Parameters:
  `indexingSpi` - Fully configured instance of `IndexingSpi`.
Returns:
  `this` for chaining.
See Also:
  `getIndexingSpi()`

#### getIndexingSpi

    public IndexingSpi getIndexingSpi()

Should return fully configured indexing SPI implementations.

Returns:
  Indexing SPI implementation.

#### setEncryptionSpi

    public IgniteConfiguration setEncryptionSpi(EncryptionSpi encryptionSpi)

Sets fully configured instances of `EncryptionSpi`.

Parameters:
  `encryptionSpi` - Fully configured instance of `EncryptionSpi`.
Returns:
  `this` for chaining.
See Also:
  `getEncryptionSpi()`

#### getEncryptionSpi

    public EncryptionSpi getEncryptionSpi()

Gets fully configured encryption SPI implementations.

Returns:
  Encryption SPI implementation.

#### setMetricExporterSpi

    public IgniteConfiguration setMetricExporterSpi(MetricExporterSpi... metricExporterSpi)

Sets fully configured instances of `MetricExporterSpi`.

Parameters:
  `metricExporterSpi` - Fully configured instances of `MetricExporterSpi`.
Returns:
  `this` for chaining.
See Also:
  `getMetricExporterSpi()`

#### setSystemViewExporterSpi

    public IgniteConfiguration setSystemViewExporterSpi(SystemViewExporterSpi... sysViewExporterSpi)

Sets fully configured instances of `SystemViewExporterSpi`.

Parameters:
  `sysViewExporterSpi` - Fully configured instances of `SystemViewExporterSpi`.
Returns:
  `this` for chaining.
See Also:
  `getSystemViewExporterSpi()`

#### getMetricExporterSpi

    public MetricExporterSpi[] getMetricExporterSpi()

Gets fully configured metric SPI implementations.

Returns:
  Metric exporter SPI implementations.

#### getSystemViewExporterSpi

    public SystemViewExporterSpi[] getSystemViewExporterSpi()

Gets fully configured system view SPI implementations.

Returns:
  System view exporter SPI implementations.

#### setTracingSpi

    public IgniteConfiguration setTracingSpi(TracingSpi tracingSpi)

Set fully configured instance of `TracingSpi`.

Parameters:
  `tracingSpi` - Fully configured instance of `TracingSpi`.
Returns:
  `this` for chaining.

#### getTracingSpi

    public TracingSpi getTracingSpi()

Gets fully configured tracing SPI implementation.

Returns:
  Tracing SPI implementation.

#### getAddressResolver

    public AddressResolver getAddressResolver()

Gets address resolver for addresses mapping determination.

Returns:
  Address resolver.

#### setAddressResolver

    public IgniteConfiguration setAddressResolver(AddressResolver addrRslvr)

Sets address resolver for addresses mapping determination.

Parameters:
  `addrRslvr` - Address resolver.
Returns:
  `this` for chaining.

#### setDeploymentMode

    public IgniteConfiguration setDeploymentMode(DeploymentMode deployMode)

Sets task classes and resources sharing mode.

Parameters:
  `deployMode` - Task classes and resources sharing mode.
Returns:
  `this` for chaining.

#### getDeploymentMode

    public DeploymentMode getDeploymentMode()

Gets deployment mode for deploying tasks and other classes on this node. Refer to `DeploymentMode` documentation for more information.

Returns:
  Deployment mode.

#### setPeerClassLoadingMissedResourcesCacheSize

    public IgniteConfiguration setPeerClassLoadingMissedResourcesCacheSize(int p2pMissedCacheSize)

Sets size of missed resources cache. Set 0 to avoid missed resources caching.

Parameters:
  `p2pMissedCacheSize` - Size of missed resources cache.
Returns:
  `this` for chaining.

#### getPeerClassLoadingMissedResourcesCacheSize

    public int getPeerClassLoadingMissedResourcesCacheSize()

Returns missed resources cache size. If size greater than `0`, missed resources will be cached and next resource request ignored. If size is `0`, then request for the resource will be sent to the remote node every time this resource is requested.

Returns:
  Missed resources cache size.

#### getCacheConfiguration

    public CacheConfiguration[] getCacheConfiguration()

Gets configuration (descriptors) for all caches.

Returns:
  Array of fully initialized cache descriptors.

#### setCacheConfiguration

    public IgniteConfiguration setCacheConfiguration(CacheConfiguration... cacheCfg)

Sets cache configurations.

Parameters:
  `cacheCfg` - Cache configurations.
Returns:
  `this` for chaining.

#### isClientMode

    public Boolean isClientMode()

Gets client mode flag. Client node cannot hold data in the caches. It's recommended to use `DiscoverySpi` in client mode if this property is `true`.

Returns:
  Client mode flag.
See Also:
  `TcpDiscoverySpi.setForceServerMode(boolean)`

#### setClientMode

    public IgniteConfiguration setClientMode(boolean clientMode)

Sets client mode flag.

Parameters:
  `clientMode` - Client mode flag.
Returns:
  `this` for chaining.

#### getCacheKeyConfiguration

    public CacheKeyConfiguration[] getCacheKeyConfiguration()

Gets cache key configuration.

Returns:
  Cache key configuration.

#### setCacheKeyConfiguration

    public IgniteConfiguration setCacheKeyConfiguration(CacheKeyConfiguration... cacheKeyCfg)

Sets cache key configuration. Cache key configuration defines

Parameters:
  `cacheKeyCfg` - Cache key configuration.
Returns:
  `this` for chaining.

#### getBinaryConfiguration

    public BinaryConfiguration getBinaryConfiguration()

Gets configuration for Ignite Binary objects.

Returns:
  Binary configuration object.

#### setBinaryConfiguration

    public IgniteConfiguration setBinaryConfiguration(BinaryConfiguration binaryCfg)

Sets configuration for Ignite Binary objects.

Parameters:
  `binaryCfg` - Binary configuration object.
Returns:
  `this` for chaining.

#### getDataStorageConfiguration

    public DataStorageConfiguration getDataStorageConfiguration()

Gets page memory configuration.

Returns:
  Memory configuration.

#### setDataStorageConfiguration

    public IgniteConfiguration setDataStorageConfiguration(DataStorageConfiguration dsCfg)

Sets durable memory configuration.

Parameters:
  `dsCfg` - Data storage configuration.
Returns:
  `this` for chaining.

#### getMemoryConfiguration

    @Deprecated
    public MemoryConfiguration getMemoryConfiguration()

Deprecated. Use `DataStorageConfiguration` instead.
Gets page memory configuration.

Returns:
  Memory configuration.

#### setMemoryConfiguration

    @Deprecated
    public IgniteConfiguration setMemoryConfiguration(MemoryConfiguration memCfg)

Deprecated. Use `DataStorageConfiguration` instead.
Sets page memory configuration.

Parameters:
  `memCfg` - Memory configuration.
Returns:
  `this` for chaining.

#### getPersistentStoreConfiguration

    @Deprecated
    public PersistentStoreConfiguration getPersistentStoreConfiguration()

Deprecated. Part of old API. Use `DataStorageConfiguration` for configuring persistence instead.
Gets persistence configuration used by Apache Ignite Persistent Store.

Returns:
  Persistence configuration.

#### isPersistentStoreEnabled

    @Deprecated
    public boolean isPersistentStoreEnabled()

Deprecated. Part of legacy configuration API. Doesn't work if new configuration API is used.

Returns:
  Flag `true` if persistence is enabled, `false` if disabled.

#### setPersistentStoreConfiguration

    @Deprecated
    public IgniteConfiguration setPersistentStoreConfiguration(PersistentStoreConfiguration pstCfg)

Deprecated. Part of old API. Use `DataStorageConfiguration` for configuring persistence instead.
Sets persistence configuration activating Apache Ignite Persistent Store.

Parameters:
  `pstCfg` - Persistence configuration.
Returns:
  `this` for chaining.

#### isActiveOnStart

    @Deprecated
    public boolean isActiveOnStart()

Deprecated. Use `getClusterStateOnStart()` instead.
Gets flag indicating whether the cluster will be active on start. If cluster is not active on start, there will be no cache partition map exchanges performed until the cluster is activated. This should significantly speed up large topology startup time.

Default value is `DFLT_ACTIVE_ON_START`.

This flag is ignored when Ignite Persistence is enabled see `DataStorageConfiguration`. Cluster is always inactive on start when Ignite Persistence is enabled.

Returns:
  Active on start flag value.

#### setActiveOnStart

    @Deprecated
    public IgniteConfiguration setActiveOnStart(boolean activeOnStart)

Deprecated. Use `setClusterStateOnStart(ClusterState)` instead.
Sets flag indicating whether the cluster will be active on start. This value should be the same on all nodes in the cluster.

This flag is ignored when `DataStorageConfiguration` has at least one configured persistent region: cluster is always inactive on start when Ignite Persistence is enabled.

Parameters:
  `activeOnStart` - Active on start flag value.
Returns:
  `this` instance.
See Also:
  `isActiveOnStart()`

#### isAutoActivationEnabled

    @Deprecated
    public boolean isAutoActivationEnabled()

Deprecated. Use `getClusterStateOnStart()` instead.
Get the flag indicating that cluster is enabled to activate automatically. If it is set to `true` and BaselineTopology is set as well than cluster activates automatically when all nodes from the BaselineTopology join the cluster.

Default value is `DFLT_AUTO_ACTIVATION`.

Returns:
  Auto activation enabled flag value.

#### setAutoActivationEnabled

    @Deprecated
    public IgniteConfiguration setAutoActivationEnabled(boolean autoActivation)

Deprecated. Use `setClusterStateOnStart(ClusterState)` instead.
Sets flag indicating whether the cluster is enabled to activate automatically. This value should be the same on all nodes in the cluster.

Parameters:
  `autoActivation` - Auto activation enabled flag value.
Returns:
  `this` instance.
See Also:
  `isAutoActivationEnabled()`

#### getClusterStateOnStart

    @Nullable
    public @Nullable ClusterState getClusterStateOnStart()

Gets state of cluster on start.
For in-memory cluster this state will be applied to the first started node. If cluster state on start is `ClusterState.INACTIVE`, further hode joins will be handled by cluster faster and manual cluster activation should be performed in order to start working the cluster and caches.
For persistent cluster If state is different from `ClusterState.INACTIVE` and BaselineTopology is set (cluster was activated before, for example before cluster restart) as well then cluster moves to given cluster state when all nodes from the BaselineTopology join the cluster, i.e. manual activation isn't required in that case.

Default value is `DFLT_STATE_ON_START`.

Returns:
  State of cluster on start or `null`, if property wasn't set. `Null` means that default value will be used.

#### setClusterStateOnStart

    public IgniteConfiguration setClusterStateOnStart(ClusterState state)

Sets state of cluster on start.

Parameters:
  `state` - New cluster state on start.
Returns:
  `this` for chaining.
See Also:
  `getClusterStateOnStart()`

#### isCacheSanityCheckEnabled

    public boolean isCacheSanityCheckEnabled()

Gets flag indicating whether cache sanity check is enabled. If enabled, then Ignite will perform the following checks and throw an exception if check fails:

- Cache entry is not externally locked with `lock(...)` or `lockAsync(...)` methods when entry is enlisted to transaction.
- Each entry in affinity group-lock transaction has the same affinity key as was specified on affinity transaction start.
- Each entry in partition group-lock transaction belongs to the same partition as was specified on partition transaction start.

These checks are not required for cache operation, but help to find subtle bugs. Disabling of this checks usually yields a noticeable performance gain.

If not provided, default value is `DFLT_CACHE_SANITY_CHECK_ENABLED`.

Returns:
  `True` if group lock sanity check is enabled.

#### setCacheSanityCheckEnabled

    public IgniteConfiguration setCacheSanityCheckEnabled(boolean cacheSanityCheckEnabled)

Sets cache sanity check flag.

Parameters:
  `cacheSanityCheckEnabled` - `True` if cache sanity check is enabled.
Returns:
  `this` for chaining.
See Also:
  `isCacheSanityCheckEnabled()`

#### getIncludeEventTypes

    public int[] getIncludeEventTypes()

Gets array of event types, which will be recorded.

Note that by default all events in Ignite are disabled. Ignite can and often does generate thousands events per seconds under the load and therefore it creates a significant additional load on the system. If these events are not needed by the application this load is unnecessary and leads to significant performance degradation. So it is highly recommended to enable only those events that your application logic requires. Note that certain events are required for Ignite's internal operations and such events will still be generated but not stored by event storage SPI if they are disabled in Ignite configuration.

Returns:
  Include event types.

#### setIncludeEventTypes

    public IgniteConfiguration setIncludeEventTypes(int... inclEvtTypes)

Sets array of event types, which will be recorded by `GridEventStorageManager.record(Event)`. Note, that either the include event types or the exclude event types can be established.

Parameters:
  `inclEvtTypes` - Include event types.
Returns:
  `this` for chaining.

#### setLocalHost

    public IgniteConfiguration setLocalHost(String locHost)

Sets system-wide local address or host for all Ignite components to bind to. If provided it will override all default local bind settings within Ignite or any of its SPIs.

Parameters:
  `locHost` - Local IP address or host to bind to.
Returns:
  `this` for chaining.

#### getLocalHost

    public String getLocalHost()

Gets system-wide local address or host for all Ignite components to bind to. If provided it will override all default local bind settings within Ignite or any of its SPIs.

If `null` then Ignite tries to use local wildcard address. That means that all services will be available on all network interfaces of the host machine.

It is strongly recommended to set this parameter for all production environments.

If not provided, default is `null`.

Returns:
  Local address or host to bind to.

#### getTimeServerPortBase

    public int getTimeServerPortBase()

Gets base UPD port number for grid time server. Time server will be started on one of free ports in range `[timeServerPortBase, timeServerPortBase + timeServerPortRange - 1]`.

Time server provides clock synchronization between nodes.

Returns:
  Time

#### setTimeServerPortBase

    public IgniteConfiguration setTimeServerPortBase(int timeSrvPortBase)

Sets time server port base.

Parameters:
  `timeSrvPortBase` - Time server port base.
Returns:
  `this` for chaining.

#### getTimeServerPortRange

    public int getTimeServerPortRange()

Defines port range to try for time server start. If port range value is `0`, then implementation will try bind only to the port provided by `setTimeServerPortBase(int)` method and fail if binding to this port did not succeed.

Returns:
  Number of ports to try before server initialization fails.

#### setTimeServerPortRange

    public IgniteConfiguration setTimeServerPortRange(int timeSrvPortRange)

Sets time server port range.

Parameters:
  `timeSrvPortRange` - Time server port range.
Returns:
  `this` for chaining.

#### getIncludeProperties

    public String[] getIncludeProperties()

Gets array of system or environment properties to include into node attributes. If this array is `null`, which is default, then all system and environment properties will be included. If this array is empty, then none will be included. Otherwise, for every name provided, first a system property will be looked up, and then, if it is not found, environment property will be looked up.

Returns:
  Array of system or environment properties to include into node attributes.

#### setIncludeProperties

    public IgniteConfiguration setIncludeProperties(String... includeProps)

Sets array of system or environment property names to include into node attributes. See `getIncludeProperties()` for more info.

Parameters:
  `includeProps` - Array of system or environment property names to include into node attributes.
Returns:
  `this` for chaining.

#### getMetricsLogFrequency

    public long getMetricsLogFrequency()

Gets frequency of metrics log print out.

If `0`, metrics print out is disabled.

If not provided, then default value `DFLT_METRICS_LOG_FREQ` is used.

Returns:
  Frequency of metrics log print out.

#### setMetricsLogFrequency

    public IgniteConfiguration setMetricsLogFrequency(long metricsLogFreq)

Sets frequency of metrics log print out.

If `0`, metrics print out is disabled.

If not provided, then default value `DFLT_METRICS_LOG_FREQ` is used.

Parameters:
  `metricsLogFreq` - Frequency of metrics log print out.
Returns:
  `this` for chaining.

#### getConnectorConfiguration

    public ConnectorConfiguration getConnectorConfiguration()

Returns:
  Connector configuration.

#### setConnectorConfiguration

    public IgniteConfiguration setConnectorConfiguration(ConnectorConfiguration connectorCfg)

Parameters:
  `connectorCfg` - Connector configuration.
Returns:
  `this` for chaining.

#### getOdbcConfiguration

    @Deprecated
    public OdbcConfiguration getOdbcConfiguration()

Deprecated. Use `getClientConnectorConfiguration()` ()} instead.
Gets configuration for ODBC.

Returns:
  ODBC configuration.

#### setOdbcConfiguration

    @Deprecated
    public IgniteConfiguration setOdbcConfiguration(OdbcConfiguration odbcCfg)

Deprecated. Use `setClientConnectorConfiguration(ClientConnectorConfiguration)` instead.
Sets configuration for ODBC.

Parameters:
  `odbcCfg` - ODBC configuration.
Returns:
  `this` for chaining.

#### getServiceConfiguration

    public ServiceConfiguration[] getServiceConfiguration()

Gets configurations for services to be deployed on the grid.

Returns:
  Configurations for services to be deployed on the grid.

#### setServiceConfiguration

    public IgniteConfiguration setServiceConfiguration(ServiceConfiguration... svcCfgs)

Sets configurations for services to be deployed on the grid.

Parameters:
  `svcCfgs` - Configurations for services to be deployed on the grid.
Returns:
  `this` for chaining.

#### getLocalEventListeners

    public Map<IgnitePredicate<? extends Event>,int[]> getLocalEventListeners()

Gets map of pre-configured local event listeners. Each listener is mapped to array of event types.

Returns:
  Pre-configured event listeners map.
See Also:
  `EventType`

#### setLocalEventListeners

    public IgniteConfiguration setLocalEventListeners(Map<IgnitePredicate<? extends Event>,int[]> lsnrs)

Sets map of pre-configured local event listeners. Each listener is mapped to array of event types.

Parameters:
  `lsnrs` - Pre-configured event listeners map.
Returns:
  `this` for chaining.

#### getSnapshotPath

    public String getSnapshotPath()

Returns:
  By default, the relative `DFLT_SNAPSHOT_DIRECTORY` is used. The value can be configured as relative path starting from the Ignites `getWorkDirectory()` or the value can be represented as an absolute snapshot working path.

#### setSnapshotPath

    public IgniteConfiguration setSnapshotPath(String snapshotPath)

Parameters:
  `snapshotPath` - By default, the relative `DFLT_SNAPSHOT_DIRECTORY` is used. The value can be configured as relative path starting from the Ignites `getWorkDirectory()` or the value can be represented as an absolute snapshot working path instead.
Returns:
  `this` for chaining.

#### getWarmupClosure

    public IgniteInClosure<IgniteConfiguration> getWarmupClosure()

Gets grid warmup closure. This closure will be executed before actual grid instance start. Configuration of a starting instance will be passed to the closure so it can decide what operations to warm up.

Returns:
  Warmup closure to execute.

#### setWarmupClosure

    public IgniteConfiguration setWarmupClosure(IgniteInClosure<IgniteConfiguration> warmupClos)

Sets warmup closure to execute before grid startup.

Parameters:
  `warmupClos` - Warmup closure to execute.
Returns:
  `this` for chaining.
See Also:
  `getWarmupClosure()`

#### getTransactionConfiguration

    public TransactionConfiguration getTransactionConfiguration()

Gets transactions configuration.

Returns:
  Transactions configuration.

#### setTransactionConfiguration

    public IgniteConfiguration setTransactionConfiguration(TransactionConfiguration txCfg)

Sets transactions configuration.

Parameters:
  `txCfg` - Transactions configuration.
Returns:
  `this` for chaining.

#### getPluginConfigurations

    @Deprecated
    public PluginConfiguration[] getPluginConfigurations()

Deprecated.
Gets plugin configurations.

Returns:
  Plugin configurations.
See Also:
  `PluginProvider`

#### setPluginConfigurations

    @Deprecated
    public IgniteConfiguration setPluginConfigurations(PluginConfiguration... pluginCfgs)

Deprecated. Since `PluginProvider`s can be set explicitly via `setPluginProviders(PluginProvider[])` it's preferable to store `PluginConfiguration` as a part of `PluginProvider`.
Sets plugin configurations.

Parameters:
  `pluginCfgs` - Plugin configurations.
Returns:
  `this` for chaining.
See Also:
  `PluginProvider`

#### getAtomicConfiguration

    public AtomicConfiguration getAtomicConfiguration()

Returns:
  Atomic data structures configuration.

#### setAtomicConfiguration

    public IgniteConfiguration setAtomicConfiguration(AtomicConfiguration atomicCfg)

Parameters:
  `atomicCfg` - Atomic data structures configuration.
Returns:
  `this` for chaining.

#### setClassLoader

    public IgniteConfiguration setClassLoader(ClassLoader classLdr)

Sets loader which will be used for instantiating execution context (`EntryProcessors`, `CacheEntryListeners`, `CacheLoaders` and `ExpiryPolicys`).

Parameters:
  `classLdr` - Class loader.
Returns:
  `this` for chaining.

#### getClassLoader

    public ClassLoader getClassLoader()

Returns:
  User's class loader.

#### getCacheStoreSessionListenerFactories

    public javax.cache.configuration.Factory<CacheStoreSessionListener>[] getCacheStoreSessionListenerFactories()

Gets cache store session listener factories.

Returns:
  Cache store session listener factories.
See Also:
  `CacheStoreSessionListener`

#### setCacheStoreSessionListenerFactories

    public IgniteConfiguration setCacheStoreSessionListenerFactories(javax.cache.configuration.Factory<CacheStoreSessionListener>... storeSesLsnrs)

Cache store session listener factories.

These are global store session listeners, so they are applied to all caches. If you need to override listeners for a particular cache, use `CacheConfiguration.setCacheStoreSessionListenerFactories(Factory[])` configuration property.

Parameters:
  `storeSesLsnrs` - Cache store session listener factories.
Returns:
  `this` for chaining.
See Also:
  `CacheStoreSessionListener`

#### getPlatformConfiguration

    public PlatformConfiguration getPlatformConfiguration()

Gets platform configuration.

Returns:
  Platform configuration.

#### setPlatformConfiguration

    public IgniteConfiguration setPlatformConfiguration(PlatformConfiguration platformCfg)

Sets platform configuration.

Parameters:
  `platformCfg` - Platform configuration.
Returns:
  `this` for chaining.

#### isLateAffinityAssignment

    @Deprecated
    public boolean isLateAffinityAssignment()

Deprecated. Starting from Ignite 2.1 late affinity assignment is always enabled.
Whether or not late affinity assignment mode should be used.

On each topology change, for each started cache partition-to-node mapping is calculated using `AffinityFunction` configured for cache. When late affinity assignment mode is disabled then new affinity mapping is applied immediately.

With late affinity assignment mode if primary node was changed for some partition, but data for this partition is not rebalanced yet on this node, then current primary is not changed and new primary is temporary assigned as backup. This nodes becomes primary only when rebalancing for all assigned primary partitions is finished. This mode can show better performance for cache operations, since when cache primary node executes some operation and data is not rebalanced yet, then it sends additional message to force rebalancing from other nodes.

Note, that `Affinity` interface provides assignment information taking into account late assignment, so while rebalancing for new primary nodes is not finished it can return assignment which differs from assignment calculated by `AffinityFunction.assignPartitions(org.apache.ignite.cache.affinity.AffinityFunctionContext)`.

This property should have the same value for all nodes in cluster.

Returns:
  Late affinity assignment flag.
See Also:
  `AffinityFunction`

#### setLateAffinityAssignment

    @Deprecated
    public IgniteConfiguration setLateAffinityAssignment(boolean lateAffAssignment)

Deprecated. Starting from Ignite 2.1 late affinity assignment is always enabled.
Sets late affinity assignment flag.

Parameters:
  `lateAffAssignment` - Late affinity assignment flag.
Returns:
  `this` for chaining.

#### getExecutorConfiguration

    public ExecutorConfiguration[] getExecutorConfiguration()

Gets custom executors for user compute tasks.

See `setExecutorConfiguration(ExecutorConfiguration...)` for more information.

Returns:
  Executor configurations.

#### setExecutorConfiguration

    public IgniteConfiguration setExecutorConfiguration(ExecutorConfiguration... execCfgs)

Sets custom executors for user compute tasks.

See `IgniteCompute.withExecutor(String)` for more information.

Parameters:
  `execCfgs` - Executor configurations.
Returns:
  `this` for chaining.

#### getLongQueryWarningTimeout

    @Deprecated
    public long getLongQueryWarningTimeout()

Deprecated. Use `SqlConfiguration.getLongQueryWarningTimeout()` instead.
Gets timeout in milliseconds after which long query warning will be printed.

Returns:
  Timeout in milliseconds.

#### setLongQueryWarningTimeout

    @Deprecated
    public IgniteConfiguration setLongQueryWarningTimeout(long longQryWarnTimeout)

Deprecated. Use `SqlConfiguration.setLongQueryWarningTimeout(long)` instead.
Sets timeout in milliseconds after which long query warning will be printed.

Parameters:
  `longQryWarnTimeout` - Timeout in milliseconds.
Returns:
  `this` for chaining.

#### setSqlConnectorConfiguration

    @Deprecated
    public IgniteConfiguration setSqlConnectorConfiguration(SqlConnectorConfiguration sqlConnCfg)

Deprecated. Use `setClientConnectorConfiguration(ClientConnectorConfiguration)` instead.
Sets SQL connector configuration.

Parameters:
  `sqlConnCfg` - SQL connector configuration.
Returns:
  `this` for chaining.

#### getSqlConnectorConfiguration

    @Deprecated
    public SqlConnectorConfiguration getSqlConnectorConfiguration()

Deprecated. Use `getClientConnectorConfiguration()` instead.
Gets SQL connector configuration.

Returns:
  SQL connector configuration.

#### setClientConnectorConfiguration

    public IgniteConfiguration setClientConnectorConfiguration(@Nullable
                                                               @Nullable ClientConnectorConfiguration cliConnCfg)

Sets client connector configuration.

Parameters:
  `cliConnCfg` - Client connector configuration.
Returns:
  `this` for chaining.

#### getFailureHandler

    public FailureHandler getFailureHandler()

Gets failure handler.

Returns:
  Failure handler.

#### setFailureHandler

    public IgniteConfiguration setFailureHandler(FailureHandler failureHnd)

Sets failure handler.

Parameters:
  `failureHnd` - Failure handler.
Returns:
  `This` for chaining.

#### getClientConnectorConfiguration

    @Nullable
    public @Nullable ClientConnectorConfiguration getClientConnectorConfiguration()

Gets client connector configuration.

Returns:
  Client connector configuration.

#### getMvccVacuumThreadCount

    public int getMvccVacuumThreadCount()

This is an experimental feature. Transactional SQL is currently in a beta status.

Returns number of MVCC vacuum threads.

Returns:
  Number of MVCC vacuum threads.

#### setMvccVacuumThreadCount

    public IgniteConfiguration setMvccVacuumThreadCount(int mvccVacuumThreadCnt)

This is an experimental feature. Transactional SQL is currently in a beta status.

Sets number of MVCC vacuum threads.

Parameters:
  `mvccVacuumThreadCnt` - Number of MVCC vacuum threads.
Returns:
  `this` for chaining.

#### getMvccVacuumFrequency

    public long getMvccVacuumFrequency()

This is an experimental feature. Transactional SQL is currently in a beta status.

Returns time interval between MVCC vacuum runs in milliseconds.

Returns:
  Time interval between MVCC vacuum runs in milliseconds.

#### setMvccVacuumFrequency

    public IgniteConfiguration setMvccVacuumFrequency(long mvccVacuumFreq)

This is an experimental feature. Transactional SQL is currently in a beta status.

Sets time interval between MVCC vacuum runs in milliseconds.

Parameters:
  `mvccVacuumFreq` - Time interval between MVCC vacuum runs in milliseconds.
Returns:
  `this` for chaining.

#### isAuthenticationEnabled

    public boolean isAuthenticationEnabled()

Returns `true` if user authentication is enabled for cluster. Otherwise returns `false`. Default value is false; authentication is disabled.

Returns:
  `true` if user authentication is enabled for cluster. Otherwise returns `false`.

#### setAuthenticationEnabled

    public IgniteConfiguration setAuthenticationEnabled(boolean authEnabled)

Sets flag indicating whether the user authentication is enabled for cluster.

Parameters:
  `authEnabled` - User authentication enabled flag. `true` enab
Returns:
  `this` for chaining.

#### getSqlSchemas

    @Deprecated
    public String[] getSqlSchemas()

Deprecated. Use `SqlConfiguration.getSqlSchemas()` instead.
Gets SQL schemas to be created on node startup.

See `setSqlSchemas(String...)` for more information.

Returns:
  SQL schemas to be created on node startup.

#### setSqlSchemas

    @Deprecated
    public IgniteConfiguration setSqlSchemas(String... sqlSchemas)

Deprecated. Use `SqlConfiguration.setSqlSchemas(String...)` instead.
Sets SQL schemas to be created on node startup. Schemas are created on local node only and are not propagated to other cluster nodes. Created schemas cannot be dropped.

By default schema names are case-insensitive, i.e. `my_schema` and `My_Schema` represents the same object. Use quotes to enforce case sensitivity (e.g. `"My_Schema"`).

Property is ignored if `ignite-indexing` module is not in classpath.

Parameters:
  `sqlSchemas` - SQL schemas to be created on node startup.
Returns:
  `this` for chaining.

#### getPluginProviders

    public PluginProvider[] getPluginProviders()

Gets plugin providers.

Returns:
  Plugin providers.

#### setPluginProviders

    public IgniteConfiguration setPluginProviders(PluginProvider... pluginProvs)

Sets plugin providers.

Parameters:
  `pluginProvs` - Plugin providers.
Returns:
  `this` for chaining.

#### getSqlConfiguration

    public SqlConfiguration getSqlConfiguration()

Gets Configuration of the SQL subsystem.

Returns:
  SQL configuration.

#### setSqlConfiguration

    public IgniteConfiguration setSqlConfiguration(SqlConfiguration sqlCfg)

Parameters:
  `sqlCfg` - Configuration of the SQL subsystem.
Returns:
  `this` for chaining.

#### getAsyncContinuationExecutor

    public Executor getAsyncContinuationExecutor()

Gets the continuation executor for cache async APIs.

When `null` (default), `ForkJoinPool.commonPool()` is used.

When async operation completes, corresponding `IgniteFuture` listeners will be invoked using this executor.

Returns:
  Executor for async continuations.

#### setAsyncContinuationExecutor

    public IgniteConfiguration setAsyncContinuationExecutor(Executor asyncContinuationExecutor)

Sets the continuation executor for cache async APIs.

When `null` (default), `ForkJoinPool.commonPool()` is used.

When async operation completes, corresponding `IgniteFuture` listeners will be invoked using this executor.

Parameters:
  `asyncContinuationExecutor` - Executor for async continuations.
Returns:
  `this` for chaining.

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

${current.year} Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.12.0
Release Date | : January 10 2022