<!doctype html>
<html>
<head>
  <meta charset="utf-8">
  <!-- Always force latest IE rendering engine or request Chrome Frame -->
  <meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">

  
  <link href='https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,300italic,400italic,400,600' rel='stylesheet' type='text/css'>
  <!-- Use title if it's in the page YAML frontmatter -->
  <title>
      System Properties |
    Geode Native .NET Docs
  </title>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link href="/stylesheets/all.css" rel="stylesheet" media="screen, print" />
  <link href="/stylesheets/print.css" rel="stylesheet" media="print" />
  <link href='/images/favicon.ico' rel='shortcut icon'>

  <script src="/javascripts/all.js"></script>
  
</head>

<body class="docs docs_geode-native docs_geode-native_dotnet docs_geode-native_dotnet_113 docs_geode-native_dotnet_113_configuring docs_geode-native_dotnet_113_configuring_sysprops has-subnav">

<div class="viewport">
  <div class='wrap'>
    <script type="text/javascript">
      document.domain = "apache.org";
    </script>

    <!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<header class="header header-layout">
  <h1 class="logo">
    <a href="/">
        <img src="/images/Apache_Geode_logo_symbol_white.png" style="width:30px;">
      Apache Geode Native .NET Documentation
    </a>
  </h1>
  <div class="header-links js-bar-links">
    <div class="btn-menu" data-behavior="MenuMobile"></div>
    <div class="header-item"><a href="http://geode.apache.org">Back to Product Page</a></div>
    <div class="header-item">
      <a href="http://geode.apache.org/community" target="_blank">Community</a>
    </div>
  </div>
</header>


    <div class="container">

      <!--googleoff: index-->
      <!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<div id="sub-nav" class="js-sidenav nav-container" role="navigation">
