Ice.*
Ice.BackgroundLocatorCacheUpdates
Synopsis
Ice.BackgroundLocatorCacheUpdates=num
Description
If num is set to 0 (the default), an invocation on an indirect proxy whose endpoints are older than the configured locator cache timeout triggers a locator cache update; the run time delays the invocation until the new endpoints are returned by the locator.
If num is set to a value larger than 0, an invocation on an indirect proxy with expired endpoints still triggers a locator cache update, but the update is performed in the background, and the run time uses the expired endpoints for the invocation. This avoids delaying the first invocation that follows expiry of a cache entry.
Ice.BatchAutoFlushSize
Synopsis
Ice.BatchAutoFlushSize=num (in kilobytes)
Description
This property controls how the Ice runtime deals with flushing of batch messages. If num is set to a value greater than 0, the runtime automatically forces a flush of the current batch when a new message is added to a batch and that message would cause the batch to exceed num kilobytes. If num is set to 0 or a negative number, batches must be flushed explicitly by the application. If not defined, the default value is 1024.
When flushed, batch requests are sent as a single Ice message. The Ice runtime in the receiver limits incoming messages to the maximum size specified by Ice.MessageSizeMax, therefore the sender must periodically flush batch requests (whether manually or automatically) to ensure they do not exceed the receiver's configured limit.
Ice.CacheMessageBuffers
Synopsis
Ice.CacheMessageBuffers=num
Description
If num is a value greater than 0, the proxies cache message buffers for future reuse. This can improve performance and reduce the amount of garbage produced by Ice internals that the garbage collector would eventually spend time to reclaim. However, for applications that exchange very large messages, this cache may consume excessive amounts of memory and therefore should be disabled by setting this property to 0.
The default value is 2.
This property only affects the caching of message buffers for invocations. The Ice runtime never caches message buffers for dispatches.
Ice.ClassGraphDepthMax
Synopsis
Ice.ClassGraphDepthMax=num
Description
Specifies the maximum depth for a graph of Slice class instances to unmarshal. If this maximum is reached, the Ice runtime throws a MarshalException. Reading and destroying a Slice class graph are recursive operations. This property prevents stack overflows from occurring if a sender sends a very large graph and not enough space on the stack is available. To read larger graphs, you can increase the value of this property. If not specified, the default value is 10.
Setting this property to 0 (or to a negative number) disables the depth limit altogether.
Ice.Compression.Level
Synopsis
Ice.Compression.Level=num
Description
Specifies the bzip2 compression level to use when compressing protocol messages. Legal values for num are 1 to 9, where 1 represents the fastest compression and 9 represents the best compression. Note that higher levels cause the bzip2 algorithm to devote more resources to the compression effort, and may not result in a significant improvement over lower levels. If not specified, the default value is 1.
Ice.Config
Synopsis
Ice.Config=config_file[,config_file,...]
Ice.Config=1
Description
This property must be set from the command line with one of the options --Ice.Config, --Ice.Config=1, or --Ice.Config=config_file.
If the Ice.Config property is empty or set to 1, or not set at all, the Ice runtime examines the contents of the ICE_CONFIG environment variable to retrieve the path names of one or more configuration files. Otherwise, Ice.Config must be set to the path names of one or more configuration files, separated by commas (path names can be relative or absolute). Property values are read from each of the configuration files listed.
In Java, Ice first attempts to open a configuration file as a class loader resource. If that attempt fails, Ice opens the configuration file in the local file system.
Configuration files use a simple syntax consisting of name=value pairs with support for comments and escaping.
Ice.ConsoleListener
Synopsis
Ice.ConsoleListener=num
Description
If num is non-0, the Ice runtime installs a ConsoleTraceListener that writes its messages to stderr. If num is 0, logging is disabled. Note that the setting of Ice.LogFile overrides this property: if Ice.LogFile is set, messages are written to the log file regardless of the setting of Ice.ConsoleListener.
Ice.EnableIdleCheck
Synopsis
Ice.EnableIdleCheck=num
Description
If num is set to 1 (the default), if a established connection doesn’t read any bytes for more.
Ice.HTTPProxyHost
Synopsis
Ice.HTTPProxyHost=addr
Description
Specifies the host name or IP address of an HTTP proxy server. If addr is not empty, Ice uses the designated HTTP proxy server for all outgoing (client) connections.
Ice.HTTPProxyPort
Synopsis
Ice.HTTPProxyPort=num
Description
The port number of the HTTP proxy server. If not specified, the default value is 1080.
Ice.ImplicitContext
Synopsis
Ice.ImplicitContext=type
Description
Specifies whether a communicator has an implicit request context and, if so, at what scope the context applies. Legal values for this property are None (equivalent to the empty string), PerThread, and Shared. If not specified, the default value is None.
Ice.InitPlugins
Synopsis
Ice.InitPlugins=num
Description
If num is a value greater than zero, the Ice runtime automatically initializes the plug-ins it has loaded. The order in which plug-ins are loaded and initialized is determined by Ice.PluginLoadOrder. An application may need to set this property to zero in order to interact directly with a plug-in after it has been loaded but before it is initialized. In this case, the application must invoke initializePlugins on the plug-in manager to complete the initialization process. If not defined, the default value is 1.
Ice.IPv4
Synopsis
Ice.IPv4=num
Description
Specifies whether Ice uses IPv4. If num is a value greater than zero, IPv4 is enabled. If not specified, the default value is 1.
Ice.IPv6
Synopsis
Ice.IPv6=num
Description
Specifies whether Ice uses IPv6. If num is a value greater than zero, IPv6 is enabled. If not specified, the default value is 1 if the system supports the creation of IPv6 sockets, and 0 otherwise.
Java's default network stack always accepts both IPv4 and IPv6 connections regardless of the settings of Ice.IPv6. You can configure the Java runtime to use only IPv4 by starting your application with the following JVM option:
java -Djava.net.preferIPv4Stack=true ...
Ice.LogFile
Synopsis
Ice.LogFile=file
Description
Replaces the communicator's default logger with a simple file-based logger implementation. This property does not affect the per-process logger. The logger creates the specified file if necessary, otherwise it appends to the file. If the logger is unable to open the file, the application receives an InitializationException during communicator initialization. If a logger object is supplied in the InitializationData argument during communicator initialization, it takes precedence over this property.
Ice.MessageSizeMax
Synopsis
Ice.MessageSizeMax=num (in kilobytes)
Description
This property controls the maximum size (in kilobytes) of an uncompressed protocol message that is accepted by a connection created by this Ice communicator. The size includes the size of the Ice protocol header. The default size is 1024 (1 megabyte).
The only purpose of this property is to prevent a malicious or defective sender from triggering a large memory allocation in a receiver. If this is not a concern, you can set Ice.MessageSizeMax to 0; setting this property to 0 (or to a negative number) disables the message size limit altogether.
If the Ice connection receives an incoming message whose size exceeds the receiver's setting for Ice.MessageSizeMax, it throws a MemoryLimitException and closes the connection. For example, when a client receives an oversized reply message, the result of its invocation is a MemoryLimitException. When a server receives an oversized request message, the client receives a ConnectionLostException (because the server closed the connection) and the server logs a message if Ice.Warn.Connections is set.
See also adapter.MessageSizeMax.
Ice.PluginLoadOrder
Synopsis
Ice.PluginLoadOrder=names
Description
Determines the order in which plug-ins are loaded (loaded is a synonym for created in this context). The Ice runtime loads the plug-ins in the order they appear in names, where each plug-in name is separated by a comma or white space. Any plug-ins not mentioned in names are loaded afterward, in an undefined order.
Plug-ins installed using InitializationData::pluginFactories are always created before all other plug-ins. They are not affected by this property.
Ice.PreferIPv6Address
Synopsis
Ice.PreferIPv6Address=num
Description
If both IPv4 and IPv6 are enabled (the default), specifies whether Ice prefers IPv6 addresses over IPv4 addresses when resolving hostnames. If num is a value greater than zero, IPv6 addresses are preferred. If not specified, the default value is 0.
Ice.PreloadAssemblies
Synopsis
Ice.PreloadAssemblies=num
Description
If num is set to a value larger than 0, the Ice runtime will try to load all the assemblies referenced by the process during communicator initialization, otherwise the referenced assemblies will be initialized lazily. The default value is 0.
Ice.PrintAdapterReady
Synopsis
Ice.PrintAdapterReady=num
Description
If num is set to a value larger than 0, an object adapter prints "adapter_name ready" on standard output after activation is complete. This is useful for scripts that need to wait until an object adapter is ready to be used.
Ice.PrintProcessId
Synopsis
Ice.PrintProcessId=num
Description
If num is set to a value larger than 0, the process ID is printed on standard output upon startup.
Ice.ProgramName
Synopsis
Ice.ProgramName=name
Description
name is the program name, which is used for logging. This name is set automatically from argv[0] (C++) and from AppDomain.CurrentDomain.FriendlyName (C#) during initialization. For Java, Ice.ProgramName is initialized to the empty string. The default name can be overridden by setting this property.
Ice.RetryIntervals
Synopsis
Ice.RetryIntervals=num [num ...]
Description
This property defines the number of times an operation is automatically retried and the delay between each retry. For example, if the property is set to 0 100 500, the operation is retried 3 times: immediately after the first failure, again after waiting 100ms after the second failure, and again after waiting 500ms after the third failure. The default value (0) means Ice retries once immediately. If set to -1, no retry occurs.
Ice.ServerIdleTime
Synopsis
Ice.ServerIdleTime=num
Description
If num is set to a value larger than 0, Ice automatically calls shutdown on the communicator when its server thread pool has been idle for num seconds. The server thread pool is not idle as long as any of its thread is performing some task, like dispatching a request.
This call to shutdown shuts down the communicator's server side and causes any thread waiting on waitForShutdown to return. After that, a server will typically do some clean-up work before exiting. The default value is 0, meaning that the server will not shut down automatically. This property is often used for servers that are automatically activated by IceGrid.
For C# applications and Windows C++ applications, the server idle time takes effect only once all the server thread pool idle threads have been reaped (the thread idle time can be configured with the ThreadIdleTime thread pool property.
Ice.SOCKSProxyHost
Synopsis
Ice.SOCKSProxyHost=addr
Description
Specifies the host name or IP address of a SOCKS proxy server. If addr is not empty, Ice uses the designated SOCKS proxy server for all outgoing (client) connections.
Ice currently only supports the SOCKS4 protocol, which means only IPv4 connections are allowed.
Ice.SOCKSProxyPort
Synopsis
Ice.SOCKSProxyPort=num
Description
The port number of the SOCKS proxy server. If not specified, the default value is 1080.
Ice.StdErr
Synopsis
Ice.StdErr=filename
Description
If filename is not empty, the standard error stream of this process is redirected to this file, in append mode. This property is checked only for the first communicator that is created in a process.
Ice.StdOut
Synopsis
Ice.StdOut=filename
Description
If filename is not empty, the standard output stream of this process is redirected to this file, in append mode. This property is checked only for the first communicator created in a process.
Ice.ThreadPriority
Synopsis
Ice.ThreadPriority=num
Description
num specifies a thread priority. Threads created by the Ice runtime are created with the specified priority by default. Leaving this property unset causes the runtime to create threads with the system default priority. This property is unset by default.
You can separately override the default priorities for the client and server thread pools using Ice.ThreadPool.name.ThreadPriority as well as for a specific object adapter using adapter.ThreadPool.ThreadPriority.
Ice.ToStringMode
Synopsis
Ice.ToStringMode=string
Description
string must be one of the following: Unicode, ASCII, Compat.
This property maps to an enumerator of ToStringMode and controls how identityToString and proxyToString on the communicator escape non-printable ASCII characters and non-ASCII characters.
The default value is Unicode.