Table of Contents Previous Next Index

System Configuration : System Properties in the gemfire.properties File

System Properties in the gemfire.properties File

This table lists the gemfire.properties settings used to join a distributed system. Distributed system members include applications, the cacheserver, and other GemFire processes.

Configuration Properties in gemfire.properties

gemfire.properties Attribute  

Description

Default

ack-severe-alert-threshold

Sends a severe warning alert to members in the distributed system, indicating that the member may be disconnected from the distributed system if they do not respond quickly enough. This time period begins after the ack-wait-threshold has elapsed.

0

ack-wait-threshold

The number of seconds a distributed message can wait for acknowledgment before it sends an alert to signal that something might be wrong with the system member that is unresponsive.

After sending this alert the waiter continues to wait. The alerts are logged in the system member’s log as warnings.

Legal values are in the range 0..2147483647.

15

archive-disk-space-limit

The maximum size (in megabytes) of all inactive statistic archive files combined. If this limit is exceeded, inactive archive files are deleted, oldest first, until the total size is within the limit. If set to zero, disk space usage is unlim­ited.

For details about statistics archiving, see Controlling the Size of Archive Files.

0

archive-file-size-limit

The maximum size (in megabytes) of a single statistic archive file. Once this limit is exceeded, a new statistic archive file is created, and the current archive file becomes inactive. If set to zero, file size is unlimited.

For details about statistics archiving, see Controlling the Size of Archive Files.

0

async-distribution-timeout

The number of milliseconds a process that is publishing to this process should attempt to distribute a cache operation before switching over to asynchronous messaging for this process. To enable asynchronous messaging, the value must be set above zero. If a thread that is publishing to the cache exceeds this value when attempting to distribute to this process, it will switch to asynchronous messaging until this process catches up, departs, or some specified limit is reached, such as asyncqueuetimeout or asyncmaxqueuesize.

Valid values are in the range 0..60000.

This setting controls only peer-to-peer communication and does not apply to client/server or multi-site communication.

0

async-max-queue-size

Limit on the size of asynchronous queues used by pro­cesses that are publishing to this process; see async-distribution-timeout. The maximum size in mega­bytes the queue can reach before the publisher asks this process to leave the distributed system. Only non-con­flated queuing is affected by this value (see enable-async-conflation in the GemFire Enterprise Devel­oper’s Guide).

Valid values are in the range 0..1024.

This setting controls only peer-to-peer communication and does not apply to client/server or multi-site communication.

8

async-queue-timeout

Limit on asynchronous queues used by processes that are publishing to this process; see async-distribution-timeout. The maximum milliseconds the publisher should wait with no distribution to this process before it asks this process to leave the distributed system. If a queu­ing publisher has not been able to send this process any cache operations prior to the timeout, it sends the depart request and this process attempts to close its cache and disconnect from the distributed system. For details see Slow Receivers with TCP/IP.

This setting controls only peer-to-peer communication and does not apply to client/server or multi-site communication.

60000

bind-address

Specifies the network adapter card the cache binds to for peer-to-peer communication. Also specifies the default location for GemFire servers to listen on, used unless overridden by the server-bind-address.

This is a machine-wide attribute used for system member and client/server communication. It has no effect on loca­tor location, unless the locator is embedded in a member process.

This is only relevant for multi-homed hosts—machines with multiple network cards. Specify the IP address, not the hostname, because each network card may not have a unique hostname. An empty string (the default) causes the member to listen on the default card for the machine.

For more information on multi-homed hosts and bind addresses, see Selecting a Network Adapter Through a Bind Address.

""

cache-xml-file

The default file to use to initialize a GemFire cache. For details, see Configuring the Cache in the GemFire Enter­prise Developer’s Guide.

cache.xml

conflate-events

Client/server configuration setting. This is a client-side property that is passed to the server. Allowable values are server, true, and false. With the server setting, this client’s servers use their own client queue conflation set­tings. With a true setting, the servers disregard their own configuration and enable conflation of events for all regions for the client. A false setting causes the client’s servers to disable conflation for all regions for the client.

server

conserve-sockets

Specifies whether sockets are shared by the system mem­ber’s threads. If set to true, threads share, and a mini­mum number of sockets are used to connect to the distributed system. If false, every application thread has its own sockets for distribution purposes.

Where possible, it is better to set conserve-sockets to true and enable the use of specific extra sockets in the application code if needed. For details on the API, see Controlling Socket Use in the GemFire Enterprise Devel­oper’s Guide.

true

departure-correlation-window

The number of seconds of process failure history kept by the system for correlating the loss of processes eligible to be the membership coordinator and the lead member. For more information, see New Membership and Loss of Members.

1800

disable-tcp

