ildfly-client-all.27.0.0.Alpha5.source-code.jgroups-4.2.xsd Maven / Gradle / Ivy
Go to download
This artifact provides a single jar that contains all classes required to use remote EJB and JMS, including
all dependencies. It is intended for use by those not using maven, maven users should just import the EJB and
JMS BOM's instead (shaded JAR's cause lots of problems with maven, as it is very easy to inadvertently end up
with different versions on classes on the class path).
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Interval (in ms) at which a sent msg is resent
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Cipher engine transformation for asymmetric algorithm. Default is RSA
Initial public/private key length. Default is 2048
Change the secret group key when the coordinator changes. If enabled, this will take place even if change_key_on_leave is disabled.
When a node leaves, change the secret group key, preventing old members from eavesdropping
Number of ciphers in the pool to parallelize encrypt and decrypt requests
If true, the entire message (including payload and headers) is encrypted, else only the payload
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Max number of keys in key_map
Sets the level
Cryptographic Service Provider
If true, all messages are digitally signed by adding an encrypted checksum of the encrypted message to the header. Ignored if encrypt_entire_message is false
Determines whether to collect statistics (and expose them via JMX). Default is true
Cipher engine transformation for symmetric algorithm. Default is AES
Initialization vector length for symmetric encryption. A value must be specified here if the configured sym_algorithm requires an initialization vector.
Initial key length for matching symmetric algorithm. Default is 128
When sign_msgs is true, by default CRC32 is used to create the checksum. If use_adler is true, Adler32 will be used
If true, a separate KeyExchange protocol (somewhere in the stack) is used to fetch the shared secret key. If false, the default (built-in) key exchange protocol will be used.
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The fully qualified name of the class implementing the AuthToken interface
Do join or merge responses from the coordinator also need to be authenticated
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Max time (in ms) to wait until the threads which passed the barrier before it was closed have completed. If this time elapses, an exception will be thrown and state transfer will fail. 0 = wait forever
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max time barrier can be closed. Default is 60000 ms
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Port for discovery packets
Return from the discovery phase as soon as we have 1 coordinator response
Target address for broadcasts. This should be restricted to the local subnet, e.g. 192.168.1.255
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
Sends discovery packets to ports 8555 to (8555+port_range)
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
bypasses message bundling if set
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Number of backups to the coordinator. Queue State gets replicated to these nodes as well
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
bypasses message bundling if set
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Number of locks to be used for lock striping (for synchronized access to the server_lock entries)
Number of backups to the coordinator. Server locks get replicated to these nodes as well
Determines whether to collect statistics (and expose them via JMX). Default is true
By default, a lock owner is address:thread-id. If false, we only use the node's address. See https://issues.jboss.org/browse/JGRP-1886 for details
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
bypasses message bundling if set
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max time (im ms) to wait for lock info responses from members in a lock reconciliation phase
Number of locks to be used for lock striping (for synchronized access to the server_lock entries)
Determines whether to collect statistics (and expose them via JMX). Default is true
By default, a lock owner is address:thread-id. If false, we only use the node's address. See https://issues.jboss.org/browse/JGRP-1886 for details
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
clear OOB flags
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Compression level (from java.util.zip.Deflater) (0=no compression, 1=best speed, 9=best compression). Default is 9
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Minimal payload size of a message (in bytes) for compression to kick in. Default is 500 bytes
Number of inflaters/deflaters for concurrent processing. Default is 2
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Bypasses message bundling if true
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Number of backup coordinators. Modifications are asynchronously sent to all backup coordinators
Number of milliseconds to wait for reconciliation responses from all current members
Determines whether to collect statistics (and expose them via JMX). Default is true
Request timeouts (in ms). If the timeout elapses, a Timeout (runtime) exception will be thrown
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Loop back multicast messages
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Keep the delay constant. By default delay time randoms between 0 and upper bound
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Upper bound of number of milliseconds to delay passing a message up the stack (exclusive)
Number of nanoseconds to delay passing a message up the stack
Sets the level
Upper bound number of milliseconds to delay passing a message down the stack (exclusive)
Number of nanoseconds to delay passing a message down the stack
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Prints to stdout
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
The type of secret key to be sent up the stack (converted from DH). Should be the same as the algorithm part of ASYM_ENCRYPT.sym_algorithm if ASYM_ENCRYPT is used
The length of the secret key (in bits) to be sent up the stack. AES requires 128 bits. Should be the same as ASYM_ENCRYPT.sym_keylength if ASYM_ENCRYPT is used.
Determines whether to collect statistics (and expose them via JMX). Default is true
Max time (in ms) that a FETCH_SECRET_KEY down event will be ignored (if an existing request is in progress) until a new request for the secret key is sent to the keyserver
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Drops all messages (up or down) if true
Number of subsequent multicasts to drop in the down direction
Number of subsequent unicasts to drop in the down direction
Enables ergonomics: dynamically find the best values for properties at runtime
If discard_all is true, still sends messages to self
use a GUI or not
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Whether or not to copy multicast messages
Whether or not to copy unicast messages
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Number of copies of each incoming message (0=no copies)
Sets the level
Number of copies of each outgoing message (0=no copies)
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Number of times to send an are-you-alive message
Treat messages received from members as heartbeats. Note that this means we're updating a value in a hashmap every time a message is passing up the stack through FD, which is costly.
Determines whether to collect statistics (and expose them via JMX). Default is true
Timeout to suspect a node P if neither a heartbeat nor data were received from P.
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Interval at which a HEARTBEAT is sent to the cluster
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Timeout after which a node P is suspected if neither a heartbeat nor data were received from P
Interval at which the HEARTBEAT timeouts are checked
Uses TimeService to get the current time rather than calling System.nanoTime().
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Interval at which a HEARTBEAT is sent to the cluster
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Timeout after which a node P is suspected if neither a heartbeat nor data were received from P
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Interval at which a HEARTBEAT is sent to the cluster
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Timeout after which a node P is suspected if neither a heartbeat nor data were received from P
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Max time (in ms) that a liveness check for a single host can take
The command used to check a given host for liveness. Example: "ping". If null, InetAddress.isReachable() will be used by default
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
The interval (in ms) at which the hosts are checked for liveness
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Max time (in ms) after which a host is suspected if it failed all liveness checks
Uses TimeService to get the current time rather than System.currentTimeMillis. Might get removed soon, don't use !
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The NIC on which the ServerSocket should listen on. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL and NON_LOOPBACK
Max age (in ms) an element marked as removed has to have until it is removed
Max number of elements in the cache until deleted elements are removed
Start port for client socket. Default value of 0 picks a random port
Enables ergonomics: dynamically find the best values for properties at runtime
Use "external_addr" if you have hosts on different networks, behind firewalls. On each firewall, set up a port forwarding rule (sometimes called "virtual server") to the local IP (e.g. 192.168.1.100) of the host then on each host, set "external_addr" TCP transport parameter to the external (public IP) address of the firewall.
Used to map the internal port (bind_port) to an external port. Only used if > 0
Timeout for getting socket cache from coordinator
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Whether to use KEEP_ALIVE on the ping socket or not. Default is true
Sets the level
Number of attempts coordinator is solicited for socket cache until we give up
Number of ports to probe for start_port and client_bind_port
Max time in millis to wait for ping Socket.connect() to return
Start port for server socket. Default value of 0 picks a random port
Determines whether to collect statistics (and expose them via JMX). Default is true
Interval for broadcasting suspect messages
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
The max number of times my own information should be written to the storage after a view change
Interval (in ms) at which the info writer should kick in
Sets the level
The absolute path of the shared file
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
If set, a shutdown hook is registered with the JVM to remove the local address from the store. Default is true
If true, on a view change, the new coordinator removes all data except its own
If true, on a view change, the new coordinator removes files from old coordinators
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
Change the backend store when the view changes. If off, then the file is only changed on joins, but not on leaves. Enabling this will increase traffic to the backend store.
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
When a non-initial discovery is run, and InfoWriter is not running, write the data to disk (if true). JIRA: https://issues.jboss.org/browse/JGRP-2288
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Points to an XML file defining the fork-stacks, which will be created at initialization. Ignored if null
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
If enabled, state transfer events will be processed, else they will be passed up
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
The max number of bytes in a message. Larger messages will be fragmented. Default is 8192 bytes
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
The max number of bytes in a message. Larger messages will be fragmented
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
The max number of bytes in a message. Larger messages will be fragmented
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
The access key to AWS (S3)
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
The name of the AWS server
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
The max number of times my own information should be written to the storage after a view change
Interval (in ms) at which the info writer should kick in
Sets the level
The absolute path of the shared file
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
The port at which AWS is listening
When non-null, we use this pre-signed URL for DELETEs
When non-null, we use this pre-signed URL for PUTs
When non-null, we set location to prefix-UUID
If set, a shutdown hook is registered with the JVM to remove the local address from the store. Default is true
If true, on a view change, the new coordinator removes all data except its own
If true, on a view change, the new coordinator removes files from old coordinators
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
The secret access key to AWS (S3)
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
Skip the code which checks if a bucket exists in initialization
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
Change the backend store when the view changes. If off, then the file is only changed on joins, but not on leaves. Enabling this will increase traffic to the backend store.
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Whether or not to use SSL to connect to host:port
When a non-initial discovery is run, and InfoWriter is not running, write the data to disk (if true). JIRA: https://issues.jboss.org/browse/JGRP-2288
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Enables printing of down messages
Enables printing of up (received) messages
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
SQL to clear the table
The JDBC connection driver name
The JDBC connection password
The JDBC connection URL
The JDBC connection username
Finds a given entry by its address and cluster name, used to implement a contains()
To use a DataSource registered in JNDI, specify the JNDI name here. This is an alternative to all connection_* configuration options: if this property is not empty, then all connection relatedproperties must be empty.
SQL used to delete a row. Customizable, but keep the order of parameters and pick compatible types: 1)Own Address, as String 2)Cluster name, as String
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
The max number of times my own information should be written to the storage after a view change
Interval (in ms) at which the info writer should kick in
If not empty, this SQL statement will be performed at startup.Customize it to create the needed table on those databases which permit table creation attempt without losing data, such as PostgreSQL and MySQL (using IF NOT EXISTS). To allow for creation attempts, errors performing this statement will be loggedbut not considered fatal. To avoid any DDL operation, set this to an empty string.
SQL used to insert a new row. Customizable, but keep the order of parameters and pick compatible types: 1)Own Address, as String 2)Cluster name, as String 3)Serialized PingData as byte[]
Sets the level
The absolute path of the shared file
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
If set, a shutdown hook is registered with the JVM to remove the local address from the store. Default is true
If true, on a view change, the new coordinator removes all data except its own
If true, on a view change, the new coordinator removes files from old coordinators
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
SQL used to fetch all node's PingData. Customizable, but keep the order of parameters and pick compatible types: only one parameter needed, String compatible, representing the Cluster name. Must return a byte[], the Serialized PingData as it was stored by the insert_single_sql statement. Must select primary keys subsequently for cleanup to work properly
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
Change the backend store when the view changes. If off, then the file is only changed on joins, but not on leaves. Enabling this will increase traffic to the backend store.
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
When a non-initial discovery is run, and InfoWriter is not running, write the data to disk (if true). JIRA: https://issues.jboss.org/browse/JGRP-2288
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
handle multicast messages
Time to sleep (in ms) from the reception of the first message to sending a batch up
Determines whether to collect statistics (and expose them via JMX). Default is true
handle unicast messages
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Interval (in ms) after which we check for view inconsistencies
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Interval (in milliseconds) when the next info message will be sent. A random value is picked from range [1..max_interval]
The max number of merge participants to be involved in a merge. 0 sets this to unlimited.
Minimum time in ms before sending an info message
If true, only coordinators periodically check view consistency, otherwise everybody runs this task (https://issues.jboss.org/browse/JGRP-2092). Might get removed without notice.
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max time (in ms) to block
Max times to block for the listed messages sizes (Message.getLength()). Example: "1000:10,5000:30,10000:500"
Max number of bytes to send per receiver until an ack must be received to proceed
Computed as max_credits x min_theshold unless explicitly set
The threshold (as a percentage of max_credits) at which a receiver sends more credits to a sender. Example: if max_credits is 1'000'000, and min_threshold 0.25, then we send ca. 250'000 credits to P once we've got only 250'000 credits left for P (we've received 750'000 bytes from P)
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max time (in ms) to block
Max times to block for the listed messages sizes (Message.getLength()). Example: "1000:10,5000:30,10000:500"
Max number of bytes to send per receiver until an ack must be received to proceed
Max number of bytes of all queued messages for a given destination. If a given destination has no credits left and the message cannot be added to the queue because it is full, then the sender thread will be blocked until there is again space available in the queue, or the protocol is stopped.
Computed as max_credits x min_theshold unless explicitly set
The threshold (as a percentage of max_credits) at which a receiver sends more credits to a sender. Example: if max_credits is 1'000'000, and min_threshold 0.25, then we send ca. 250'000 credits to P once we've got only 250'000 credits left for P (we've received 750'000 bytes from P)
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Bind address for multicast socket. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL and NON_LOOPBACK
The interface (NIC) which should be used by this transport
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Time to live for discovery packets. Default is 8
Sets the level
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
Multicast address to be used for discovery
Multicast port for discovery packets. Default is 7555
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
List of interfaces to receive multicasts on
If true, the transport should use all available interfaces to receive multicast messages
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
List of interfaces to send multicasts on
Whether send messages are sent on all interfaces. Default is false
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Stagger timeout (in ms). Staggering will be a random timeout in range [0 .. stagger_timeout]
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The absolute path of the directory for the disk cache. The mappings will be stored as individual files in this directory
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Number of samples to maintain for rolling average
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Rackspace API access key
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Name of the root container
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
The max number of times my own information should be written to the storage after a view change
Interval (in ms) at which the info writer should kick in
Sets the level
The absolute path of the shared file
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
Rackspace region, either UK or US
If set, a shutdown hook is registered with the JVM to remove the local address from the store. Default is true
If true, on a view change, the new coordinator removes all data except its own
If true, on a view change, the new coordinator removes files from old coordinators
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
Change the backend store when the view changes. If off, then the file is only changed on joins, but not on leaves. Enabling this will increase traffic to the backend store.
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Rackspace username
When a non-initial discovery is run, and InfoWriter is not running, write the data to disk (if true). JIRA: https://issues.jboss.org/browse/JGRP-2288
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max number of bytes to be sent in time_period ms. Blocks the sender if exceeded until a new time period has started
Determines whether to collect statistics (and expose them via JMX). Default is true
Number of milliseconds during which max_bytes bytes can be sent
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If false, all messages are passed down. Will be set to false if the bundler returns a queue size of -1
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
The max threshold (percentage between min_threshold and 1.0) above which all messages are dropped
The min threshold (percentage between 0 and 1.0) below which no message is dropped
Determines whether to collect statistics (and expose them via JMX). Default is true
The weight used to compute the average queue size. The higher the value is, the less the current queue size is taken into account. E.g. with 2, 25% of the current queue size and 75% of the old average is taken to compute the new average. In other words: with a high value, the average will take longer to reflect the current queueu size.
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Name of the bridge cluster
Properties of the bridge cluster (e.g. tcp.xml)
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Drops views received from below and instead generates global views and passes them up. A global view consists of the local view and the remote view, ordered by view ID. If true, no protocolwhich requires (local) views can sit on top of RELAY
If set to false, don't perform relaying. Used e.g. for backup clusters; unidirectional replication from one cluster to another, but not back. Can be changed at runtime
Description of the local cluster, e.g. "nyc". This is added to every address, so itshould be short. This is a mandatory property and must be set
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
When true, we pass the message up to the application and only then send an ack. When false, we send an ack first and only then pass the message up to the application.
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Interval (in milliseconds) at which we resend the RSVP request. Needs to be < timeout. 0 disables it.
Determines whether to collect statistics (and expose them via JMX). Default is true
Whether an exception should be thrown when the timeout kicks in, and we haven't yet received all acks. An exception would be thrown all the way up to JChannel.send(). If we use RSVP_NB, this will be ignored.
Max time in milliseconds to block for an RSVP'ed message (0 blocks forever).
The access key to AWS (S3)
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
The name of the AWS server
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
The max number of times my own information should be written to the storage after a view change
Interval (in ms) at which the info writer should kick in
Sets the level
The absolute path of the shared file
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
The port at which AWS is listening
When non-null, we use this pre-signed URL for DELETEs
When non-null, we use this pre-signed URL for PUTs
When non-null, we set location to prefix-UUID
If set, a shutdown hook is registered with the JVM to remove the local address from the store. Default is true
If true, on a view change, the new coordinator removes all data except its own
If true, on a view change, the new coordinator removes files from old coordinators
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
The secret access key to AWS (S3)
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
Skip the code which checks if a bucket exists in initialization
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
Change the backend store when the view changes. If off, then the file is only changed on joins, but not on leaves. Enabling this will increase traffic to the backend store.
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Whether or not to use SSL to connect to host:port
When a non-initial discovery is run, and InfoWriter is not running, write the data to disk (if true). JIRA: https://issues.jboss.org/browse/JGRP-2288
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The CallbackHandler to use when a node acts as a client (i.e. it is not the coordinator
The name to use when a node is acting as a client (i.e. it is not the coordinator. Will also be used to obtain the subject if using a JAAS login module
The password to use when a node is acting as a client (i.e. it is not the coordinator. Will also be used to obtain the subject if using a JAAS login module
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
The name of the JAAS login module to use to obtain a subject for creating the SASL client and server (optional). Only required by some SASL mechs (e.g. GSSAPI)
The name of the mech to require for authentication. Can be any mech supported by your local SASL provider. The JDK comes standard with CRAM-MD5, DIGEST-MD5, GSSAPI, NTLM
Properties specific to the chosen mech
The CallbackHandler to use when a node acts as a server (i.e. it is the coordinator
The fully qualified server name
Determines whether to collect statistics (and expose them via JMX). Default is true
How long to wait (in ms) for a response to a challenge
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Size of the set to store received seqnos (for duplicate checking)
Enables ergonomics: dynamically find the best values for properties at runtime
If true, all messages in the forward-table are sent to the new coord, else thye're dropped (https://issues.jboss.org/browse/JGRP-2268)
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Number of acks needed before going from ack-mode to normal mode. 0 disables this, which means that ack-mode is always on
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The bind address which should be used by this transport. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL, NON_LOOPBACK, match-interface, match-host, match-address
The port to which the transport binds. Default of 0 binds to any (ephemeral) port. See also port_range
The max number of elements in a bundler if the bundler supports size limitations
Number of spins before a real lock is acquired
The type of bundler used ("ring-buffer", "transfer-queue" (default), "sender-sends" or "no-bundler") or the fully qualified classname of a Bundler implementation
The wait strategy for a RingBuffer
Use a TCP socket to listen for probe requests (ignored if enable_diagnostics is false)
Use a multicast socket to listen for probe requests (ignored if enable_diagnostics is false)
Multicast address for diagnostic probing. Used when diag_enable_udp is true
Bind address for diagnostic probing. Used when diag_enable_tcp is true
Comma delimited list of interfaces (IP addresses or interface names) that the diagnostics multicast socket should bind to
Authorization passcode for diagnostics. If specified every probe query will be authorized
Port for diagnostic probing. Default is 7500
The number of ports to be probed for an available port (TCP)
TTL of the diagnostics multicast socket
Switch to enable diagnostic probing. Default is true
Enables ergonomics: dynamically find the best values for properties at runtime
Use "external_addr" if you have hosts on different networks, behind firewalls. On each firewall, set up a port forwarding rule (sometimes called "virtual server") to the local IP (e.g. 192.168.1.100) of the host then on each host, set "external_addr" TCP transport parameter to the external (public IP) address of the firewall.
Used to map the internal port (bind_port) to an external port. Only used if > 0
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
logger level (see javadocs)
whether or not warnings about messages from different groups are logged
whether or not warnings about messages from members with a different version are discarded
Time (in ms) after which entries in the logical address cache marked as removable can be removed. 0 never removes any entries (not recommended)
Max number of elements in the logical address cache before eviction starts
Interval (in ms) at which the reaper task scans logical_addr_cache and removes entries marked as removable. 0 disables reaping.
Whether or not to make a copy of a message before looping it back up. Don't use this; might get removed without warning
Loop back the message on a separate thread or use the current thread. Don't use this; might get removed without warning
Maximum number of bytes for messages to be queued until they are sent
The fully qualified name of a class implementing MessageProcessingPolicy
Max number of messages buffered for consumption of the delivery thread in MaxOneThreadPerSender. 0 creates an unbounded buffer
The range of valid ports: [bind_port .. bind_port+port_range ]. 0 only binds to bind_port and fails if taken
Comma delimited list of interfaces (IP addresses or interface names) to receive multicasts on
If true, the transport should use all available interfaces to receive multicast messages
When an internal message cannot be processed because of a full internal pool, a new thread is created to process the message. Setting this value to false disables this, and the message will be discarded (like regular messages)
Determines whether to collect statistics (and expose them via JMX). Default is true
Time during which identical warnings about messages from a member from a different cluster will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Time during which identical warnings about messages from a member with a different version will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Path to which the thread dump will be written. Ignored if null
The number of times a thread pool needs to be full before a thread dump is logged
Thread naming pattern for threads in this channel. Valid values are "pcl": "p": includes the thread name, e.g. "Incoming thread-1", "UDP ucast receiver", "c": includes the cluster name, e.g. "MyCluster", "l": includes the local address of the current member, e.g. "192.168.5.1:5678"
Enable or disable the thread pool
Timeout in milliseconds to remove idle threads from pool
Maximum thread pool size for the thread pool
Minimum thread pool size for the thread pool
If true, the common fork-join pool will be used; otherwise a custom ForkJoinPool will be created
If enabled, a ForkJoinPool will be used rather than a ThreadPoolExecutor
Interval (in ms) at which the time service updates its timestamp. 0 disables the time service
Create fibers (if true) or regular threads (if false). This requires Java 15/Loom. If not present, use_fibers will be set to false and regular threads will be created. Note that the ThreadFactoryneeds to support this (DefaultThreadFactory does)
Use IP addresses (IpAddressUUID) instead of UUIDs as addresses. This is currently not compatible with RELAY2: disable if RELAY2 is used.
Timeout (in ms) to determine how long to wait until a request to fetch the physical address for a given logical address will be sent again. Subsequent requests for the same physical address will therefore be spaced at least who_has_cache_timeout ms apart
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Reorder down messages and message batches
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
max number of messages before we reorder queued messages and send them up
max time (in millis) before we pass the reordered messages up or down
Determines whether to collect statistics (and expose them via JMX). Default is true
Reorder up messages and message batches
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Print sent messages
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Print received messages
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The attributes to be fetched. In probe format ('jmx' or 'op' command)
The configuration file containing all protocols and attributes to be dumped
Enables ergonomics: dynamically find the best values for properties at runtime
File to which the periodic data is written
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Interval in ms at which the attributes are fetched and written to the file
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Bind address for the server or client socket. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL and NON_LOOPBACK
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Location of the keystore
Password to access the keystore
The type of the keystore. Types are listed in http://docs.oracle.com/javase/8/docs/technotes/tools/unix/keytool.html
Sets the level
The port at which the key server is listening. If the port is not available, the next port will be probed, up to port+port_range. Used by the key server (server) to create an SSLServerSocket and by clients to connect to the key server.
The port range to probe
If enabled, clients are authenticated as well (not just the server). Set to true to prevent rogue clients to fetch the secret group key (e.g. via man-in-the-middle attacks)
The type of secret key to be sent up the stack (converted from DH). Should be the same as the algorithm part of ASYM_ENCRYPT.sym_algorithm if ASYM_ENCRYPT is used
The argument to the session verifier
The fully qualified name of a class implementing SessionVerifier
Timeout (in ms) for a socket read. This applies for example to the initial SSL handshake, e.g. if the client connects to a non-JGroups service accidentally running on the same port
The SSL protocol to use. Defaults to TLSv1.2.
The SSL security provider. Defaults to null, which will use the default JDK provider.
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The bind address which should be used by the server socket. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL and NON_LOOPBACK
If set, then endpoint will be set to this address
Enables ergonomics: dynamically find the best values for properties at runtime
If set to false, then a destination of /a/b match /a/b/c, a/b/d, a/b/c/d etc
Forward received messages which don't have a StompHeader to clients
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Port on which the STOMP protocol listens for requests
If true, information such as a list of endpoints, or views, will be sent to all clients (via the INFO command). This allows for example intelligent clients to connect to a different server should a connection be closed.
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Authentication type
Authentication url
Return from the discovery phase as soon as we have 1 coordinator response
Name of the root container
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
The max number of times my own information should be written to the storage after a view change
Interval (in ms) at which the info writer should kick in
Sets the level
The absolute path of the shared file
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
Password
If set, a shutdown hook is registered with the JVM to remove the local address from the store. Default is true
If true, on a view change, the new coordinator removes all data except its own
If true, on a view change, the new coordinator removes files from old coordinators
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
Openstack Keystone tenant name
Change the backend store when the view changes. If off, then the file is only changed on joins, but not on leaves. Enabling this will increase traffic to the backend store.
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Username
When a non-initial discovery is run, and InfoWriter is not running, write the data to disk (if true). JIRA: https://issues.jboss.org/browse/JGRP-2288
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Alias used for recovering the key. Change the default
Cipher engine transformation for asymmetric algorithm. Default is RSA
Initial public/private key length. Default is 2048
Number of ciphers in the pool to parallelize encrypt and decrypt requests
If true, the entire message (including payload and headers) is encrypted, else only the payload
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Max number of keys in key_map
Password for recovering the key. Change the default
File on classpath that contains keystore repository
The type of the keystore. Types are listed in http://docs.oracle.com/javase/8/docs/technotes/tools/unix/keytool.html
Sets the level
Cryptographic Service Provider
If true, all messages are digitally signed by adding an encrypted checksum of the encrypted message to the header. Ignored if encrypt_entire_message is false
Determines whether to collect statistics (and expose them via JMX). Default is true
Password used to check the integrity/unlock the keystore. Change the default
Cipher engine transformation for symmetric algorithm. Default is AES
Initialization vector length for symmetric encryption. A value must be specified here if the configured sym_algorithm requires an initialization vector.
Initial key length for matching symmetric algorithm. Default is 128
When sign_msgs is true, by default CRC32 is used to create the checksum. If use_adler is true, Adler32 will be used
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The bind address which should be used by this transport. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL, NON_LOOPBACK, match-interface, match-host, match-address
The port to which the transport binds. Default of 0 binds to any (ephemeral) port. See also port_range
Size of the buffer of the BufferedInputStream in TcpConnection. A read always tries to read ahead as much data as possible into the buffer. 0: default size
Size of the buffer of the BufferedOutputStream in TcpConnection. Smaller messages are buffered until this size is exceeded or flush() is called. Bigger messages are sent immediately. 0: default size
The max number of elements in a bundler if the bundler supports size limitations
Number of spins before a real lock is acquired
The type of bundler used ("ring-buffer", "transfer-queue" (default), "sender-sends" or "no-bundler") or the fully qualified classname of a Bundler implementation
The wait strategy for a RingBuffer
Use a TCP socket to listen for probe requests (ignored if enable_diagnostics is false)
Use a multicast socket to listen for probe requests (ignored if enable_diagnostics is false)
Multicast address for diagnostic probing. Used when diag_enable_udp is true
Bind address for diagnostic probing. Used when diag_enable_tcp is true
Comma delimited list of interfaces (IP addresses or interface names) that the diagnostics multicast socket should bind to
Authorization passcode for diagnostics. If specified every probe query will be authorized
Port for diagnostic probing. Default is 7500
The number of ports to be probed for an available port (TCP)
TTL of the diagnostics multicast socket
Switch to enable diagnostic probing. Default is true
Enables ergonomics: dynamically find the best values for properties at runtime
Use "external_addr" if you have hosts on different networks, behind firewalls. On each firewall, set up a port forwarding rule (sometimes called "virtual server") to the local IP (e.g. 192.168.1.100) of the host then on each host, set "external_addr" TCP transport parameter to the external (public IP) address of the firewall.
Used to map the internal port (bind_port) to an external port. Only used if > 0
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
logger level (see javadocs)
whether or not warnings about messages from different groups are logged
whether or not warnings about messages from members with a different version are discarded
Time (in ms) after which entries in the logical address cache marked as removable can be removed. 0 never removes any entries (not recommended)
Max number of elements in the logical address cache before eviction starts
Interval (in ms) at which the reaper task scans logical_addr_cache and removes entries marked as removable. 0 disables reaping.
Whether or not to make a copy of a message before looping it back up. Don't use this; might get removed without warning
Loop back the message on a separate thread or use the current thread. Don't use this; might get removed without warning
Maximum number of bytes for messages to be queued until they are sent
The fully qualified name of a class implementing MessageProcessingPolicy
Max number of messages buffered for consumption of the delivery thread in MaxOneThreadPerSender. 0 creates an unbounded buffer
The range of valid ports: [bind_port .. bind_port+port_range ]. 0 only binds to bind_port and fails if taken
Comma delimited list of interfaces (IP addresses or interface names) to receive multicasts on
If true, the transport should use all available interfaces to receive multicast messages
size in bytes of TCP receiver window
size in bytes of TCP send window
When an internal message cannot be processed because of a full internal pool, a new thread is created to process the message. Setting this value to false disables this, and the message will be discarded (like regular messages)
Determines whether to collect statistics (and expose them via JMX). Default is true
Time during which identical warnings about messages from a member from a different cluster will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Time during which identical warnings about messages from a member with a different version will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Path to which the thread dump will be written. Ignored if null
The number of times a thread pool needs to be full before a thread dump is logged
Thread naming pattern for threads in this channel. Valid values are "pcl": "p": includes the thread name, e.g. "Incoming thread-1", "UDP ucast receiver", "c": includes the cluster name, e.g. "MyCluster", "l": includes the local address of the current member, e.g. "192.168.5.1:5678"
Enable or disable the thread pool
Timeout in milliseconds to remove idle threads from pool
Maximum thread pool size for the thread pool
Minimum thread pool size for the thread pool
If true, the common fork-join pool will be used; otherwise a custom ForkJoinPool will be created
If enabled, a ForkJoinPool will be used rather than a ThreadPoolExecutor
Interval (in ms) at which the time service updates its timestamp. 0 disables the time service
Create fibers (if true) or regular threads (if false). This requires Java 15/Loom. If not present, use_fibers will be set to false and regular threads will be created. Note that the ThreadFactoryneeds to support this (DefaultThreadFactory does)
Use IP addresses (IpAddressUUID) instead of UUIDs as addresses. This is currently not compatible with RELAY2: disable if RELAY2 is used.
Timeout (in ms) to determine how long to wait until a request to fetch the physical address for a given logical address will be sent again. Subsequent requests for the same physical address will therefore be spaced at least who_has_cache_timeout ms apart
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The bind address which should be used by this transport. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL, NON_LOOPBACK, match-interface, match-host, match-address
The port to which the transport binds. Default of 0 binds to any (ephemeral) port. See also port_range
Size of the buffer of the BufferedInputStream in TcpConnection. A read always tries to read ahead as much data as possible into the buffer. 0: default size
Size of the buffer of the BufferedOutputStream in TcpConnection. Smaller messages are buffered until this size is exceeded or flush() is called. Bigger messages are sent immediately. 0: default size
The max number of elements in a bundler if the bundler supports size limitations
Number of spins before a real lock is acquired
The type of bundler used ("ring-buffer", "transfer-queue" (default), "sender-sends" or "no-bundler") or the fully qualified classname of a Bundler implementation
The wait strategy for a RingBuffer
The address of a local network interface which should be used by client sockets to bind to. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL and NON_LOOPBACK
The local port a client socket should bind to. If 0, an ephemeral port will be picked.
Max time connection can be idle before being reaped (in ms)
If true, client sockets will not explicitly bind to bind_addr but will defer to the native socket
Use a TCP socket to listen for probe requests (ignored if enable_diagnostics is false)
Use a multicast socket to listen for probe requests (ignored if enable_diagnostics is false)
Multicast address for diagnostic probing. Used when diag_enable_udp is true
Bind address for diagnostic probing. Used when diag_enable_tcp is true
Comma delimited list of interfaces (IP addresses or interface names) that the diagnostics multicast socket should bind to
Authorization passcode for diagnostics. If specified every probe query will be authorized
Port for diagnostic probing. Default is 7500
The number of ports to be probed for an available port (TCP)
TTL of the diagnostics multicast socket
Switch to enable diagnostic probing. Default is true
Enables ergonomics: dynamically find the best values for properties at runtime
Use "external_addr" if you have hosts on different networks, behind firewalls. On each firewall, set up a port forwarding rule (sometimes called "virtual server") to the local IP (e.g. 192.168.1.100) of the host then on each host, set "external_addr" TCP transport parameter to the external (public IP) address of the firewall.
Used to map the internal port (bind_port) to an external port. Only used if > 0
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
logger level (see javadocs)
SO_LINGER in msec. Default of -1 disables it
Log a warning (or not) when ServerSocket.accept() throws an exception
whether or not warnings about messages from different groups are logged
whether or not warnings about messages from members with a different version are discarded
Time (in ms) after which entries in the logical address cache marked as removable can be removed. 0 never removes any entries (not recommended)
Max number of elements in the logical address cache before eviction starts
Interval (in ms) at which the reaper task scans logical_addr_cache and removes entries marked as removable. 0 disables reaping.
Whether or not to make a copy of a message before looping it back up. Don't use this; might get removed without warning
Loop back the message on a separate thread or use the current thread. Don't use this; might get removed without warning
Maximum number of bytes for messages to be queued until they are sent
The max number of bytes a message can have. If greater, an exception will be thrown. 0 disables this
The fully qualified name of a class implementing MessageProcessingPolicy
Max number of messages buffered for consumption of the delivery thread in MaxOneThreadPerSender. 0 creates an unbounded buffer
Max time to block on reading of peer address
The range of valid ports: [bind_port .. bind_port+port_range ]. 0 only binds to bind_port and fails if taken
Reaper interval in msec. Default is 0 (no reaping)
Comma delimited list of interfaces (IP addresses or interface names) to receive multicasts on
If true, the transport should use all available interfaces to receive multicast messages
Receiver buffer size in bytes
Send buffer size in bytes
Max time allowed for a socket creation in connection table
When an internal message cannot be processed because of a full internal pool, a new thread is created to process the message. Setting this value to false disables this, and the message will be discarded (like regular messages)
Determines whether to collect statistics (and expose them via JMX). Default is true
Time during which identical warnings about messages from a member from a different cluster will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Time during which identical warnings about messages from a member with a different version will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Should TCP no delay flag be turned on
Path to which the thread dump will be written. Ignored if null
The number of times a thread pool needs to be full before a thread dump is logged
Thread naming pattern for threads in this channel. Valid values are "pcl": "p": includes the thread name, e.g. "Incoming thread-1", "UDP ucast receiver", "c": includes the cluster name, e.g. "MyCluster", "l": includes the local address of the current member, e.g. "192.168.5.1:5678"
Enable or disable the thread pool
Timeout in milliseconds to remove idle threads from pool
Maximum thread pool size for the thread pool
Minimum thread pool size for the thread pool
If true, the common fork-join pool will be used; otherwise a custom ForkJoinPool will be created
If enabled, a ForkJoinPool will be used rather than a ThreadPoolExecutor
Interval (in ms) at which the time service updates its timestamp. 0 disables the time service
Create fibers (if true) or regular threads (if false). This requires Java 15/Loom. If not present, use_fibers will be set to false and regular threads will be created. Note that the ThreadFactoryneeds to support this (DefaultThreadFactory does)
Use IP addresses (IpAddressUUID) instead of UUIDs as addresses. This is currently not compatible with RELAY2: disable if RELAY2 is used.
Timeout (in ms) to determine how long to wait until a request to fetch the physical address for a given logical address will be sent again. Subsequent requests for the same physical address will therefore be spaced at least who_has_cache_timeout ms apart
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Comma delimited list of hosts to be contacted for initial membership
Sets the level
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
Interval (ms) by which a disconnected stub attempts to reconnect to the GossipRouter
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
Max time for socket creation. Default is 1000 msec
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Whether to use blocking (false) or non-blocking (true) connections. If GossipRouter is used, this needs to be false; if GossipRouterNio is used, it needs to be true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Comma delimited list of hosts to be contacted for initial membership. Ideally, all members should be listed. If this is not possible, send_cache_on_join and / or return_entire_cache can be set to true
Sets the level
max number of hosts to keep beyond the ones in initial_hosts
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
Number of additional ports to be probed for membership. A port_range of 0 does not probe additional ports. Example: initial_hosts=A[7800] port_range=0 probes A:7800, port_range=1 probes A:7800 and A:7801
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The bind address which should be used by this transport. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL, NON_LOOPBACK, match-interface, match-host, match-address
The port to which the transport binds. Default of 0 binds to any (ephemeral) port. See also port_range
The max number of elements in a bundler if the bundler supports size limitations
Number of spins before a real lock is acquired
The type of bundler used ("ring-buffer", "transfer-queue" (default), "sender-sends" or "no-bundler") or the fully qualified classname of a Bundler implementation
The wait strategy for a RingBuffer
The address of a local network interface which should be used by client sockets to bind to. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL and NON_LOOPBACK
The local port a client socket should bind to. If 0, an ephemeral port will be picked.
Max time connection can be idle before being reaped (in ms)
If true, a partial write will make a copy of the data so a buffer can be reused
If true, client sockets will not explicitly bind to bind_addr but will defer to the native socket
Use a TCP socket to listen for probe requests (ignored if enable_diagnostics is false)
Use a multicast socket to listen for probe requests (ignored if enable_diagnostics is false)
Multicast address for diagnostic probing. Used when diag_enable_udp is true
Bind address for diagnostic probing. Used when diag_enable_tcp is true
Comma delimited list of interfaces (IP addresses or interface names) that the diagnostics multicast socket should bind to
Authorization passcode for diagnostics. If specified every probe query will be authorized
Port for diagnostic probing. Default is 7500
The number of ports to be probed for an available port (TCP)
TTL of the diagnostics multicast socket
Switch to enable diagnostic probing. Default is true
Enables ergonomics: dynamically find the best values for properties at runtime
Use "external_addr" if you have hosts on different networks, behind firewalls. On each firewall, set up a port forwarding rule (sometimes called "virtual server") to the local IP (e.g. 192.168.1.100) of the host then on each host, set "external_addr" TCP transport parameter to the external (public IP) address of the firewall.
Used to map the internal port (bind_port) to an external port. Only used if > 0
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
logger level (see javadocs)
SO_LINGER in msec. Default of -1 disables it
whether or not warnings about messages from different groups are logged
whether or not warnings about messages from members with a different version are discarded
Time (in ms) after which entries in the logical address cache marked as removable can be removed. 0 never removes any entries (not recommended)
Max number of elements in the logical address cache before eviction starts
Interval (in ms) at which the reaper task scans logical_addr_cache and removes entries marked as removable. 0 disables reaping.
Whether or not to make a copy of a message before looping it back up. Don't use this; might get removed without warning
Loop back the message on a separate thread or use the current thread. Don't use this; might get removed without warning
Maximum number of bytes for messages to be queued until they are sent
The max number of bytes a message can have. If greater, an exception will be thrown. 0 disables this
The max number of outgoing messages that can get queued for a given peer connection (before dropping them). Most messages will get retransmitted; this is mainly used at startup, e.g. to prevent dropped discovery requests or responses (sent unreliably, without retransmission).
The fully qualified name of a class implementing MessageProcessingPolicy
Max number of messages buffered for consumption of the delivery thread in MaxOneThreadPerSender. 0 creates an unbounded buffer
Max time to block on reading of peer address
The range of valid ports: [bind_port .. bind_port+port_range ]. 0 only binds to bind_port and fails if taken
Number of ms a reader thread on a given connection can be idle (not receiving any messages) until it terminates. New messages will start a new reader
Reaper interval in msec. Default is 0 (no reaping)
Comma delimited list of interfaces (IP addresses or interface names) to receive multicasts on
If true, the transport should use all available interfaces to receive multicast messages
Receiver buffer size in bytes
Send buffer size in bytes
Max time allowed for a socket creation in connection table
When an internal message cannot be processed because of a full internal pool, a new thread is created to process the message. Setting this value to false disables this, and the message will be discarded (like regular messages)
Determines whether to collect statistics (and expose them via JMX). Default is true
Time during which identical warnings about messages from a member from a different cluster will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Time during which identical warnings about messages from a member with a different version will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Should TCP no delay flag be turned on
Path to which the thread dump will be written. Ignored if null
The number of times a thread pool needs to be full before a thread dump is logged
Thread naming pattern for threads in this channel. Valid values are "pcl": "p": includes the thread name, e.g. "Incoming thread-1", "UDP ucast receiver", "c": includes the cluster name, e.g. "MyCluster", "l": includes the local address of the current member, e.g. "192.168.5.1:5678"
Enable or disable the thread pool
Timeout in milliseconds to remove idle threads from pool
Maximum thread pool size for the thread pool
Minimum thread pool size for the thread pool
If true, the common fork-join pool will be used; otherwise a custom ForkJoinPool will be created
If enabled, a ForkJoinPool will be used rather than a ThreadPoolExecutor
Interval (in ms) at which the time service updates its timestamp. 0 disables the time service
Create fibers (if true) or regular threads (if false). This requires Java 15/Loom. If not present, use_fibers will be set to false and regular threads will be created. Note that the ThreadFactoryneeds to support this (DefaultThreadFactory does)
Use IP addresses (IpAddressUUID) instead of UUIDs as addresses. This is currently not compatible with RELAY2: disable if RELAY2 is used.
Timeout (in ms) to determine how long to wait until a request to fetch the physical address for a given logical address will be sent again. Subsequent requests for the same physical address will therefore be spaced at least who_has_cache_timeout ms apart
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The bind address which should be used by this transport. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL, NON_LOOPBACK, match-interface, match-host, match-address
The port to which the transport binds. Default of 0 binds to any (ephemeral) port. See also port_range
The max number of elements in a bundler if the bundler supports size limitations
Number of spins before a real lock is acquired
The type of bundler used ("ring-buffer", "transfer-queue" (default), "sender-sends" or "no-bundler") or the fully qualified classname of a Bundler implementation
The wait strategy for a RingBuffer
Use a TCP socket to listen for probe requests (ignored if enable_diagnostics is false)
Use a multicast socket to listen for probe requests (ignored if enable_diagnostics is false)
Multicast address for diagnostic probing. Used when diag_enable_udp is true
Bind address for diagnostic probing. Used when diag_enable_tcp is true
Comma delimited list of interfaces (IP addresses or interface names) that the diagnostics multicast socket should bind to
Authorization passcode for diagnostics. If specified every probe query will be authorized
Port for diagnostic probing. Default is 7500
The number of ports to be probed for an available port (TCP)
TTL of the diagnostics multicast socket
Switch to enable diagnostic probing. Default is true
Enables ergonomics: dynamically find the best values for properties at runtime
Use "external_addr" if you have hosts on different networks, behind firewalls. On each firewall, set up a port forwarding rule (sometimes called "virtual server") to the local IP (e.g. 192.168.1.100) of the host then on each host, set "external_addr" TCP transport parameter to the external (public IP) address of the firewall.
Used to map the internal port (bind_port) to an external port. Only used if > 0
A comma-separated list of GossipRouter hosts, e.g. HostA[12001],HostB[12001]
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
logger level (see javadocs)
whether or not warnings about messages from different groups are logged
whether or not warnings about messages from members with a different version are discarded
Time (in ms) after which entries in the logical address cache marked as removable can be removed. 0 never removes any entries (not recommended)
Max number of elements in the logical address cache before eviction starts
Interval (in ms) at which the reaper task scans logical_addr_cache and removes entries marked as removable. 0 disables reaping.
Whether or not to make a copy of a message before looping it back up. Don't use this; might get removed without warning
Loop back the message on a separate thread or use the current thread. Don't use this; might get removed without warning
Maximum number of bytes for messages to be queued until they are sent
The fully qualified name of a class implementing MessageProcessingPolicy
Max number of messages buffered for consumption of the delivery thread in MaxOneThreadPerSender. 0 creates an unbounded buffer
The range of valid ports: [bind_port .. bind_port+port_range ]. 0 only binds to bind_port and fails if taken
Comma delimited list of interfaces (IP addresses or interface names) to receive multicasts on
If true, the transport should use all available interfaces to receive multicast messages
Interval in msec to attempt connecting back to router in case of torn connection. Default is 5000 msec
When an internal message cannot be processed because of a full internal pool, a new thread is created to process the message. Setting this value to false disables this, and the message will be discarded (like regular messages)
Determines whether to collect statistics (and expose them via JMX). Default is true
Time during which identical warnings about messages from a member from a different cluster will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Time during which identical warnings about messages from a member with a different version will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Should TCP no delay flag be turned on
Path to which the thread dump will be written. Ignored if null
The number of times a thread pool needs to be full before a thread dump is logged
Thread naming pattern for threads in this channel. Valid values are "pcl": "p": includes the thread name, e.g. "Incoming thread-1", "UDP ucast receiver", "c": includes the cluster name, e.g. "MyCluster", "l": includes the local address of the current member, e.g. "192.168.5.1:5678"
Enable or disable the thread pool
Timeout in milliseconds to remove idle threads from pool
Maximum thread pool size for the thread pool
Minimum thread pool size for the thread pool
If true, the common fork-join pool will be used; otherwise a custom ForkJoinPool will be created
If enabled, a ForkJoinPool will be used rather than a ThreadPoolExecutor
Interval (in ms) at which the time service updates its timestamp. 0 disables the time service
Create fibers (if true) or regular threads (if false). This requires Java 15/Loom. If not present, use_fibers will be set to false and regular threads will be created. Note that the ThreadFactoryneeds to support this (DefaultThreadFactory does)
Use IP addresses (IpAddressUUID) instead of UUIDs as addresses. This is currently not compatible with RELAY2: disable if RELAY2 is used.
Whether to use blocking (false) or non-blocking (true) connections. If GossipRouter is used, this needs to be false; if GossipRouterNio is used, it needs to be true
Timeout (in ms) to determine how long to wait until a request to fetch the physical address for a given logical address will be sent again. Subsequent requests for the same physical address will therefore be spaced at least who_has_cache_timeout ms apart
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The bind address which should be used by this transport. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL, NON_LOOPBACK, match-interface, match-host, match-address
The port to which the transport binds. Default of 0 binds to any (ephemeral) port. See also port_range
The max number of elements in a bundler if the bundler supports size limitations
Number of spins before a real lock is acquired
The type of bundler used ("ring-buffer", "transfer-queue" (default), "sender-sends" or "no-bundler") or the fully qualified classname of a Bundler implementation
The wait strategy for a RingBuffer
Use a TCP socket to listen for probe requests (ignored if enable_diagnostics is false)
Use a multicast socket to listen for probe requests (ignored if enable_diagnostics is false)
Multicast address for diagnostic probing. Used when diag_enable_udp is true
Bind address for diagnostic probing. Used when diag_enable_tcp is true
Comma delimited list of interfaces (IP addresses or interface names) that the diagnostics multicast socket should bind to
Authorization passcode for diagnostics. If specified every probe query will be authorized
Port for diagnostic probing. Default is 7500
The number of ports to be probed for an available port (TCP)
TTL of the diagnostics multicast socket
If true, disables IP_MULTICAST_LOOP on the MulticastSocket (for sending and receiving of multicast packets). IP multicast packets send on a host P will therefore not be received by anyone on P. Use with caution.
Switch to enable diagnostic probing. Default is true
Enables ergonomics: dynamically find the best values for properties at runtime
Use "external_addr" if you have hosts on different networks, behind firewalls. On each firewall, set up a port forwarding rule (sometimes called "virtual server") to the local IP (e.g. 192.168.1.100) of the host then on each host, set "external_addr" TCP transport parameter to the external (public IP) address of the firewall.
Used to map the internal port (bind_port) to an external port. Only used if > 0
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Multicast toggle. If false multiple unicast datagrams are sent instead of one multicast. Default is true
The time-to-live (TTL) for multicast datagram packets. Default is 8
logger level (see javadocs)
whether or not warnings about messages from different groups are logged
whether or not warnings about messages from members with a different version are discarded
Time (in ms) after which entries in the logical address cache marked as removable can be removed. 0 never removes any entries (not recommended)
Max number of elements in the logical address cache before eviction starts
Interval (in ms) at which the reaper task scans logical_addr_cache and removes entries marked as removable. 0 disables reaping.
Whether or not to make a copy of a message before looping it back up. Don't use this; might get removed without warning
Loop back the message on a separate thread or use the current thread. Don't use this; might get removed without warning
Maximum number of bytes for messages to be queued until they are sent
The multicast address used for sending and receiving packets
The multicast port used for sending and receiving packets. Default is 7600
Number of multicast receiver threads, all reading from the same MulticastSocket. If de-serialization is slow, increasing the number of receiver threads might yield better performance.
Receive buffer size of the multicast datagram socket
Send buffer size of the multicast datagram socket
The fully qualified name of a class implementing MessageProcessingPolicy
Max number of messages buffered for consumption of the delivery thread in MaxOneThreadPerSender. 0 creates an unbounded buffer
The range of valid ports: [bind_port .. bind_port+port_range ]. 0 only binds to bind_port and fails if taken
Comma delimited list of interfaces (IP addresses or interface names) to receive multicasts on
If true, the transport should use all available interfaces to receive multicast messages
When an internal message cannot be processed because of a full internal pool, a new thread is created to process the message. Setting this value to false disables this, and the message will be discarded (like regular messages)
Determines whether to collect statistics (and expose them via JMX). Default is true
Time during which identical warnings about messages from a member from a different cluster will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Time during which identical warnings about messages from a member with a different version will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Suppresses warnings on Mac OS (for now) about not enough buffer space when sending a datagram packet
Path to which the thread dump will be written. Ignored if null
The number of times a thread pool needs to be full before a thread dump is logged
Thread naming pattern for threads in this channel. Valid values are "pcl": "p": includes the thread name, e.g. "Incoming thread-1", "UDP ucast receiver", "c": includes the cluster name, e.g. "MyCluster", "l": includes the local address of the current member, e.g. "192.168.5.1:5678"
Enable or disable the thread pool
Timeout in milliseconds to remove idle threads from pool
Maximum thread pool size for the thread pool
Minimum thread pool size for the thread pool
If true, the common fork-join pool will be used; otherwise a custom ForkJoinPool will be created
If enabled, a ForkJoinPool will be used rather than a ThreadPoolExecutor
Interval (in ms) at which the time service updates its timestamp. 0 disables the time service
Traffic class for sending unicast and multicast datagrams. Default is 0
Number of unicast receiver threads, all reading from the same DatagramSocket. If de-serialization is slow, increasing the number of receiver threads might yield better performance.
Receive buffer size of the unicast datagram socket
Send buffer size of the unicast datagram socket
Create fibers (if true) or regular threads (if false). This requires Java 15/Loom. If not present, use_fibers will be set to false and regular threads will be created. Note that the ThreadFactoryneeds to support this (DefaultThreadFactory does)
Use IP addresses (IpAddressUUID) instead of UUIDs as addresses. This is currently not compatible with RELAY2: disable if RELAY2 is used.
Timeout (in ms) to determine how long to wait until a request to fetch the physical address for a given logical address will be sent again. Subsequent requests for the same physical address will therefore be spaced at least who_has_cache_timeout ms apart
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max time (in ms) to block
Max times to block for the listed messages sizes (Message.getLength()). Example: "1000:10,5000:30,10000:500"
Max number of bytes to send per receiver until an ack must be received to proceed
Computed as max_credits x min_theshold unless explicitly set
The threshold (as a percentage of max_credits) at which a receiver sends more credits to a sender. Example: if max_credits is 1'000'000, and min_threshold 0.25, then we send ca. 250'000 credits to P once we've got only 250'000 credits left for P (we've received 750'000 bytes from P)
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max time (in ms) to block
Max times to block for the listed messages sizes (Message.getLength()). Example: "1000:10,5000:30,10000:500"
Max number of bytes to send per receiver until an ack must be received to proceed
Max number of bytes of all queued messages for a given destination. If a given destination has no credits left and the message cannot be added to the queue because it is full, then the sender thread will be blocked until there is again space available in the queue, or the protocol is stopped.
Computed as max_credits x min_theshold unless explicitly set
The threshold (as a percentage of max_credits) at which a receiver sends more credits to a sender. Example: if max_credits is 1'000'000, and min_threshold 0.25, then we send ca. 250'000 credits to P once we've got only 250'000 credits left for P (we've received 750'000 bytes from P)
Determines whether to collect statistics (and expose them via JMX). Default is true
Send an ack immediately when a batch of ack_threshold (or more) messages is received. Otherwise send delayed acks. If 1, ack single messages (similar to UNICAST)
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Time (in ms) until a connection marked to be closed will get removed. 0 disables this
Time (in milliseconds) after which an idle incoming or outgoing connection is closed. The connection will get re-established when used again. 0 disables connection reaping. Note that this creates lingering connection entries, which increases memory over time.
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
logger level (see javadocs)
If true, trashes warnings about retransmission messages not found in the xmit_table (used for testing)
Max number of milliseconds we try to retransmit a message to any given member. After that, the connection is removed. Any new connection to that member will start with seqno #1 again. 0 disables this
Max number of messages to ask for in a retransmit request. 0 disables this and uses the max bundle size in the transport
Determines whether to collect statistics (and expose them via JMX). Default is true
Min time (in ms) to elapse for successive SEND_FIRST_SEQNO messages to be sent to the same sender
Interval (in milliseconds) at which messages in the send windows are resent
Number of milliseconds after which the matrix in the retransmission table is compacted (only for experts)
Number of elements of a row of the matrix in the retransmission table; gets rounded to the next power of 2 (only for experts). The capacity of the matrix is xmit_table_num_rows * xmit_table_msgs_per_row
Number of rows of the matrix in the retransmission table (only for experts)
Resize factor of the matrix in the retransmission table (only for experts)
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Interface for ICMP pings. Used if use_icmp is true The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL and NON_LOOPBACK
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Number of verify heartbeats sent to a suspected member
Determines whether to collect statistics (and expose them via JMX). Default is true
Number of millisecs to wait for a response from a suspected member
Use InetAddress.isReachable() to verify suspected member instead of regular messages
Send the I_AM_NOT_DEAD message back as a multicast rather than as multiple unicasts (default is false)
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
When set, FLUSH is bypassed, same effect as if FLUSH wasn't in the config at all
Reconciliation phase toggle. Default is true
Timeout to wait for UNBLOCK after STOP_FLUSH is issued. Default is 2000 msec
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Retry timeout after an unsuccessful attempt to quiet the cluster (first flush phase). Default is 3000 msec
Timeout (per atttempt) to quiet the cluster during the first flush phase. Default is 2000 msec
Determines whether to collect statistics (and expose them via JMX). Default is true
Max time to keep channel blocked in flush. Default is 8000 msec
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Time (in ms) to wait for another discovery round when all discovery responses were clients. A timeout of 0 means don't wait at all.
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Whether or not to install a new view locally first before broadcasting it (only done at the coord ). Set to true automatically if a state transfer protocol is detected
Join timeout
Max time (in ms) to wait for a LEAVE response after a LEAVE req has been sent to the coord
Sets the level
Logs failures for collecting all view acks if true
Logs warnings for reception of views less than the current, and for views which don't include self
Max view bundling timeout if view bundling is turned on
Number of join attempts before we give up and become a singleton. 0 means 'never give up'.
Number of times a LEAVE request is sent to the coordinator (without receiving a LEAVE response, before giving up and leaving anyway (failure detection will eventually exclude the left member). A value of 0 means wait forever
The fully qualified name of a class implementing MembershipChangePolicy.
Timeout (in ms) to complete merge
Max number of old members to keep in history. Default is 50
Number of views to store in history
Print local address of this member after connect. Default is true
Print physical address(es) on startup
When true, left and joined members are printed in addition to the view
Determines whether to collect statistics (and expose them via JMX). Default is true
If true, then GMS is allowed to send VIEW messages with delta views, otherwise it always sends full views. See https://issues.jboss.org/browse/JGRP-1354 for details.
Use flush for view changes. Default is true
Time in ms to wait for all VIEW acks (0 == wait forever. Default is 2000 msec
View bundling toggle
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Size of the queue to hold messages received after creating the channel, but before being connected (is_server=false). After becoming the server, the messages in the queue are fed into up() and the queue is cleared. The motivation is to avoid retransmissions (see https://issues.jboss.org/browse/JGRP-1509 for details). 0 disables the queue.
Should messages delivered to application be discarded
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
logger level (see javadocs)
discards warnings about promiscuous traffic
If false, trashes warnings about retransmission messages not found in the xmit_table (used for testing)
Timeout to rebroadcast messages. Default is 2000 msec
Max number of messages to ask for in a retransmit request. 0 disables this and uses the max bundle size in the transport
If enabled, multicasts the highest sent seqno every xmit_interval ms. This is skipped if a regular message has been multicast, and the task aquiesces if the highest sent seqno hasn't changed for resend_last_seqno_max_times times. Used to speed up retransmission of dropped last messages (JGRP-1904)
Max number of times the last seqno is resent before acquiescing if last seqno isn't incremented
Determines whether to collect statistics (and expose them via JMX). Default is true
Time during which identical warnings about messages from a non member will be suppressed. 0 disables this (every warning will be logged). Setting the log level to ERROR also disables this.
Retransmit retransmit responses (messages) using multicast rather than unicast
Use a multicast to request retransmission of missing messages
Ask a random member for retransmission of a missing message. Default is false
Interval (in milliseconds) at which missing messages (from all retransmit buffers) are retransmitted
Number of milliseconds after which the matrix in the retransmission table is compacted (only for experts)
Number of elements of a row of the matrix in the retransmission table; gets rounded to the next power of 2 (only for experts). The capacity of the matrix is xmit_table_num_rows * xmit_table_msgs_per_row
Number of rows of the matrix in the retransmission table (only for experts)
Resize factor of the matrix in the retransmission table (only for experts)
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Average time to send a STABLE message
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Maximum number of bytes received in all messages before sending a STABLE message is triggered
Wether or not to send the STABLE messages to all members of the cluster, or to the current coordinator only. The latter reduces the number of STABLE messages, but also generates more work on the coordinator
Delay before stability message is sent
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Size (in bytes) of the state transfer buffer
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Maximum number of pool threads serving state requests
Keep alive for pool threads serving state requests
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
The interface (NIC) used to accept state requests. The following special values are also recognized: GLOBAL, SITE_LOCAL, LINK_LOCAL and NON_LOOPBACK
The interface (NIC) which should be used by this transport
The port listening for state requests. Default value of 0 binds to any (ephemeral) port
Size (in bytes) of the state transfer buffer
Enables ergonomics: dynamically find the best values for properties at runtime
Use "external_addr" if you have hosts on different networks, behind firewalls. On each firewall, set up a port forwarding rule (sometimes called "virtual server") to the local IP (e.g. 192.168.1.100) of the host then on each host, set "external_addr" TCP transport parameter to the external (public IP) address of the firewall.
Used to map the internal port (bind_port) to an external port. Only used if > 0
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Maximum number of pool threads serving state requests
Keep alive for pool threads serving state requests
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true, the creation of the relay channel (and the connect()) are done in the background. Async relay creation is recommended, so the view callback won't be blocked
Whether or not this node can become the site master. If false, and we become the coordinator, we won't start the bridge(s)
If true, a site master forwards messages received from other sites to randomly chosen members of the local site for load balancing, reducing work for itself
Name of the relay configuration
Whether or not we generate our own addresses in which we use can_become_site_master. If this property is false, can_become_site_master is ignored
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Maximum number of site masters. Setting this to a value greater than 1 means that we can have multiple site masters. If the value is greater than the number of cluster nodes, everyone in the site will be a site master (and thus join the global cluster
Whether or not to relay multicast (dest=null) messages
Name of the site (needs to be defined in the configuration)
Fully qualified name of a class implementing SiteMasterPicker
Ratio of members that are site masters, out of range [0..1] (0 disables this). The number of site masters is computes as Math.min(max_site_masters, view.size() * site_masters_ratio). See https://issues.redhat.com/browse/JGRP-2581 for details
Determines whether to collect statistics (and expose them via JMX). Default is true
Time (in ms) during which identical errors about no route to host will be suppressed. 0 disables this (every error will be logged).
Number of millis to wait for topology detection
If true, logs a warning if the FORWARD_TO_COORD protocol is not found. This property might get deprecated soon
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
Location of an XML file listing the rules to be installed
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Determines whether to collect statistics (and expose them via JMX). Default is true
Fully qualified name of a class implementing ProtocolHook, will be called after creation of the protocol (before init())
If true then the discovery is done on a separate timer thread. Should be set to true when discovery is blocking and/or takes more than a few milliseconds
If enabled, use a separate thread for every discovery request. Can be used with or without async_discovery
Return from the discovery phase as soon as we have 1 coordinator response
Expiry time of discovery responses in ms
DNS Address. This property will be assembled with the 'dns://' prefix. If this is specified, A records will be resolved through DnsContext.
DNS Context Factory. Used when DNS_PING is configured to use SRV record types and when using A types with a specific dns_address.
A comma-separated list of DNS queries for fetching members
DNS Record type
Enables ergonomics: dynamically find the best values for properties at runtime
Give the protocol a different ID if needed so we can have multiple instances of it in the same stack
Sets the level
Max size of the member list shipped with a discovery request. If we have more, the mbrs field in the discovery request header is nulled and members return the entire membership, not individual members
The max rank of this member to respond to discovery requests, e.g. if max_rank_to_reply=2 in {A,B,C,D,E}, only A (rank 1) and B (rank 2) will reply. A value <= 0 means everybody will reply. This attribute is ignored if TP.use_ip_addrs is false.
The number of times a discovery process is executed when finding initial members (https://issues.jboss.org/browse/JGRP-2317)
For SRV records returned by the DNS query, the non-0 ports returned by DNS areused. If this attribute is true, then the transport ports will also be used. Ignored for A records.
Whether or not to return the entire logical-physical address cache mappings on a discovery request, or not.
When a new node joins, and we have a static discovery protocol (TCPPING), then send the contents of the discovery cache to new and existing members if true (and we're the coord). Addresses JGRP-1903
If greater than 0, we'll wait a random number of milliseconds in range [0..stagger_timeout] before sending a discovery response. This prevents traffic spikes in large clusters when everyone sends their discovery response at the same time
Determines whether to collect statistics (and expose them via JMX). Default is true
If a persistent disk cache (PDC) is present, combine the discovery results with the contents of the disk cache before returning the results