<a class="sidenav-title" data-behavior="SubMenuMobile">Doc Index</a>
  <div class="nav-content">
  <ul>
    <li>
      <a href="/docs/geode-native/dotnet/113/about-client-users-guide.html">Apache Geode Native Documentation</a>
    </li>
    <li class="has_submenu">
      <a href="/docs/geode-native/dotnet/113/getting-started/getting-started-nc-client.html">Getting Started with the Native Library</a>
      <ul>
        <li>
          <a href="/docs/geode-native/dotnet/113/getting-started/getting-started-nc-client.html#set_up_dev_environment">Set Up Your Development Environment</a>
        </li>
        <li>
          <a href="/docs/geode-native/dotnet/113/getting-started/getting-started-nc-client.html#establish_cluster_access">Establish Access to a Geode Cluster</a>
        </li>
        <li>
          <a href="/docs/geode-native/dotnet/113/getting-started/getting-started-nc-client.html#app_dev_walkthroughs">Application Development Walkthroughs</a>
        </li>
        <li>
          <a href="/docs/geode-native/dotnet/113/getting-started/getting-started-nc-client.html#programming_examples">Programming Examples</a>
        </li>
        <li>
          <a href="/docs/geode-native/dotnet/113/getting-started/put-get-example.html">Put/Get/Remove Examples</a>
        </li>
      </ul>
    </li>
    <li class="has_submenu">
      <a href="/docs/geode-native/dotnet/113/configuring/configuration.html">Configuring a Client Application</a>
      <ul>
        <li>
          <a href="/docs/geode-native/dotnet/113/configuring/system-level-configuration.html">System Level Configuration</a>
        </li>
      </ul>
    </li>

    <li>
      <a href="/docs/geode-native/dotnet/113/configuring/config-client-cache.html">Configuring the Client Cache</a>
    </li>
    <li class="has_submenu">
      <a href="/docs/geode-native/dotnet/113/regions/regions.html">Configuring Regions</a>
      <ul>
        <li>
        <a href="/docs/geode-native/dotnet/113/regions/registering-interest-for-entries.html">Registering Interest for Entries</a>
        </li>
        <li>
        <a href="/docs/geode-native/dotnet/113/regions/region-attributes.html">Region Attributes</a>
        </li>
      </ul>
    </li>

    <li class="has_submenu">
        <a href="/docs/geode-native/dotnet/113/connection-pools/configuring-pools.html">Configuring Pools</a>
        <ul>
            <li>
                <a href="/docs/geode-native/dotnet/113/connection-pools/client-pool-api.html">Native Client Pool API</a>
            </li>
            <li>
                <a href="/docs/geode-native/dotnet/113/connection-pools/configuring-pools-attributes-example.html">Pool Configuration Example and Settings</a>
            </li>
            <li>
                <a href="/docs/geode-native/dotnet/113/connection-pools/subscription-properties.html">Subscription Properties</a>
            </li>
        </ul>
    </li>

    <li class="has_submenu">
      <a href="/docs/geode-native/dotnet/113/serialization/data-serialization.html">Serializing Data</a>
      <ul>
        <li class="has_submenu">
          <a href="/docs/geode-native/dotnet/113/serialization/dotnet-serialization/dotnet-pdx-serialization.html">Geode PDX Serialization</a>
          <ul>
            <li>
              <a href="/docs/geode-native/dotnet/113/serialization/dotnet-serialization/dotnet-pdx-autoserializer.html">Using the Geode PDX Autoserializer</a>
            </li>
            <li>
              <a href="/docs/geode-native/dotnet/113/serialization/dotnet-serialization/serialize-using-ipdxserializable.html">Using the IPdxSerializable Interface</a>
            </li>
            <li>
              <a href="/docs/geode-native/dotnet/113/serialization/dotnet-serialization/pdx-serializable-examples.html">IPdxSerializable Example</a>
            </li>
          </ul>
        </li>
      </ul>
    </li>

    <li>
      <a href="/docs/geode-native/dotnet/113/remote-queries.html">Remote Queries</a>
    </li>

    <li>
      <a href="/docs/geode-native/dotnet/113/continuous-queries.html">Continuous Queries</a>
    </li>

    <li class="has_submenu">
      <a href="/docs/geode-native/dotnet/113/security/security.html">Security: Authentication and Encryption</a>
      <ul>
        <li>
        <a href="/docs/geode-native/dotnet/113/security/authentication.html">Authentication</a>
        </li>
        <li>
        <a href="/docs/geode-native/dotnet/113/security/sslclientserver.html">TLS/SSL Client-Server Communication Encryption</a>
        </li>
      </ul>
    </li>

    <li>
      <a href="/docs/geode-native/dotnet/113/function-execution.html">Function Execution</a>
    </li>

    <li>
      <a href="/docs/geode-native/dotnet/113/transactions.html">Transactions</a>
    </li>
    <li>
      <a href="/docs/geode-native/dotnet/113/configuring/sysprops.html">System Properties</a>
    </li>
    <li>
      <a href="/docs/geode-native/dotnet/113/client-cache-ref.html">Client Cache XML Reference</a>
    </li>
  </ul>
  </div>
</div>

      <!--googleon: index-->

      <main class="content content-layout" id="js-content" role="main">
        <a id="top"></a>
        <!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<span style="font-weight:200;font-size:31px;" style="float:left;">
    <img src="/images/Apache_Geode_logo_symbol.png" style="height:26px;">
  Apache Geode Native .NET
</span>
  <span class="local-header version-info" style="float:right;">
    <a href="https://cwiki.apache.org/confluence/display/GEODE/Release+Notes">CHANGELOG</a>
  </span>

        <!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
  <h1 class="title-container" >
    System Properties
  </h1>

          <div id="js-quick-links" >
            
          </div>
        <div class="to-top" id="js-to-top">
          <a href="#top" title="back to top"></a>
        </div>
        <!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<p>A variety of system properties can be specified when a client connects to a distributed system, either programmatically or in a <code>geode.properties</code> file.
See <code>Apache::Geode::Client::SystemProperties</code> in the <a href="dotnetdocs">.NET API docs</a>.</p>

<p>The following settings can be configured:</p>