Disables the use of TCP/IP sockets for inter-cache com­munications, forcing the cache to use datagram (UDP) sockets for point-to-point messaging.

Valid values: true or false. For more information, see Peer-to-Peer Messaging and Distribution.

false

durable-client-id

The ID used by a client to indicate that it is durable. When a durable client connects to a server, this ID is used by the server to identify it. For details, see Durable Subscription Queues in the GemFire Enterprise Developer’s Guide.

empty string

(not durable)

durable-client-timeout

The number of seconds this disconnected durable client is kept alive and updates are accumulated for it by the server before it is terminated. For details, see Durable Subscrip­tion Queues in the GemFire Enterprise Developer’s Guide.

300

enable-network-partition-detection

If true, instructs the system to detect and handle splits in the distributed system, typically caused by a partitioning of the network where the distributed system is running. For information, see Handling Network Outages.

false

enable-time-statistics

Enables time-based statistics for the distributed system and caching. For performance reasons, time-based statis­tics are disabled by default. For more information, see System Statistics.

false

license-file

The name of the license file that contains the license for the distributed system member.

For details, see License File.

gemfireLicense.zip

license-type

The type of license used by this distributed system mem­ber: evaluation, development, or production. All members of a distributed system must have the same type of license.

For details, see License Type.

evaluation

locators

The list of locators used by system members to communi­cate with running locators. The list must include all loca­tors currently in use, and must be configured consistently for every member of the distributed system. If the list is empty, locators are not used.

Each element of the list must be a host name followed by a port number enclosed in brackets. Multiple elements must be separated by commas, and white space is not per­mitted in the list. For example:

              host1[port1],host2[port2],...
            

Processes connecting to a locator started with a bind address need to provide the bind address specification in their locators property. You can use host-name@bind-address or just bind-address:

              locators=bind-address1[port1],bind-address2[port2]
            

and

              locators=host-name1@bind-address1[port1],host-name2@bind-address2[port2]
            
               
            

For more on the bind address, see Selecting a Network Adapter Through a Bind Address.

For details about using locators and multicast ports, see Member Discovery.

""

log-disk-space-limit

The maximum size in megabytes of all inactive log files combined. This value is compared to the total size of all inactive logs in the same directory as the main log and with the same base name as the main log. If this limit is exceeded, inactive log files are deleted, oldest first, until the total size is within the limit. If set to zero, disk space usage is unlimited.

For details about logging, see GemFire System Logging.

0

log-file

The file to which a running system member writes log messages. For details about logging, see GemFire System Logging.

null (standard out­put) for
applications, locator.log for the locator and cacheserver.log for the cacheserver

log-file-size-limit

The maximum size in megabytes to which a log file can grow before it is closed and logging rolls on to a new (child) log file. If set to 0 (the default), log rolling is dis­abled.

For details about logging, see GemFire System Logging.

0

log-level

The level of detail of the messages written to the system member’s log. Valid values are fine, config, info, warning, error, severe, and none.

Setting log-level to one of the ordered levels causes all messages of that level and greater severity to be printed.

Lowering the log-level reduces system resource con­sumption while still providing some logging information for failure analysis.

For details about logging, see GemFire System Logging.

config

max-num-reconnect-tries

The maximum number or times to attempt to reconnect to the distributed system when membership roles are miss­ing. The roles are based on how a member relates to other members, or what purpose a member fills in a dis­tributed system. These optional roles specify the circum­stances where an application or cache server continues operation after incidents such as network failures.

3

max-wait-time-reconnect

The maximum number of milliseconds to wait for the dis­tributed system to reconnect in case one of the member­ship roles is lost. The system attempts to reconnect max-num-reconnect-tries, and this timeout period applies to each reconnection attempt.

10000

mcast-address

The multicast address used to discover other members of the distributed system. Only used if mcast-port is non-zero.

Select different multicast addresses and ports for different distributed systems. Do not just use different addresses.

This default multicast address was assigned by IANA (http://www.iana.org/assignments/multicast-addresses). Consult the IANA chart when selecting another multicast address to use with GemFire.

This attribute must be consistent across the distributed system. For details about using locators and multicast ports, see Member Discovery.

This setting controls only peer-to-peer communication and does not apply to client/server or multi-site communication. If multicast is enabled, distributed regions use it for most communication. Partitioned regions only use multicast for a few purposes, and mainly use either TCP or UDP unicast.

239.192.81.1

mcast-flow-control

A tuning property for the flow-of-control protocol for all no-ack UDP messaging, unicast and multicast. These three settings are separated by commas: byteAllowance, rechargeThreshold, and rechargeBlockMs.

For more information, see Tuning UDP Communication.

Valid values range from these minimums: 10000,0.1,500 to these maximums: no_maximum,0.5,60000].

