Class ClusterProperty

java.lang.Object
com.hazelcast.spi.properties.ClusterProperty

public final class ClusterProperty extends Object
Defines the name and default value for Hazelcast properties.
  • Field Details

    • SOCKET_CLIENT_BUFFER_DIRECT

      public static final HazelcastProperty SOCKET_CLIENT_BUFFER_DIRECT
      If the bytebuffers used in the socket should be a direct bytebuffer (true) or a regular bytebuffer (false).
    • IO_THREAD_COUNT

      public static final HazelcastProperty 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} and { #IO_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.

    • CLIENT_PROTOCOL_UNVERIFIED_MESSAGE_BYTES

      public static final HazelcastProperty CLIENT_PROTOCOL_UNVERIFIED_MESSAGE_BYTES
      Client protocol message size limit (in bytes) for unverified connections (i.e. maximal length of authentication message).
    • PARTITION_COUNT

      public static final HazelcastProperty PARTITION_COUNT
      Total number of partitions in the Hazelcast cluster.
    • DISCOVERY_SPI_ENABLED

      public static final HazelcastProperty DISCOVERY_SPI_ENABLED

      Enables the Discovery SPI lookup

      Discovery SPI is disabled by default

    • PARTITIONING_STRATEGY_CLASS

      public static final HazelcastProperty PARTITIONING_STRATEGY_CLASS
      Class name implementing { com.hazelcast.partition.PartitioningStrategy}, which defines key to partition mapping. Member-side equivalent of client property { com.hazelcast.client.properties.ClientProperty#PARTITIONING_STRATEGY_CLASS}.
    • QUERY_RESULT_SIZE_LIMIT

      public static final HazelcastProperty 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 the { IMap#values()}, { IMap#keySet()} and { IMap#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 { QueryResultSizeLimiter#MINIMUM_MAX_RESULT_LIMIT} 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).

    • OPERATION_BACKUP_TIMEOUT_MILLIS

      public static final 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. If acks are not received from some backups, there will not be any rollback on other successful replicas.
    • BACKPRESSURE_ENABLED

      public static final HazelcastProperty 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 { #OPERATION_BACKUP_TIMEOUT_MILLIS} should be set to a larger value; above 60000 is recommended. Otherwise it can still happen backups accumulate.

    • PARTITION_OPERATION_THREAD_COUNT

      public static final HazelcastProperty 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

      public static final HazelcastProperty GENERIC_OPERATION_THREAD_COUNT
      The number of generic operation handler threads per member.

      The default is max(2, processors/2);

    • EVENT_THREAD_COUNT

      public static final HazelcastProperty EVENT_THREAD_COUNT
      Number of threads for the { com.hazelcast.spi.impl.eventservice.impl.EventServiceImpl} 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.
    • LOGGING_TYPE

      public static final HazelcastProperty LOGGING_TYPE
      Name of logging framework type to send logging events.
    • LOGGING_ENABLE_DETAILS

      public static final HazelcastProperty LOGGING_ENABLE_DETAILS
      Controls whether cluster name, ip and version should be included in all log messages.
    • LOGGING_SHUTDOWN

      public static final HazelcastProperty LOGGING_SHUTDOWN
      Controls whether Hazelcast will explicitly shutdown the logging implementation as part of Hazelcast graceful shutdown procedure. Default value is false.

      This property can be enabled when Hazelcast is the only application being executed in the JVM, for example, when running a Hazelcast cluster member in its own process. If the JVM process is expected to continue executing other application bits after Hazelcast is shut down, then if this property is true, logging may be disrupted.

      Since:
      5.4.0
    • SERIALIZATION_VERSION

      public static final HazelcastProperty SERIALIZATION_VERSION
      Hazelcast serialization version. This is single byte value between 1 and Max supported serialization version. BuildInfo#getSerializationVersion()