<ul>
<li>  <strong><a href="#general_props">General Properties</a></strong><br />Basic information for the process, such as cache creation parameters.</li>
<li>  <strong><a href="#attributes-gfcpp__table_logging_props">Logging Properties</a></strong><br />How and where to log system messages.</li>
<li>  <strong><a href="#attributes-gfcpp__table_statistic_props">Statistics Archiving Properties</a></strong><br />How to collect and archive statistics information.</li>
<li>  <strong><a href="#attributes-gfcpp__table_durable_client_props">Durable Client Properties</a></strong><br />Information about the durable clients connected to the system.</li>
<li>  <strong><a href="#attributes-gfcpp__table_security_props">System Properties for Client Authentication and Authorization</a></strong><br /> Information about various security parameters.</li>
<li>  <strong><a href="#attributes-gfcpp__table_high_availability_props">System Properties for High Availability</a></strong><br />System properties to configure periodic acknowledgment (ack).</li>
</ul>

<p>The following tables list attributes that can be specified programmatically or stored in the <code>geode.properties</code> file to be read by a client.</p>

<h3 id="general-properties"><a id="general_props" class="no-quick-link"></a>General Properties</h3>

<table>
<thead>
<tr class="header">
<th>Attribute</th>
<th>Description</th>
<th>Default</th>
</tr>
</thead>
<tbody>
<tr class="even">
<td>cache-xml-file</td>
<td>Name and path of the file whose contents are used by default to configure a cache if one is
created. If not specified, the client starts with an empty cache, which is populated at run time.
</td>
<td>no default</td>
</tr>
<tr class="odd">
<td>heap-lru-delta</td>
<td>
The percentage of entries the system will evict each time it detects that it has exceeded the heap-lru-limit.
This property is used only if <code class="ph codeph">heap-lru-limit</code> is greater than 0.</td>
<td>10 %</td>
</tr>
<tr class="even">
<td>heap-lru-limit</td>
<td>Maximum amount of memory, in megabytes, used by the cache for all regions. If this limit is exceeded by <code class="ph codeph">heap-lru-delta</code> percent, LRU reduces the memory footprint as necessary. If not specified, or set to 0, memory usage is governed by each region&rsquo;s LRU entries limit, if any.</td>
<td>0</td>
</tr>
<tr class="odd">
<td>conflate-events</td>
<td>Client side conflation setting, which is sent to the server.</td>
<td>server</td>
</tr>
<tr class="even">
<td>connect-timeout</td>
<td>Amount of time (in seconds) to wait for a response after a socket connection attempt.</td>
<td>59</td>
</tr>
<tr class="odd">
<td>connection-pool-size</td>
<td>Number of connections per endpoint</td>
<td>5</td>
</tr>
<tr class="odd">
<td>enable-chunk-handler-thread</td>
<td>If the chunk-handler-thread is operative (enable-chunk-handler=true), it processes the response for each application thread. 
When the chunk handler is not operative (enable-chunk-handler=false), each application thread processes its own response.</td>
<td>false</td>
</tr>
<tr class="even">
<td>disable-shuffling-of-endpoints</td>
<td>If true, prevents server endpoints that are configured in pools from being shuffled before use.</td>
<td>false</td>
</tr>
<tr class="even">
<td>max-fe-threads</td>
<td>Thread pool size for parallel function execution. An example of this is the GetAll operations.</td>
<td>2 * number of logical processors</td>
</tr>
<tr class="odd">
<td>max-socket-buffer-size</td>
<td>Maximum size of the socket buffers, in bytes, that the client will try to set for client-server connections.</td>
<td>65 * 1024</td>
</tr>
<tr class="even">
<td>notify-ack-interval</td>
<td>Interval, in seconds, in which client sends acknowledgments for subscription notifications.</td>
<td>1</td>
</tr>
<tr class="odd">
<td>notify-dupcheck-life</td>
<td>Amount of time, in seconds, the client tracks subscription notifications before dropping the duplicates.</td>
<td>300</td>
</tr>
<tr class="even">
<td>ping-interval</td>
<td>Interval, in seconds, between communication attempts with the server to show the client is alive. Pings are only sent when the <code class="ph codeph">ping-interval</code> elapses between normal client messages. This must be set lower than the server&rsquo;s <code class="ph codeph">maximum-time-between-pings</code>.</td>
<td>10</td>
</tr>
<tr class="odd">
<td>redundancy-monitor-interval</td>
<td>Interval, in seconds, at which the subscription HA maintenance thread checks for the configured redundancy of subscription servers.</td>
<td>10</td>
</tr>
<tr class="odd">
<td>tombstone-timeout</td>
<td>Time in milliseconds used to timeout tombstone entries when region consistency checking is enabled.
</td>
<td>480000</td>
</tr>
</tbody>
</table>