This setting controls only peer-to-peer communication, generally between distributed regions.

1048576,0.25, 5000

mcast-port

The multicast port used to communicate with other mem­bers of the distributed system. If zero, multicast is dis­abled for both member discovery and distribution. Valid values are in the range 0..65535.

Select different multicast addresses and ports for different distributed systems. Do not just use different addresses.

This attribute must be consistent across the distributed system. For details about using locators and multicast ports, see Member Discovery.

This setting controls only peer-to-peer communication, generally between distributed regions. See the note in mcast-address.

10334

mcast-recv-buffer-size

The size of the socket buffer used for incoming multicast transmissions. You should set this high if there will be high volumes of messages.

The default setting of 1048576 is higher than the default OS maximum buffer size on Unix, which should be increased to at least 1 megabyte to provide high-volume messaging on Unix systems. For information on how to increase the receive buffer size for Unix systems, see Con­figuring Multicast Speed Limits.

Valid values are in the range 2048..OS_maximum.

This setting controls only peer-to-peer communication, generally between distributed regions. See the note in mcast-address.

1048576

mcast-send-buffer-size

The size of the socket buffer used for outgoing multicast transmissions.

Valid values are in the range 2048..OS_maximum.

This setting controls only peer-to-peer communication, generally between distributed regions. See the note in mcast-address.

65535

mcast-ttl

How far multicast messaging goes in your network. Sys­tem performance might be improved by reducing how far your multicast messaging goes in your network. A setting of 0 constrains multicast messaging to the machine.

This setting controls only peer-to-peer communication, generally between distributed regions. See the note in mcast-address.

32

member-timeout

The timeout interval, in milliseconds, used to determine whether another system member is alive. When another member appears to be gone, GemFire tries to contact it twice before quitting. This property sets the timeout inter­val between each of these attempts.

Valid values are in the range 1000..600000.

5000

name

A symbolic name used to identify the system member.

""

remove-unresponsive-client

When this property is set to true, the primary server drops unresponsive clients from all secondaries and on itself. A client with HARegion queue capacity full is treated as unresponsive client. Set this property to true to avoid blocking puts on the server when maximum capac­ity client’s HARegion queue is reached.

false

roles

A comma-delimited list of strings specifying the member­ship roles that a member performs in the distributed sys­tem. These optional roles specify the circumstances under which an application or cache server continues operation after incidents such as network failures. Any number of members can be configured to perform the same role, and a member can be configured to perform any number of roles. For related configuration options, see max-num-reconnect-tries and max-wait-time-reconnect. For details on member relationships, see Managing Mem­ber Relationships in the GemFire Enterprise Developer’s Guide.

""

security-*

Any custom properties needed by the AuthInitialize or Authenticator callbacks.

""

security-client-accessor

Static creation method returning an AccessControl object, which determines authorization of client-server cache operations. It specifies the callback that should be invoked in the pre-operation phase, which is when the request for the operation is received from the client.

""

security-client-accessor-pp

Specifies the callback that should be invoked in the post-operation phase, which is when the operation has com­pleted on the server but before the result is sent to the cli­ent. The post-operation callback is also invoked for the updates that are sent from server to client through the noti­fication channel.

""

security-client-auth-init

Static creation method returning an AuthInitialize object, which obtains credentials for peers in a distributed system. The obtained credentials should be acceptable to the Authenticator specified through the security-peer-authenticator property on the peers.

""

security-client-authenticator

Static creation method returning an Authenticator object, which is used by a peer to verify the credentials of the connecting peer.

""

security-client-dhalgo

For secure transmission of sensitive credentials like pass­words, you can encrypt the credentials using the Diffie-Hellman key exchange algorithm. You do this by setting the security-client-dhalgo system property on the clients to the name of a valid symmetric key cipher supported by the JDK.

""

security-log-file

Sets the name of the log file for security log messages. If this property is not specified, the log file specified in the log-file property is used for security logging.

""

security-log-level

Specifies the logging level detail for the security log mes­sages. The default log level is config.

config

security-peer-auth-init

Static creation method returning an AuthInitialize object, which obtains credentials for peers in a distributed system. The obtained credentials should be acceptable to the Authenticator specified through the security-peer-authenticator property on the peers.

""

security-peer-authenticator

Static creation method returning an Authenticator object, which is used by a peer to verify the credentials of the connecting peer.

""

security-peer-verifymember-timeout

The timeout value (in milliseconds) used by a peer to ver­ify membership of an unknown authenticated peer requesting a secure connection.

1000

server-bind-address

The network adapter card a GemFire server binds to for client/server communication. You can use this to separate the server’s client/server communication from its peer-to-peer communication, spreading the traffic load.

This is a machine-wide attribute used for communication with clients in client/server and multi-site installations. It has no effect on locator location.

