Class 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 Detail

      • 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_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.
      • 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.
      • getGridName

        @Deprecated
        public String getGridName()
        Deprecated.
        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.
      • 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, Log4J2Logger will be used.
        Returns:
        Logger to use in grid.
      • 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()
      • 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.
      • setDefaultQueryTimeout

        @Deprecated
        public IgniteConfiguration setDefaultQueryTimeout​(long dfltQryTimeout)
        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()
      • 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()
      • 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
      • 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.
      • 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.

      • 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.
      • 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.
      • 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.
      • 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.
      • 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.
      • 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.
      • 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.
      • 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.
      • 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.
      • 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.
      • getIndexingSpi

        public IndexingSpi getIndexingSpi()
        Should return fully configured indexing SPI implementations.
        Returns:
        Indexing SPI implementation.
      • getEncryptionSpi

        public EncryptionSpi getEncryptionSpi()
        Gets fully configured encryption SPI implementations.
        Returns:
        Encryption SPI implementation.
      • getSystemViewExporterSpi

        public SystemViewExporterSpi[] getSystemViewExporterSpi()
        Gets fully configured system view SPI implementations.
        Returns:
        System view exporter SPI implementations.
      • 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.
      • 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.
      • 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.
      • isActiveOnStart

        @Deprecated
        public boolean isActiveOnStart()
        Deprecated.
        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.
        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.
        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.
      • 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.
      • 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.
      • 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.
      • 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.
      • 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
      • 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.
      • 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.
      • 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.
      • setSqlSchemas

        @Deprecated
        public IgniteConfiguration setSqlSchemas​(String... sqlSchemas)
        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.
      • getDistributedPropertiesDefaultValues

        public Map<String,​String> getDistributedPropertiesDefaultValues()
        Gets default values for distributed properties.
        Returns:
        Default values for distributed properties.
      • setDistributedPropertiesDefaultValues

        public IgniteConfiguration setDistributedPropertiesDefaultValues​(Map<String,​String> distrProps)
        Sets default values for distributed properties.
        Parameters:
        distrProps - Default values for distributed properties.
        Returns:
        this for chaining.