Class ClusterProperty
public final class ClusterProperty extends Object
-
Field Summary
Fields Modifier and Type Field Description static HazelcastProperty
AGGREGATION_ACCUMULATION_PARALLEL_EVALUATION
Run aggregation accumulation for multiple entries in parallel.static HazelcastProperty
AUDIT_LOG_ENABLED
static HazelcastProperty
BACKPRESSURE_BACKOFF_TIMEOUT_MILLIS
Control the maximum timeout in millis to wait for an invocation space to be available.static HazelcastProperty
BACKPRESSURE_ENABLED
Using back pressure, you can prevent an overload of pending asynchronous backups.static HazelcastProperty
BACKPRESSURE_MAX_CONCURRENT_INVOCATIONS_PER_PARTITION
The maximum number of concurrent invocations per partition.static HazelcastProperty
BACKPRESSURE_SYNCWINDOW
Controls the frequency of a BackupAwareOperation getting its async backups converted to a sync backups.static HazelcastProperty
BIND_SPOOFING_CHECKS
Controls whether we apply more strict checks upon BIND requests towards a cluster member.static HazelcastProperty
CACHE_INVALIDATION_MESSAGE_BATCH_ENABLED
Defines cache invalidation event batch sending is enabled or not.static HazelcastProperty
CACHE_INVALIDATION_MESSAGE_BATCH_FREQUENCY_SECONDS
Defines the cache invalidation event batch sending frequency in seconds.static HazelcastProperty
CACHE_INVALIDATION_MESSAGE_BATCH_SIZE
Defines the maximum number of cache invalidation events to be drained and sent to the event listeners in a batch.static HazelcastProperty
CLIENT_CLEANUP_PERIOD
Time period to check if a client is still part of the cluster.static HazelcastProperty
CLIENT_CLEANUP_TIMEOUT
Timeout duration to decide if a client is still part of the cluster.static HazelcastProperty
CLIENT_ENGINE_BLOCKING_THREAD_COUNT
The number of threads that the client engine has available for processing requests that are blocking (example: related to transactions) When not set it is set as core-size * 20.static HazelcastProperty
CLIENT_ENGINE_QUERY_THREAD_COUNT
The number of threads that the client engine has available for processing requests that are related to transactions When not set it is set as core-size.static HazelcastProperty
CLIENT_ENGINE_THREAD_COUNT
The number of threads that the client engine has available for processing requests that are not partition specific.static HazelcastProperty
CLIENT_HEARTBEAT_TIMEOUT_SECONDS
static HazelcastProperty
CLIENT_PROTOCOL_UNVERIFIED_MESSAGE_BYTES
Client protocol message size limit (in bytes) for unverified connections (i.e.static HazelcastProperty
CLUSTER_SHUTDOWN_TIMEOUT_SECONDS
static HazelcastProperty
CONCURRENT_WINDOW_MS
Property needed for concurrency detection so that write through can be done correctly.static HazelcastProperty
CONNECT_ALL_WAIT_SECONDS
static HazelcastProperty
CONNECTION_MONITOR_INTERVAL
static HazelcastProperty
CONNECTION_MONITOR_MAX_FAULTS
static HazelcastProperty
DISABLE_STALE_READ_ON_PARTITION_MIGRATION
static HazelcastProperty
DISCOVERY_SPI_ENABLED
Enables the Discovery SPI lookupstatic HazelcastProperty
DISCOVERY_SPI_PUBLIC_IP_ENABLED
Enables the Discovery Joiner to use public IP from DiscoveredNode.static HazelcastProperty
ENABLE_JMX
static HazelcastProperty
ENTERPRISE_LICENSE_KEY
static HazelcastProperty
EVENT_QUEUE_CAPACITY
The capacity of theEventServiceImpl
executor.static HazelcastProperty
EVENT_QUEUE_TIMEOUT_MILLIS
The timeout for offering an event to the event executor for processing.static HazelcastProperty
EVENT_SYNC_TIMEOUT_MILLIS
To prevent overloading of the outbound connections, once in a while an event is made synchronous by wrapping it in a fake operation and waiting for a fake response.static HazelcastProperty
EVENT_THREAD_COUNT
Number of threads for theEventServiceImpl
executor.static HazelcastProperty
FAIL_ON_INDETERMINATE_OPERATION_STATE
When this configuration is enabled, if an operation has sync backups and acks are not received from backup replicas in time, or the member which owns primary replica of the target partition leaves the cluster, then the invocation fails withIndeterminateOperationStateException
.static HazelcastProperty
GENERIC_OPERATION_THREAD_COUNT
The number of generic operation handler threads per member.static HazelcastProperty
GRACEFUL_SHUTDOWN_MAX_WAIT
static HazelcastProperty
HEALTH_MONITORING_DELAY_SECONDS
static HazelcastProperty
HEALTH_MONITORING_LEVEL
static HazelcastProperty
HEALTH_MONITORING_THRESHOLD_CPU_PERCENTAGE
static HazelcastProperty
HEALTH_MONITORING_THRESHOLD_MEMORY_PERCENTAGE
static HazelcastProperty
HEARTBEAT_FAILURE_DETECTOR_TYPE
Heartbeat failure detector type.static HazelcastProperty
HEARTBEAT_INTERVAL_SECONDS
The interval at which member heartbeat messages are sentstatic HazelcastProperty
HOT_RESTART_FREE_NATIVE_MEMORY_PERCENTAGE
XML and system property for setting the hot restart required free space.static HazelcastProperty
INDEX_COPY_BEHAVIOR
Type of Query Index result copying behavior.static HazelcastProperty
INIT_CLUSTER_VERSION
Override cluster version to use while node is not yet member of a cluster.static HazelcastProperty
INITIAL_MIN_CLUSTER_SIZE
static HazelcastProperty
INITIAL_WAIT_SECONDS
static HazelcastProperty
INVOCATION_MAX_RETRY_COUNT
Maximum number of retries for an invocation.static HazelcastProperty
INVOCATION_RETRY_PAUSE
Pause time between each retry cycle of an invocation in milliseconds.static HazelcastProperty
IO_BALANCER_INTERVAL_SECONDS
The interval in seconds betweenIOBalancer
executions.static HazelcastProperty
IO_INPUT_THREAD_COUNT
Controls the number of socket input threads.static HazelcastProperty
IO_OUTPUT_THREAD_COUNT
Controls the number of socket output threads.static HazelcastProperty
IO_THREAD_COUNT
The number of threads doing socket input and the number of threads doing socket output.static HazelcastProperty
IO_WRITE_THROUGH_ENABLED
Optimization that allows sending of packets over the network to be done on the calling thread if the conditions are right.static HazelcastProperty
JCACHE_PROVIDER_TYPE
Forces the JCache provider, which can have values client or server, to force the provider type.static HazelcastProperty
JMX_UPDATE_INTERVAL_SECONDS
static HazelcastProperty
LOCK_MAX_LEASE_TIME_SECONDS
static HazelcastProperty
LOGGING_ENABLE_DETAILS
Controls whether cluster name, ip and version should be included in all log messagesstatic HazelcastProperty
LOGGING_TYPE
static HazelcastProperty
MAP_EVICTION_BATCH_SIZE
Maximum number of IMap entries Hazelcast will evict during a single eviction cycle.static HazelcastProperty
MAP_EXPIRY_DELAY_SECONDS
You can use MAP_EXPIRY_DELAY_SECONDS to deal with some possible edge cases, such as using EntryProcessor.static HazelcastProperty
MAP_INVALIDATION_MESSAGE_BATCH_ENABLED
Defines Near Cache invalidation event batch sending is enabled or not.static HazelcastProperty
MAP_INVALIDATION_MESSAGE_BATCH_FREQUENCY_SECONDS
Defines the Near Cache invalidation event batch sending frequency in seconds.static HazelcastProperty
MAP_INVALIDATION_MESSAGE_BATCH_SIZE
Defines the maximum number of Near Cache invalidation events to be drained and sent to the event Near Cache in a batch.static HazelcastProperty
MAP_LOAD_CHUNK_SIZE
The maximum size of the key batch sent to the partition owners for value loading and the maximum size of a key batch for which values are loaded in a single partition.static HazelcastProperty
MAP_REPLICA_SCHEDULED_TASK_DELAY_SECONDS
static HazelcastProperty
MAP_WRITE_BEHIND_QUEUE_CAPACITY
Setting this capacity is valid if you setwriteCoalescing
tofalse
(seeMapStoreConfig.setWriteCoalescing(boolean)
).static HazelcastProperty
MASTERSHIP_CLAIM_TIMEOUT_SECONDS
The timeout which defines when master candidate gives up waiting for response to its mastership claim.static HazelcastProperty
MAX_JOIN_MERGE_TARGET_SECONDS
static HazelcastProperty
MAX_JOIN_SECONDS
static HazelcastProperty
MAX_NO_HEARTBEAT_SECONDS
The timeout which defines when a cluster member is removed because it has not sent any heartbeats.static HazelcastProperty
MAX_WAIT_SECONDS_BEFORE_JOIN
static HazelcastProperty
MC_EXECUTOR_THREAD_COUNT
The number of threads that the Management Center service has available for processing operations sent from connected Management Center instance.static HazelcastProperty
MC_MAX_VISIBLE_SLOW_OPERATION_COUNT
static HazelcastProperty
MC_TRUSTED_INTERFACES
Deprecated.This property is valid only for 4.0.z patch stream.static HazelcastProperty
MEMBER_LIST_PUBLISH_INTERVAL_SECONDS
The interval at which the master sends the member lists are sent to other non-master membersstatic HazelcastProperty
MERGE_FIRST_RUN_DELAY_SECONDS
The delay until the first run of the split-brain handler.static HazelcastProperty
MERGE_NEXT_RUN_DELAY_SECONDS
The interval between invocations of the split-brain handler.static HazelcastProperty
METRICS_COLLECTION_FREQUENCY
Sets the metrics collection frequency in seconds.static HazelcastProperty
METRICS_DATASTRUCTURES
Enables/disables collecting metrics from the distributed data structures.static HazelcastProperty
METRICS_DEBUG
Enables collecting debug metrics.static HazelcastProperty
METRICS_ENABLED
Enables/disables metrics collection altogether.static HazelcastProperty
METRICS_JMX_ENABLED
Enables/disables exposing metrics on JMX.static HazelcastProperty
METRICS_MC_ENABLED
Enables/disables collecting metrics for Management Center.static HazelcastProperty
METRICS_MC_RETENTION
Sets the duration in seconds for which the collected metrics are retained and Management Center can consume them.static HazelcastProperty
MOBY_NAMING_ENABLED
Defines whether Moby Names should be used for instance name generating when it is not provided by user.static HazelcastProperty
NETWORK_STATS_REFRESH_INTERVAL_SECONDS
The interval at which network stats (bytes sent and received) are re-calculated and published.static HazelcastProperty
OPERATION_BACKUP_TIMEOUT_MILLIS
If an operation has backups, this property specifies how long the invocation will wait for acks from the backup replicas.static HazelcastProperty
OPERATION_CALL_TIMEOUT_MILLIS
static HazelcastProperty
PARTITION_BACKUP_SYNC_INTERVAL
static HazelcastProperty
PARTITION_COUNT
Total number of partitions in the Hazelcast cluster.static HazelcastProperty
PARTITION_FRAGMENTED_MIGRATION_ENABLED
static HazelcastProperty
PARTITION_MAX_PARALLEL_REPLICATIONS
static HazelcastProperty
PARTITION_MIGRATION_INTERVAL
Time in seconds to sleep after a migration task.static HazelcastProperty
PARTITION_MIGRATION_TIMEOUT
Timeout in seconds for all migration operations.static HazelcastProperty
PARTITION_OPERATION_THREAD_COUNT
The number of partition operation handler threads per member.static HazelcastProperty
PARTITION_TABLE_SEND_INTERVAL
static HazelcastProperty
PARTITIONING_STRATEGY_CLASS
static HazelcastProperty
PHONE_HOME_ENABLED
static HazelcastProperty
PREFER_IPv4_STACK
static HazelcastProperty
PRIORITY_GENERIC_OPERATION_THREAD_COUNT
The number of priority generic operation handler threads per member.static HazelcastProperty
QUERY_MAX_LOCAL_PARTITION_LIMIT_FOR_PRE_CHECK
Maximum value of local partitions to trigger local pre-check forPredicates.alwaysTrue()
predicate query operations on maps.static HazelcastProperty
QUERY_OPTIMIZER_TYPE
Type of Query Optimizer.static HazelcastProperty
QUERY_PREDICATE_PARALLEL_EVALUATION
Run Query Evaluations for multiple partitions in parallel.static HazelcastProperty
QUERY_RESULT_SIZE_LIMIT
Result size limit for query operations on maps.static HazelcastProperty
RESPONSE_THREAD_COUNT
The number of threads that process responses.static HazelcastProperty
SEARCH_DYNAMIC_CONFIG_FIRST
By default, search for data structures config is performed within static configuration first: Exact match in static config Wildcard match in static config Exact match in dynamic config Wildcard match in dynamic config Fallback to default But sometimes it makes sense to perform search within dynamic configs first.static HazelcastProperty
SERIALIZATION_VERSION
Hazelcast serialization version.static HazelcastProperty
SHUTDOWNHOOK_ENABLED
static HazelcastProperty
SHUTDOWNHOOK_POLICY
Behaviour when JVM is about to exit while Hazelcast instance is still running.static HazelcastProperty
SLOW_OPERATION_DETECTOR_ENABLED
Enables or disables theSlowOperationDetector
.static HazelcastProperty
SLOW_OPERATION_DETECTOR_LOG_PURGE_INTERVAL_SECONDS
Purge interval for slow operation logs.static HazelcastProperty
SLOW_OPERATION_DETECTOR_LOG_RETENTION_SECONDS
This value defines the retention time of invocations in slow operation logs.static HazelcastProperty
SLOW_OPERATION_DETECTOR_STACK_TRACE_LOGGING_ENABLED
Defines if the stacktraces of slow operations are logged in the log file.static HazelcastProperty
SLOW_OPERATION_DETECTOR_THRESHOLD_MILLIS
Defines a threshold above which a running operation inOperationService
is considered to be slow.static HazelcastProperty
SOCKET_BIND_ANY
static HazelcastProperty
SOCKET_BUFFER_DIRECT
If the bytebuffers used in the socket should be a direct bytebuffer (true) or a regular bytebuffer (false).static HazelcastProperty
SOCKET_CLIENT_BIND
static HazelcastProperty
SOCKET_CLIENT_BIND_ANY
static HazelcastProperty
SOCKET_CLIENT_BUFFER_DIRECT
static HazelcastProperty
SOCKET_CLIENT_RECEIVE_BUFFER_SIZE
Overrides receive buffer size for connections opened by clients.static HazelcastProperty
SOCKET_CLIENT_SEND_BUFFER_SIZE
Overrides send buffer size for connections opened by clients.static HazelcastProperty
SOCKET_CONNECT_TIMEOUT_SECONDS
static HazelcastProperty
SOCKET_KEEP_ALIVE
static HazelcastProperty
SOCKET_LINGER_SECONDS
static HazelcastProperty
SOCKET_NO_DELAY
static HazelcastProperty
SOCKET_RECEIVE_BUFFER_SIZE
static HazelcastProperty
SOCKET_SEND_BUFFER_SIZE
static HazelcastProperty
SOCKET_SERVER_BIND_ANY
static HazelcastProperty
TCP_JOIN_PORT_TRY_COUNT
The number of incremental ports, starting with port number defined in network configuration, that will be used to connect to a host which is defined without a port in the TCP-IP member list while a node is searching for a cluster.static HazelcastProperty
WAIT_SECONDS_BEFORE_JOIN
static HazelcastProperty
WAN_CONSUMER_ACK_DELAY_BACKOFF_INIT_MS
Defines the initial backoff delay for the Enterprise WAN implementation's consumer.static HazelcastProperty
WAN_CONSUMER_ACK_DELAY_BACKOFF_MAX_MS
Defines the maximum backoff delay for the Enterprise WAN implementation's consumer.static HazelcastProperty
WAN_CONSUMER_ACK_DELAY_BACKOFF_MULTIPLIER
Defines the multiplier (the speed of the function) for the backoff delay for the Enterprise WAN implementation's consumer.static HazelcastProperty
WAN_CONSUMER_INVOCATION_THRESHOLD
Defines the pending invocation threshold for the Enterprise WAN replication implementation. -
Method Summary
-
Field Details
-
PARTITION_COUNT
Total number of partitions in the Hazelcast cluster. -
PARTITION_OPERATION_THREAD_COUNT
The number of partition operation handler threads per member.If this is less than the number of partitions on a member, partition operations will queue behind other operations of different partitions.
-
GENERIC_OPERATION_THREAD_COUNT
The number of generic operation handler threads per member.The default is max(2, processors/2);
-
PRIORITY_GENERIC_OPERATION_THREAD_COUNT
The number of priority generic operation handler threads per member.The default is 1.
Having at least 1 priority generic operation thread helps to improve cluster stability since a lot of cluster operations are generic priority operations and they should get executed as soon as possible. If there is a dedicated generic operation thread then these operations don't get delayed because the generic threads are busy executing regular user operations. So unless memory consumption is an issue, make sure there is at least 1 thread.
-
RESPONSE_THREAD_COUNT
The number of threads that process responses.By default there are 2 response threads; this gives stable and good performance.
If set to 0, the response threads are bypassed and the response handling is done on the IO threads. Under certain conditions this can give a higher throughput, but setting it to 0 should be regarded an experimental feature.
-
CLIENT_ENGINE_THREAD_COUNT
The number of threads that the client engine has available for processing requests that are not partition specific. Most of the requests, such asmap.put
andmap.get
, are partition specific and will use a partition-specific operation thread, but there are also requests that can't be executed on a partition-specific operation thread, such asmultimap.containsValue(value)
, because they need to access all partitions on a given member. When not set it is set as core-size -
CLIENT_ENGINE_QUERY_THREAD_COUNT
The number of threads that the client engine has available for processing requests that are related to transactions When not set it is set as core-size. -
CLIENT_ENGINE_BLOCKING_THREAD_COUNT
The number of threads that the client engine has available for processing requests that are blocking (example: related to transactions) When not set it is set as core-size * 20. -
CLIENT_CLEANUP_PERIOD
Time period to check if a client is still part of the cluster. -
CLIENT_CLEANUP_TIMEOUT
Timeout duration to decide if a client is still part of the cluster. If a member can not find any connection to a client in the cluster, it will clean up local resources that is owned by that client. -
EVENT_THREAD_COUNT
Number of threads for theEventServiceImpl
executor. The executor is responsible for executing the events. If you process a lot of events and have many cores, setting a higher value is a good practice. This way, more events can be processed in parallel. -
EVENT_QUEUE_CAPACITY
The capacity of theEventServiceImpl
executor. The executor is responsible for executing the events. If the events are produced at a higher rate than they are consumed, the queue grows in size. This can lead to anOutOfMemoryError
if the accumulated events are not small enough to fit in memory. This capacity is shared between event topics. When the maximum capacity is reached, the items are dropped. This means that the event system is a 'best effort' system and there is no guarantee that you are going to get an event. Since the capacity is shared between topics, one topic might fill the entire queue and cause other topics to drop their messages. -
EVENT_QUEUE_TIMEOUT_MILLIS
The timeout for offering an event to the event executor for processing. If the event queue is full, the event might not be accepted to the queue and it will be dropped. This applies only to processing of local events. Remote events (events on a remote subscriber) have no timeout, meaning that the event can be rejected immediately. -
EVENT_SYNC_TIMEOUT_MILLIS
To prevent overloading of the outbound connections, once in a while an event is made synchronous by wrapping it in a fake operation and waiting for a fake response. This causes the outbound write queue of the connection to get drained.This timeout configures the maximum amount of waiting time for this fake response. Setting it to a too low value can lead to an uncontrolled growth of the outbound write queue of the connection.
-
HEALTH_MONITORING_LEVEL
-
HEALTH_MONITORING_DELAY_SECONDS
-
HEALTH_MONITORING_THRESHOLD_MEMORY_PERCENTAGE
-
HEALTH_MONITORING_THRESHOLD_CPU_PERCENTAGE
-
IO_THREAD_COUNT
The number of threads doing socket input and the number of threads doing socket output.E.g., if 3 is configured, then you get 3 threads doing input and 3 doing output. For individual control, check
IO_INPUT_THREAD_COUNT
andIO_OUTPUT_THREAD_COUNT
.The default is depends on the number of available processors. If the available processors count is smaller than 20, there will be 3+3 io threads, otherwise 4+4. If SSL is enabled, then the default number of IO threads will be corecount/2.
-
IO_INPUT_THREAD_COUNT
Controls the number of socket input threads. By default it is the same asIO_THREAD_COUNT
. -
IO_OUTPUT_THREAD_COUNT
Controls the number of socket output threads. By default it is the same asIO_THREAD_COUNT
. -
IO_WRITE_THROUGH_ENABLED
Optimization that allows sending of packets over the network to be done on the calling thread if the conditions are right. This can reduce latency and increase performance for low threaded environments. It is enabled by default. -
CONCURRENT_WINDOW_MS
Property needed for concurrency detection so that write through can be done correctly. This property sets the window the concurrency detection will signalling that concurrency has been detected, even if there are no further updates in that window. Normally in a concurrent system the window keeps sliding forward so it will always remain concurrent. Setting it too high effectively disables the optimization because once concurrency has been detected it will keep that way. Setting it too low could lead to suboptimal performance because the system will try write through and other optimizations even though the system is concurrent. -
IO_BALANCER_INTERVAL_SECONDS
The interval in seconds betweenIOBalancer
executions. The shorter intervals will catch I/O Imbalance faster, but they will cause higher overhead.Please see the documentation of
IOBalancer
for a detailed explanation of the problem.The default is 20 seconds. A value smaller than 1 disables the balancer.
-
PREFER_IPv4_STACK
-
PHONE_HOME_ENABLED
-
CONNECT_ALL_WAIT_SECONDS
-
MAP_LOAD_CHUNK_SIZE
The maximum size of the key batch sent to the partition owners for value loading and the maximum size of a key batch for which values are loaded in a single partition. -
MERGE_FIRST_RUN_DELAY_SECONDS
The delay until the first run of the split-brain handler. -
MERGE_NEXT_RUN_DELAY_SECONDS
The interval between invocations of the split-brain handler. -
OPERATION_CALL_TIMEOUT_MILLIS
-
OPERATION_BACKUP_TIMEOUT_MILLIS
If an operation has backups, this property specifies how long the invocation will wait for acks from the backup replicas. If acks are not received from some backups, there will not be any rollback on other successful replicas. -
FAIL_ON_INDETERMINATE_OPERATION_STATE
When this configuration is enabled, if an operation has sync backups and acks are not received from backup replicas in time, or the member which owns primary replica of the target partition leaves the cluster, then the invocation fails withIndeterminateOperationStateException
. However, even if the invocation fails, there will not be any rollback on other successful replicas. -
INVOCATION_MAX_RETRY_COUNT
Maximum number of retries for an invocation. After threshold is reached, invocation is assumed as failed. -
INVOCATION_RETRY_PAUSE
Pause time between each retry cycle of an invocation in milliseconds. -
SOCKET_BIND_ANY
-
SOCKET_SERVER_BIND_ANY
-
SOCKET_CLIENT_BIND_ANY
-
SOCKET_CLIENT_BIND
-
SOCKET_RECEIVE_BUFFER_SIZE
-
SOCKET_SEND_BUFFER_SIZE
-
SOCKET_BUFFER_DIRECT
If the bytebuffers used in the socket should be a direct bytebuffer (true) or a regular bytebuffer (false). -
SOCKET_CLIENT_RECEIVE_BUFFER_SIZE
Overrides receive buffer size for connections opened by clients.Hazelcast creates all connections with receive buffer size set according to #PROP_SOCKET_RECEIVE_BUFFER_SIZE. When it detects a connection was opened by a client then it adjusts receive buffer size according to this property.
Size is in kilobytes.
The default is -1 (same as receive buffer size for connections opened by members).
-
SOCKET_CLIENT_SEND_BUFFER_SIZE
Overrides send buffer size for connections opened by clients.Hazelcast creates all connections with send buffer size set according to #PROP_SOCKET_SEND_BUFFER_SIZE. When it detects a connection was opened by a client then it adjusts send buffer size according to this property.
Size is in kilobytes.
The default is -1 (same as receive buffer size for connections opened by members).
-
SOCKET_CLIENT_BUFFER_DIRECT
-
SOCKET_LINGER_SECONDS
-
SOCKET_CONNECT_TIMEOUT_SECONDS
-
SOCKET_KEEP_ALIVE
-
SOCKET_NO_DELAY
-
SHUTDOWNHOOK_ENABLED
-
SHUTDOWNHOOK_POLICY
Behaviour when JVM is about to exit while Hazelcast instance is still running. Possible values: TERMINATE: Terminate Hazelcast immediately GRACEFUL: Initiate graceful shutdown. This can significantly slow-down JVM exit process, but it's tries to retain data safety. Default: TERMINATE You should always shutdown Hazelcast explicitly viaHazelcastInstance.shutdown()
It's not recommended to rely on shutdown hook, this is a last-effort measure. -
WAIT_SECONDS_BEFORE_JOIN
-
MAX_WAIT_SECONDS_BEFORE_JOIN
-
MAX_JOIN_SECONDS
-
MAX_JOIN_MERGE_TARGET_SECONDS
-
HEARTBEAT_INTERVAL_SECONDS
The interval at which member heartbeat messages are sent -
MASTERSHIP_CLAIM_TIMEOUT_SECONDS
The timeout which defines when master candidate gives up waiting for response to its mastership claim. After timeout happens, non-responding member will be removed from member list. -
MAX_NO_HEARTBEAT_SECONDS
The timeout which defines when a cluster member is removed because it has not sent any heartbeats. -
HEARTBEAT_FAILURE_DETECTOR_TYPE
Heartbeat failure detector type. Available options are:deadline
: A deadline based failure detector uses an absolute timeout for missing/lost heartbeats. After timeout member is considered as dead/unavailable.phi-accrual
: Implementation of 'The Phi Accrual Failure Detector' by Hayashibara et al. as defined in their paper. Phi Accrual Failure Detector is adaptive to network/environment conditions, that's why a lowerMAX_NO_HEARTBEAT_SECONDS
(for example 10 or 15 seconds) can be used to provide faster detection of unavailable members.
deadline
. -
MEMBER_LIST_PUBLISH_INTERVAL_SECONDS
The interval at which the master sends the member lists are sent to other non-master members -
CLIENT_HEARTBEAT_TIMEOUT_SECONDS
-
CLUSTER_SHUTDOWN_TIMEOUT_SECONDS
-
INITIAL_MIN_CLUSTER_SIZE
-
INITIAL_WAIT_SECONDS
-
TCP_JOIN_PORT_TRY_COUNT
The number of incremental ports, starting with port number defined in network configuration, that will be used to connect to a host which is defined without a port in the TCP-IP member list while a node is searching for a cluster. -
MAP_REPLICA_SCHEDULED_TASK_DELAY_SECONDS
-
MAP_EXPIRY_DELAY_SECONDS
You can use MAP_EXPIRY_DELAY_SECONDS to deal with some possible edge cases, such as using EntryProcessor. Without this delay, you may see that an EntryProcessor running on the owner partition found a key, but entry backup processor did not find it on backup, and as a result when backup promotes to owner you will end up with an unprocessed key. -
MAP_EVICTION_BATCH_SIZE
Maximum number of IMap entries Hazelcast will evict during a single eviction cycle. Eviction cycle is triggered by a map mutation. Typically it's OK to evict at most a single entry. However imagine the scenario where you are inserting values in a loop and in each iteration you double entry size. In this situation Hazelcast has to evict more than just a single entry - as all existing entries are smaller than the entry which is about to be added and removing any old entry cannot make sufficient room for the new entry. Default: 1 -
HOT_RESTART_FREE_NATIVE_MEMORY_PERCENTAGE
XML and system property for setting the hot restart required free space. By default, hot restart requires at least 15% free HD space. -
LOGGING_TYPE
-
LOGGING_ENABLE_DETAILS
Controls whether cluster name, ip and version should be included in all log messages -
ENABLE_JMX
-
JMX_UPDATE_INTERVAL_SECONDS
-
MC_MAX_VISIBLE_SLOW_OPERATION_COUNT
-
MC_EXECUTOR_THREAD_COUNT
The number of threads that the Management Center service has available for processing operations sent from connected Management Center instance. -
CONNECTION_MONITOR_INTERVAL
-
CONNECTION_MONITOR_MAX_FAULTS
-
PARTITION_MIGRATION_INTERVAL
Time in seconds to sleep after a migration task. -
PARTITION_MIGRATION_TIMEOUT
Timeout in seconds for all migration operations. -
PARTITION_FRAGMENTED_MIGRATION_ENABLED
-
DISABLE_STALE_READ_ON_PARTITION_MIGRATION
-
PARTITION_TABLE_SEND_INTERVAL
-
PARTITION_BACKUP_SYNC_INTERVAL
-
PARTITION_MAX_PARALLEL_REPLICATIONS
-
PARTITIONING_STRATEGY_CLASS
-
GRACEFUL_SHUTDOWN_MAX_WAIT
-
SLOW_OPERATION_DETECTOR_ENABLED
Enables or disables theSlowOperationDetector
. -
SLOW_OPERATION_DETECTOR_THRESHOLD_MILLIS
Defines a threshold above which a running operation inOperationService
is considered to be slow. These operations will log a warning and will be shown in the Management Center with detailed information, e.g. stacktrace. -
SLOW_OPERATION_DETECTOR_LOG_RETENTION_SECONDS
This value defines the retention time of invocations in slow operation logs.If an invocation is older than this value, it will be purged from the log to prevent unlimited memory usage. When all invocations are purged from a log, the log itself will be deleted.
-
SLOW_OPERATION_DETECTOR_LOG_PURGE_INTERVAL_SECONDS
Purge interval for slow operation logs. -
SLOW_OPERATION_DETECTOR_STACK_TRACE_LOGGING_ENABLED
Defines if the stacktraces of slow operations are logged in the log file. Stacktraces will always be reported to the Management Center, but by default they are not printed to keep the log size small. -
LOCK_MAX_LEASE_TIME_SECONDS
-
ENTERPRISE_LICENSE_KEY
-
MAP_WRITE_BEHIND_QUEUE_CAPACITY
Setting this capacity is valid if you setwriteCoalescing
tofalse
(seeMapStoreConfig.setWriteCoalescing(boolean)
). Otherwise its value will not be taken into account.The per node maximum write-behind queue capacity is the total of all write-behind queue sizes in a node, including backups.
The maximum value which can be set is
Integer.MAX_VALUE
-
CACHE_INVALIDATION_MESSAGE_BATCH_ENABLED
Defines cache invalidation event batch sending is enabled or not. -
CACHE_INVALIDATION_MESSAGE_BATCH_SIZE
Defines the maximum number of cache invalidation events to be drained and sent to the event listeners in a batch. -
CACHE_INVALIDATION_MESSAGE_BATCH_FREQUENCY_SECONDS
Defines the cache invalidation event batch sending frequency in seconds.When the number of events do not come up to
CACHE_INVALIDATION_MESSAGE_BATCH_SIZE
in the given time period (which is defined by this property); those events are gathered into a batch and sent to target. -
MAP_INVALIDATION_MESSAGE_BATCH_ENABLED
Defines Near Cache invalidation event batch sending is enabled or not. -
MAP_INVALIDATION_MESSAGE_BATCH_SIZE
Defines the maximum number of Near Cache invalidation events to be drained and sent to the event Near Cache in a batch. -
MAP_INVALIDATION_MESSAGE_BATCH_FREQUENCY_SECONDS
Defines the Near Cache invalidation event batch sending frequency in seconds.When the number of events do not come up to
MAP_INVALIDATION_MESSAGE_BATCH_SIZE
in the given time period (which is defined by this property); those events are gathered into a batch and sent to target. -
BACKPRESSURE_ENABLED
Using back pressure, you can prevent an overload of pending asynchronous backups. With a map with a single asynchronous backup, producing asynchronous backups could happen at a higher rate than the consumption of the backup. This can eventually lead to an OOME (especially if the backups are slow).With back-pressure enabled, this can't happen.
Back pressure is implemented by making asynchronous backups operations synchronous. This prevents the internal queues from overflowing because the invoker will wait for the primary and for the backups to complete. The frequency of this is determined by the sync-window. To deal with overloads of backups, the property 'hazelcast.operation.backup.timeout.millis' should be set to a larger value; above 60000 is recommended. Otherwise it can still happen backups accumulate.
-
BACKPRESSURE_SYNCWINDOW
Controls the frequency of a BackupAwareOperation getting its async backups converted to a sync backups. This is needed to prevent an accumulation of asynchronous backups and eventually running into stability issues.A sync window of 10 means that 1 in 10 BackupAwareOperations get their async backups convert to sync backups.
A sync window of 1 means that every BackupAwareOperation get their async backups converted to sync backups. 1 is also the smallest legal value for the sync window.
There is some randomization going on to prevent resonance. Therefore, with a sync window of n, not every Nth BackupAwareOperation operation gets its async backups converted to sync.
This property only has meaning when backpressure is enabled.
-
BACKPRESSURE_BACKOFF_TIMEOUT_MILLIS
Control the maximum timeout in millis to wait for an invocation space to be available.If an invocation can't be made because there are too many pending invocations, then an exponential backoff is done to give the system time to deal with the backlog of invocations. This property controls how long an invocation is allowed to wait before getting a
HazelcastOverloadException
.The value needs to be equal or larger than 0.
-
BACKPRESSURE_MAX_CONCURRENT_INVOCATIONS_PER_PARTITION
The maximum number of concurrent invocations per partition.To prevent the system from overloading, HZ can apply a constraint on the number of concurrent invocations. If the maximum number of concurrent invocations has been exceeded and a new invocation comes in, then an exponential back-off is applied till eventually a timeout happens or there is room for the invocation.
By default it is configured as 100. With 271 partitions, that would give (271 + 1) * 100 = 27200 concurrent invocations from a single member. The +1 is for generic operations. The reasons why 100 is chosen are: - there can be concurrent operations that touch a lot of partitions which consume more than 1 invocation, and - certain methods like those from the IExecutor are also invocations and they can be very long running.
No promise is made for the invocations being tracked per partition, or if there is a general pool of invocations.
-
QUERY_PREDICATE_PARALLEL_EVALUATION
Run Query Evaluations for multiple partitions in parallel.Each Hazelcast member evaluates query predicates using a single thread by default. In most cases the overhead of inter-thread communication overweight benefit of parallel execution.
When you have a large dataset and/or slow predicate you may benefit from parallel predicate evaluations. Set to true if you are using slow predicates or have < 100,000s entries per member.
The default is false.
-
AGGREGATION_ACCUMULATION_PARALLEL_EVALUATION
Run aggregation accumulation for multiple entries in parallel.Each Hazelcast member executes the accumulation stage of an aggregation using a single thread by default. In most cases it pays off to do it in parallel.
The default is true.
-
QUERY_RESULT_SIZE_LIMIT
Result size limit for query operations on maps.This value defines the maximum number of returned elements for a single query result. If a query exceeds this number of elements, a
QueryResultSizeExceededException
will be thrown.This feature prevents an OOME if a single node is requesting the whole data set of the cluster, such as by executing a query with
Predicates.alwaysTrue()
predicate. This applies internally for theIMap.values()
,IMap.keySet()
andIMap.entrySet()
methods, which are good candidates for OOME in large clusters.This feature depends on an equal distribution of the data on the cluster nodes to calculate the result size limit per node. Therefore, there is a minimum value of 100000 defined in
QueryResultSizeLimiter
. Configured values below the minimum will be increased to the minimum.The feature can be disabled by setting its value to
-1
(which is the default value). -
QUERY_MAX_LOCAL_PARTITION_LIMIT_FOR_PRE_CHECK
Maximum value of local partitions to trigger local pre-check forPredicates.alwaysTrue()
predicate query operations on maps.To limit the result size of a query (
QUERY_RESULT_SIZE_LIMIT
); a local pre-check on the requesting node can be done before the query is sent to the cluster. Since this may increase the latency, the pre-check is limited to a maximum number of local partitions.By increasing this parameter, you can prevent the execution of the query on the cluster. Increasing this parameter increases the latency due to the prolonged local pre-check.
The pre-check can be disabled by setting the value to
-1
.- See Also:
QUERY_RESULT_SIZE_LIMIT
-
QUERY_OPTIMIZER_TYPE
Type of Query Optimizer. Valid Values:- RULES - for optimizations based on static rules
- NONE - optimization are disabled
Values are case sensitive
-
INDEX_COPY_BEHAVIOR
Type of Query Index result copying behavior. Defines the behavior for index copying on index read/write. Supported in BINARY and OBJECT in-memory-formats. Ignored in NATIVE in-memory-format. Why is it needed? In order to support correctness the internal data-structures used by indexes need to do some copying. The copying may take place on-read or on-write:-> Copying on-read means that each index-read operation will copy the result of the query before returning it to the caller.This copying may be expensive, depending on the size of the result, since the result is stored in a map, which means that all entries need to have the hash calculated before being stored in a bucket. Each index-write operation however will be fast, since there will be no copying taking place.
-> Copying on-write means that each index-write operation will completely copy the underlying map to provide the copy-on-write semantics. Depending on the index size, it may be a very expensive operation. Each index-read operation will be very fast, however, since it may just access the map and return it to the caller.
-> Never copying is tricky. It means that the internal data structures of the index are concurrently modified without copy-on-write semantics. Index reads never copy the results of a query to a separate map. It means that the results backed by the underlying index-map can change after the query has been executed. Specifically an entry might have been added / removed from an index, or it might have been remapped. Should be used in cases when a the caller expects "mostly correct" results - specifically, if it's ok if some entries returned in the result set do not match the initial query criteria. The fastest solution for read and writes, since no copying takes place.
It's a tuneable trade-off - the user may decide.
Valid Values:
- COPY_ON_READY - Internal data structures of the index are concurrently modified without copy-on-write semantics. Index queries copy the results of a query on index read to detach the result from the source map. Should be used in index-write intensive cases, since the reads will slow down due to the copying. Default value.
- COPY_ON_WRITE - Internal data structures of the index are modified with copy-on-write semantics. Previously returned index query results reflect the state of the index at the time of the query and are not affected by future index modifications. Should be used in index-read intensive cases, since the writes will slow down due to the copying.
- NEVER - Internal data structures of the index are concurrently modified without copy-on-write semantics. Index reads never copy the results of a query to a separate map. It means that the results backed by the underlying index-map can change after the query has been executed. Specifically an entry might have been added / removed from an index, or it might have been remapped. Should be used in cases when a the caller expects "mostly correct" results - specifically, if it's ok if some entries returned in the result set do not match the initial query criteria. The fastest solution for read and writes, since no copying takes place.
-
JCACHE_PROVIDER_TYPE
Forces the JCache provider, which can have values client or server, to force the provider type. If not provided, the provider will be client or server, whichever is found on the classpath first respectively. -
DISCOVERY_SPI_ENABLED
Enables the Discovery SPI lookup
Discovery SPI is disabled by default
-
DISCOVERY_SPI_PUBLIC_IP_ENABLED
Enables the Discovery Joiner to use public IP from DiscoveredNode.
Discovery SPI is disabled by default
-
SERIALIZATION_VERSION
Hazelcast serialization version. This is single byte value between 1 and Max supported serialization version.- See Also:
BuildInfo.getSerializationVersion()
-
INIT_CLUSTER_VERSION
Override cluster version to use while node is not yet member of a cluster. The cluster version assumed before joining a cluster may affect the serialization format of cluster discovery & join operations and its compatibility with members of a cluster running on different Hazelcast codebase versions. The default is to use the node's codebase version. You may need to override it for your node to join a cluster running on a previous cluster version. -
BIND_SPOOFING_CHECKS
Controls whether we apply more strict checks upon BIND requests towards a cluster member. The checks mainly validate the remote BIND request against the remote address as found in the socket. By default they are disabled, to avoid connectivity issues when deployed under NAT'ed infrastructure. -
SEARCH_DYNAMIC_CONFIG_FIRST
By default, search for data structures config is performed within static configuration first:- Exact match in static config
- Wildcard match in static config
- Exact match in dynamic config
- Wildcard match in dynamic config
- Fallback to default
true
, search algorithm changes to:- Exact match in dynamic config
- Wildcard match in dynamic config
- Exact match in static config
- Wildcard match in static config
- Fallback to default
-
MOBY_NAMING_ENABLED
Defines whether Moby Names should be used for instance name generating when it is not provided by user.Moby Name is a short human-readable name consisting of randomly chosen adjective and the surname of a famous person.
If set to true, Moby Name will be chosen, otherwise a name that is concatenation of static prefix, number and cluster name.
By default is true.
-
CLIENT_PROTOCOL_UNVERIFIED_MESSAGE_BYTES
Client protocol message size limit (in bytes) for unverified connections (i.e. maximal length of authentication message). -
AUDIT_LOG_ENABLED
-
NETWORK_STATS_REFRESH_INTERVAL_SECONDS
The interval at which network stats (bytes sent and received) are re-calculated and published. Used only when Advanced Networking is enabled. -
METRICS_ENABLED
Enables/disables metrics collection altogether. This is a master switch for all metrics related functionality.NOTE: This property overrides
BaseMetricsConfig.isEnabled()
.Using
BaseMetricsConfig.setEnabled(boolean)
and the declarative counterparts are preferred over using this property. The main purpose of making metrics collection configurable from properties too is allowing operators to configure the metrics subsystem from the outside during investigation without touching or copying the configuration potentially embedded into a signed artifact. -
METRICS_MC_ENABLED
Enables/disables collecting metrics for Management Center. If disabled, Management Center can't consume the metrics from this member.NOTE: This property overrides
MetricsManagementCenterConfig.isEnabled()
.Using
MetricsManagementCenterConfig.setEnabled(boolean)
and the declarative counterparts are preferred over using this property. The main purpose of making metrics collection configurable from properties too is allowing operators to configure the metrics subsystem from the outside during investigation without touching or copying the configuration potentially embedded into a signed artifact. -
METRICS_MC_RETENTION
Sets the duration in seconds for which the collected metrics are retained and Management Center can consume them.NOTE: This property overrides
MetricsManagementCenterConfig.getRetentionSeconds()
.Using
MetricsManagementCenterConfig.setRetentionSeconds(int)
and the declarative counterparts are preferred over using this property. The main purpose of making metrics collection configurable from properties too is allowing operators to configure the metrics subsystem from the outside during investigation without touching or copying the configuration potentially embedded into a signed artifact. -
METRICS_JMX_ENABLED
Enables/disables exposing metrics on JMX.NOTE: This property overrides
MetricsJmxConfig.isEnabled()
.Using
MetricsJmxConfig.setEnabled(boolean)
and the declarative counterparts are preferred over using this property. The main purpose of making metrics collection configurable from properties too is allowing operators to configure the metrics subsystem from the outside during investigation without touching or copying the configuration potentially embedded into a signed artifact. -
METRICS_DEBUG
Enables collecting debug metrics. Debug metrics are sent to the diagnostics only. -
METRICS_DATASTRUCTURES
Enables/disables collecting metrics from the distributed data structures. By default, data structure metrics collection is enabled. -
METRICS_COLLECTION_FREQUENCY
Sets the metrics collection frequency in seconds.NOTE: This property overrides
BaseMetricsConfig.getCollectionFrequencySeconds()
.Using
BaseMetricsConfig.setCollectionFrequencySeconds(int)
and the declarative counterparts are preferred over using this property. The main purpose of making metrics collection configurable from properties too is allowing operators to configure the metrics subsystem from the outside during investigation without touching or copying the configuration potentially embedded into a signed artifact. -
MC_TRUSTED_INTERFACES
Deprecated.This property is valid only for 4.0.z patch stream. Use proper typed configuration in Hazelcast 4.1+.Allows to restrict management tasks execution on client protocol to given source IP address(es). -
WAN_CONSUMER_INVOCATION_THRESHOLD
Defines the pending invocation threshold for the Enterprise WAN replication implementation. Exceeding this threshold on a WAN consumer member makes the member delaying the WAN acknowledgment, thus slowing down the WAN publishers on the source side that send WAN events to the given WAN consumer. Setting this value to negative turns off the acknowledgement delaying feature. -
WAN_CONSUMER_ACK_DELAY_BACKOFF_INIT_MS
Defines the initial backoff delay for the Enterprise WAN implementation's consumer. It is used if the acknowledgment delaying feature is enabled by settingWAN_CONSUMER_INVOCATION_THRESHOLD
to a non-negative value and that the threshold is exceeded. -
WAN_CONSUMER_ACK_DELAY_BACKOFF_MAX_MS
Defines the maximum backoff delay for the Enterprise WAN implementation's consumer. It is used if the acknowledgment delaying feature is enabled by settingWAN_CONSUMER_INVOCATION_THRESHOLD
to a non-negative value and that the threshold is exceeded. -
WAN_CONSUMER_ACK_DELAY_BACKOFF_MULTIPLIER
Defines the multiplier (the speed of the function) for the backoff delay for the Enterprise WAN implementation's consumer. It is used if the acknowledgment delaying feature is enabled by settingWAN_CONSUMER_INVOCATION_THRESHOLD
to a non-negative value and that the threshold is exceeded.
-