This is only relevant for servers on multi-homed hosts—machines with multiple network cards. Specify the IP address, not the hostname, because each network card may not have a unique hostname.

An empty string (the default) causes the servers to listen on the same card that is used for peer-to-peer communica­tion. This is either the bind-address or, if that is not set, the machine’s default card.

For more information on multi-homed hosts and bind addresses, see Selecting a Network Adapter Through a Bind Address.

""

socket-buffer-size

The receive buffer sizes (in bytes) of the TCP/IP connec­tions used for data transmission. To minimize the buffer size allocation required for distributing large, serializable messages, the messages are sent in chunks. This setting determines the size of the chunks. Larger buffers can han­dle large messages more quickly, but take up more mem­ory.

32768

socket-lease-time

The length of time, in milliseconds, that a thread can have exclusive access to a socket it is not actively using. If a thread loses its lease to a socket it must re-acquire a socket the next time it sends a message. A value of zero causes socket leases to never expire. This property is ignored if conserve-sockets is true. Valid values are in the range 0..600000.

60000

ssl-ciphers

A space-separated list of the valid SSL ciphers for this connection. You can specify any to use any ciphers that are enabled by default in the configured JSSE provider. For more information on the ssl- *parameters, see Con­figuring SSL with GemFire.

any

ssl-enabled

Indicates whether to use SSL for member communica­tions. Valid values are true and false. A true setting requires the use of locators.

This attribute must be consistent across the distributed system.

false

ssl-protocols

A space-separated list of the valid SSL protocols for this connection. You can specify any to use any protocol that is enabled by default in the configured JSSE provider.

any

ssl-require-authentication

Indicates whether to require authentication for member communication. Valid values are true and false.

true

start-locator

Automatically starts a locator in the current process when the member connects to the distributed system and stops the locator when the member disconnects from the distrib­uted system. Specify the locator with an optional address or host specification and a required port number, in one of these formats:

               
            
              start-locator=address[port1]
            

 

              start-locator=port1
            
               
            

If you do not specify the address, the address assigned to the member is used for the locator. The address is the member’s bind-address , if set, or the default machine address.

 

This locator is automatically added to the list of locators in this set of gemfire.properties.

For more information about locators, see Using Locators For Peer and Client/Server Discovery. To run a locator as a separate process that is not tied to any system member’s lifecycle, see The gemfire Command-line Utility.

""

(does not start a locator)

statistic-archive-file

The file to which a running system member writes statistic samples. An empty string disables statistic archiving.

The .gz suffix causes this archive file to be compressed. To archive statistics without compression, omit the .gz suffix.

You can view archived statistics with the gemfire stats command.

For details about statistics archiving, see Controlling the Size of Archive Files.

null

statistic-sample-rate

The rate, in milliseconds, at which statistics are sampled. Operating system statistics are only updated when a sam­ple is taken. If statistic archiving is enabled then these samples are written to the archive. Valid values are in the range 100..60000.

Lowering the sample rate for statistics reduces system resource use while still providing some statistics for sys­tem tuning and failure analysis.

For details about statistics archiving, see Controlling the Size of Archive Files.

1000

statistic-sampling-enabled

Whether to collect and archive statistics on the member. If false, archiving is disabled and operating system statis­tics are no longer updated.

Turning statistics sampling off saves on resources, but it also takes away potentially valuable information for ongo­ing system tuning and about unexpected system problems.

For details about statistics, see System Statistics.

This setting does not apply to partitioned regions, where statistics are always enabled.

false

tcp-port

The TCP port to listen on for cache communications. If set to zero, the operating system selects an available port. Each process on a machine must have its own TCP port. Note that some operating systems restrict the range of ports usable by non-privileged users, and using restricted port numbers can cause runtime errors in GemFire startup.

Valid values are in the range 0..65535.

0

udp-fragment-size

The maximum fragment size, in bytes, for transmission over UDP unicast or multicast sockets. Smaller messages are combined, if possible, for transmission up to the frag­ment size setting. For more information, see Tuning UDP Communication.

Valid values are in the range 1000..60000.

60000

udp-recv-buffer-size

The size of the socket buffer used for incoming UDP point-to-point transmissions.

If disable-tcp is set to false, then a reduced buffer size of 65535 is used by default.

The default setting of 1048576 is higher than the default OS maximum buffer size on Unix, which should be increased to at least 1 megabyte to provide high-volume messaging on Unix systems. For information on how to increase the receive buffer size for Unix systems, see Con­figuring Multicast Speed Limits.

Valid values are in the range 2048..OS_maximum.

1048576

udp-send-buffer-size

The size of the socket buffer used for outgoing UDP point-to-point transmissions.

Valid values are in the range 2048..OS_maximum.

65535