<h3 id="logging-properties"><a id="attributes-gfcpp__table_logging_props" class="no-quick-link"></a>Logging Properties</h3>

<table>
<thead>
<tr class="header">
<th>Attribute</th>
<th>Description</th>
<th>Default</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>log-disk-space-limit</td>
<td>Maximum amount of disk space, in megabytes, allowed for all log files, current, and rolled. If set to 0, the space is unlimited.</td>
<td>0</td>
</tr>
<tr class="even">
<td>log-file</td>
<td>Name and full path of the file where a running client writes log messages. If not specified, logging goes to <code class="ph codeph">stdout</code>.</td>
<td>no default file</td>
</tr>
<tr class="odd">
<td>log-file-size-limit</td>
<td>Maximum size, in megabytes, of a single log file. Once this limit is exceeded, a new log file is created and the current log file becomes inactive. If set to 0, the file size is unlimited.</td>
<td>0</td>
</tr>
<tr class="even">
<td>log-level</td>
<td>Controls the types of messages that are written to the application&rsquo;s log. These are the levels, in descending order of severity and the types of message they provide:
<ul>
<li><strong>Error</strong> (highest severity) is a serious failure that will probably prevent program execution.</li>
<li><strong>Warning</strong> is a potential problem in the system.</li>
<li><strong>Info</strong> is an informational message of interest to the end user and system administrator.</li>
<li><strong>Config</strong> is a static configuration message, often used to debug problems with particular configurations.</li>
<li><strong>Fine, Finer, Finest, and Debug</strong> provide tracing information. Only use these with guidance from technical support.</li>
</ul>
<p>Enabling logging at any level enables logging for all higher levels.</p></td>
<td>config</td>
</tr>
</tbody>
</table>

<h3 id="statistics-archiving-properties"><a id="attributes-gfcpp__table_statistic_props" class="no-quick-link"></a>Statistics Archiving Properties</h3>

<table>
<thead>
<tr class="header">
<th>Attribute</th>
<th>Description</th>
<th>Default</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>statistic-sampling-enabled</td>
<td>Controls whether the process creates a statistic archive file.</td>
<td>true</td>
</tr>
<tr class="even">
<td>statistic-archive-file</td>
<td>Name and full path of the file where a running system member writes archives statistics. If <code class="ph codeph">archive-disk-space-limit</code> is not set, the client appends the process ID to the configured file name, like <code class="ph codeph">statArchive-PID.gfs</code>. If the space limit is set, the process ID is not appended but each rolled file name is renamed to statArchive-ID.gfs, where ID is the rolled number of the file.</td>
<td>./statArchive.gfs</td>
</tr>
<tr class="odd">
<td>archive-disk-space-limit</td>
<td>Maximum amount of disk space, in gigabytes, allowed for all archive files, current, and rolled. If set to 0, the space is unlimited.</td>
<td>0</td>
</tr>
<tr class="even">
<td>archive-file-size-limit</td>
<td>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 0, the file size is unlimited.</td>
<td>0</td>
</tr>
<tr class="odd">
<td>statistic-sample-rate</td>
<td>Rate, in seconds, that statistics are sampled. Operating system statistics are updated only when a sample is taken. If statistic archival is enabled, then these samples are written to the archive.
<p>Lowering the sample rate for statistics reduces system resource use while still providing some statistics for system tuning and failure analysis.</p>
</td>
<td>1</td>
</tr>
<tr class="even">
<td>enable-time-statistics</td>
<td>Enables time-based statistics for the distributed system and caching. For performance reasons, time-based statistics are disabled by default. See <a href="../system-statistics/chapter-overview.html#concept_3BE5237AF2D34371883453E6A9474A79">System Statistics</a>. </td>
<td>false</td>
</tr>
</tbody>
</table>

<h3 id="durable-client-properties"><a id="attributes-gfcpp__table_durable_client_props" class="no-quick-link"></a>Durable Client Properties</h3>

<table><thead>
<tr>
<th>Attribute</th>
<th>Description</th>
<th>Default</th>
</tr>
</thead><tbody>
<tr>
<td>auto-ready-for-events</td>
<td>Whether client subscriptions automatically receive events when declaratively configured via XML. If set to <code>false</code>, event startup is not automatic and you need to call the <code>Cache.ReadyForEvents()</code> method API after subscriptions for the server to start delivering events.</td>
<td>true</td>
</tr>
<tr>
<td>durable-client-id</td>
<td>Identifier to specify if you want the client to be durable.</td>
<td>empty</td>
</tr>
<tr>
<td>durable-timeout</td>
<td>Time, in seconds, a durable client&rsquo;s subscription is maintained when it is not connected to the server before being dropped.</td>
<td>300</td>
</tr>
</tbody></table>

<h3 id="security-properties"><a id="attributes-gfcpp__table_security_props" class="no-quick-link"></a>Security Properties</h3>

<p>The table describes the security-related system properties for native client authentication and authorization.</p>

<p>See <a href="/docs/geode-native/dotnet/113/security/sslclientserver.html">SSL Client/Server Communication</a>.</p>

<table>
<caption><span class="tablecap">System Properties for Client Authentication and Authorization</span></caption>
<thead>
<tr class="header">
<th>Attribute</th>
<th>Description</th>
<th>Default</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td><code class="ph codeph">security-client-auth-factory</code></td>
<td>Sets the key for the <code class="ph codeph">AuthInitialize</code> factory function.</td>
<td>empty</td>
</tr>
<tr class="even">
<td><code class="ph codeph">security-client-auth-library</code></td>
<td>Registers the path to the <code class="ph codeph">securityImpl.dll</code> library.</td>
<td>empty</td>
</tr>
<tr class="odd">
<td><code class="ph codeph">security-client-dhalgo</code></td>
<td>Diffie-Hellman based credentials encryption is not supported.</td>
<td>null</td>
</tr>
<tr class="even">
<td><code class="ph codeph">security-client-kspath</code></td>
<td>Path to a .PEM file, which contains the public certificates for all Geode cache servers to which the client can connect through specified endpoints.</td>
<td>null</td>
</tr>
<tr class="odd">
<td><code class="ph codeph">ssl-enabled</code></td>
<td>True if SSL connection support is enabled.</td>
<td>empty</td>
</tr>
<tr class="even">
<td><code class="ph codeph">ssl-keystore</code></td>
<td>Name of the .PEM keystore file, containing the client’s private key. Not set by default. Required if <code class="ph codeph">ssl-enabled</code> is true.</td>
<td></td>
</tr>
<tr class="odd">
<td><code class="ph codeph">ssl-keystore-password</code></td>
<td>Sets the password for the private key .PEM file for SSL.</td>
<td>null</td>
</tr>
<tr class="even">
<td><code class="ph codeph">ssl-truststore</code></td>
<td><p>Name of the .PEM truststore file, containing the servers’ public certificate. Not set by default. Required if <code class="ph codeph">ssl-enabled</code> is true.</p></td>
<td></td>
</tr>
</tbody>
</table>

<h2 id="high-availability-properties"><a id="attributes-gfcpp__table_high_availability_props" class="no-quick-link"></a>High Availability Properties</h2>

<table>
<thead>
<tr class="header">
<th>Attribute</th>
<th>Description</th>
<th>Default</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td><code class="ph codeph">notify-ack-interval</code></td>
<td>Minimum period, in seconds, between two consecutive acknowledgment messages sent from the client to the server.</td>
<td>10</td>
</tr>
<tr class="even">
<td><code class="ph codeph">notify-dupcheck-life</code></td>
<td>Minimum time, in seconds, a client continues to track a notification source for duplicates when no new notifications arrive before expiring it.</td>
<td>300</td>
</tr>
</tbody>
</table>

        

      </main>
    </div>
  </div>
</div>

<div id="scrim"></div>

<div class="container">
  <footer class="site-footer-links">
    <!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<div class="copyright">
  <a href='/'>Apache Geode Documentation</a>
  &copy; 2020 <a href='http://www.apache.org/'>The Apache Software Foundation</a>.
</div>
<div class="support">
  Need help? <a href="http://geode.apache.org/community" target="_blank">Visit the Community</a>
</div>

  </footer>
</div><!--end of container-->

</body>
</html>
