﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.7.5/dotnetdoc/api/Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.html" />

<META NAME="ROBOTS" CONTENT="NOINDEX">

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class CacheClientConfiguration
   | Apache Ignite.NET </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class CacheClientConfiguration
   | Apache Ignite.NET ">
    <meta name="generator" content="docfx 2.24.0.0">
    
    <link rel="shortcut icon" href="../images/favicon.ico">
    <link rel="stylesheet" href="../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../styles/docfx.css">
    <link rel="stylesheet" href="../styles/main.css">
    <meta property="docfx:navrel" content="../toc.html">
    <meta property="docfx:tocrel" content="toc.html">
    
    <meta property="docfx:rel" content="../">
    
  
<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>
  <body data-spy="scroll" data-target="#affix">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../index.html">
                <img id="logo" class="svg" src="../images/logo_ignite_32_32.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items"></div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration">
  
  
  <h1 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration" class="text-break">Class CacheClientConfiguration
  </h1>
  <div class="markdown level0 summary"><p>Ignite client cache configuration.
Same thing as <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html">CacheConfiguration</a>, but with a subset of properties that can be accessed from
Ignite thin client (see <a class="xref" href="Apache.Ignite.Core.Client.IIgniteClient.html">IIgniteClient</a>).
<p>
Note that caches created from server nodes can be accessed from thin client, and vice versa.
The only difference is that thin client can not read or write certain <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html">CacheConfiguration</a>
properties, so a separate class exists to make it clear which properties can be used.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><span class="xref">CacheClientConfiguration</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Apache.Ignite.Core.Client.Cache.html">Apache.Ignite.Core.Client.Cache</a></h6>
  <h6><strong>Assembly</strong>: Apache.Ignite.Core.dll</h6>
  <h5 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class CacheClientConfiguration</code></pre>
  </div>
  <h3 id="constructors">Constructors
  </h3>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor">CacheClientConfiguration()</h4>
  <div class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html">CacheConfiguration</a> class.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheClientConfiguration()</code></pre>
  </div>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_Apache_Ignite_Core_Cache_Configuration_CacheConfiguration_System_Boolean_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor(Apache.Ignite.Core.Cache.Configuration.CacheConfiguration,System.Boolean)">CacheClientConfiguration(CacheConfiguration, Boolean)</h4>
  <div class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.html">CacheClientConfiguration</a> class, copying properties from
provided server cache configuration. See also <a class="xref" href="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.html#Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_ToCacheConfiguration">ToCacheConfiguration()</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheClientConfiguration(CacheConfiguration cacheConfiguration, bool ignoreUnsupportedProperties)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html">CacheConfiguration</a></td>
        <td><span class="parametername">cacheConfiguration</span></td>
        <td><p>Server cache configuration.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">ignoreUnsupportedProperties</span></td>
        <td><p>If set to <code>true</code>,
ignores unsupported properties instead of throwing an exception.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor(Apache.Ignite.Core.Client.Cache.CacheClientConfiguration)">CacheClientConfiguration(CacheClientConfiguration)</h4>
  <div class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html">CacheConfiguration</a> class,
performing a deep copy of specified cache configuration.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheClientConfiguration(CacheClientConfiguration other)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.html">CacheClientConfiguration</a></td>
        <td><span class="parametername">other</span></td>
        <td><p>The other configuration to perfrom deep copy from.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_System_String_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor(System.String)">CacheClientConfiguration(String)</h4>
  <div class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html">CacheConfiguration</a> class.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheClientConfiguration(string name)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">name</span></td>
        <td><p>Cache name.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_System_String_Apache_Ignite_Core_Cache_Configuration_QueryEntity___" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor(System.String,Apache.Ignite.Core.Cache.Configuration.QueryEntity[])">CacheClientConfiguration(String, QueryEntity[])</h4>
  <div class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html">CacheConfiguration</a> class.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheClientConfiguration(string name, params QueryEntity[] queryEntities)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">name</span></td>
        <td><p>Cache name.</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Cache.Configuration.QueryEntity.html">QueryEntity</a>[]</td>
        <td><span class="parametername">queryEntities</span></td>
        <td><p>Query entities.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration__ctor_System_String_System_Type___" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.#ctor(System.String,System.Type[])">CacheClientConfiguration(String, Type[])</h4>
  <div class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html">CacheConfiguration</a> class 
and populates <a class="xref" href="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.html#Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_QueryEntities">QueryEntities</a> according to provided query types.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheClientConfiguration(string name, params Type[] queryTypes)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">name</span></td>
        <td><p>Cache name.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Type</span>[]</td>
        <td><span class="parametername">queryTypes</span></td>
        <td><p>Collection of types to be registered as query entities. These types should use 
<a class="xref" href="Apache.Ignite.Core.Cache.Configuration.QuerySqlFieldAttribute.html">QuerySqlFieldAttribute</a> to configure query fields and properties.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
  </h3>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_AtomicityMode_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.AtomicityMode*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_AtomicityMode" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.AtomicityMode">AtomicityMode</h4>
  <div class="markdown level1 summary"><p>Gets or sets cache atomicity mode.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheAtomicityMode AtomicityMode { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheAtomicityMode.html">CacheAtomicityMode</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_Backups_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.Backups*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_Backups" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.Backups">Backups</h4>
  <div class="markdown level1 summary"><p>Gets or sets number of nodes used to back up single partition for 
<a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheMode.html#Apache_Ignite_Core_Cache_Configuration_CacheMode_Partitioned">Partitioned</a> cache.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int Backups { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_CacheMode_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.CacheMode*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_CacheMode" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.CacheMode">CacheMode</h4>
  <div class="markdown level1 summary"><p>Gets or sets caching mode to use.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheMode CacheMode { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheMode.html">CacheMode</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_CopyOnRead_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.CopyOnRead*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_CopyOnRead" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.CopyOnRead">CopyOnRead</h4>
  <div class="markdown level1 summary"><p>Gets or sets flag indicating whether copy of the value stored in cache should be created
for cache operation implying return value. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool CopyOnRead { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_DataRegionName_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.DataRegionName*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_DataRegionName" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.DataRegionName">DataRegionName</h4>
  <div class="markdown level1 summary"><p>Gets or sets the name of the data region, see <a class="xref" href="Apache.Ignite.Core.Configuration.DataRegionConfiguration.html">DataRegionConfiguration</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string DataRegionName { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_EagerTtl_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.EagerTtl*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_EagerTtl" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.EagerTtl">EagerTtl</h4>
  <div class="markdown level1 summary"><p>Gets or sets flag indicating whether expired cache entries will be eagerly removed from cache. 
When set to false, expired entries will be removed on next entry access.        </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool EagerTtl { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_EnableStatistics_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.EnableStatistics*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_EnableStatistics" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.EnableStatistics">EnableStatistics</h4>
  <div class="markdown level1 summary"><p>Gets or sets a value indicating whether statistics gathering is enabled on a cache.
These statistics can be retrieved via <a class="xref" href="Apache.Ignite.Core.Cache.ICache-2.html#Apache_Ignite_Core_Cache_ICache_2_GetMetrics">GetMetrics()</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool EnableStatistics { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_GroupName_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.GroupName*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_GroupName" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.GroupName">GroupName</h4>
  <div class="markdown level1 summary"><p>Gets or sets the cache group name. Caches with the same group name share single underlying &apos;physical&apos;
cache (partition set), but are logically isolated. 
<p>
Since underlying cache is shared, the following configuration properties should be the same within group:
<a class="xref" href="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.html#Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_CacheMode">CacheMode</a>, <a class="xref" href="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.html#Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_PartitionLossPolicy">PartitionLossPolicy</a>, <a class="xref" href="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.html#Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_DataRegionName">DataRegionName</a>.
<p>
Grouping caches reduces overall overhead, since internal data structures are shared.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string GroupName { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_KeyConfiguration_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.KeyConfiguration*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_KeyConfiguration" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.KeyConfiguration">KeyConfiguration</h4>
  <div class="markdown level1 summary"><p>Gets or sets the key configuration.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public ICollection&lt;CacheKeyConfiguration&gt; KeyConfiguration { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.ICollection</span>&lt;<a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheKeyConfiguration.html">CacheKeyConfiguration</a>&gt;</td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_LockTimeout_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.LockTimeout*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_LockTimeout" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.LockTimeout">LockTimeout</h4>
  <div class="markdown level1 summary"><p>Gets or sets default lock acquisition timeout.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public TimeSpan LockTimeout { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_MaxConcurrentAsyncOperations_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.MaxConcurrentAsyncOperations*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_MaxConcurrentAsyncOperations" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.MaxConcurrentAsyncOperations">MaxConcurrentAsyncOperations</h4>
  <div class="markdown level1 summary"><p>Gets or sets maximum number of allowed concurrent asynchronous operations, 0 for unlimited.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int MaxConcurrentAsyncOperations { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_MaxQueryIteratorsCount_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.MaxQueryIteratorsCount*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_MaxQueryIteratorsCount" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.MaxQueryIteratorsCount">MaxQueryIteratorsCount</h4>
  <div class="markdown level1 summary"><p>Gets or sets the maximum number of active query iterators.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int MaxQueryIteratorsCount { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_Name_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.Name*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_Name" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.Name">Name</h4>
  <div class="markdown level1 summary"><p>Gets or sets the cache name.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string Name { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_OnheapCacheEnabled_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.OnheapCacheEnabled*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_OnheapCacheEnabled" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.OnheapCacheEnabled">OnheapCacheEnabled</h4>
  <div class="markdown level1 summary"><p>Gets or sets a value indicating whether on-heap cache is enabled for the off-heap based page memory.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool OnheapCacheEnabled { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_PartitionLossPolicy_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.PartitionLossPolicy*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_PartitionLossPolicy" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.PartitionLossPolicy">PartitionLossPolicy</h4>
  <div class="markdown level1 summary"><p>Gets or sets the partition loss policy. This policy defines how Ignite will react to
a situation when all nodes for some partition leave the cluster.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public PartitionLossPolicy PartitionLossPolicy { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Cache.Configuration.PartitionLossPolicy.html">PartitionLossPolicy</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_QueryDetailMetricsSize_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.QueryDetailMetricsSize*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_QueryDetailMetricsSize" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.QueryDetailMetricsSize">QueryDetailMetricsSize</h4>
  <div class="markdown level1 summary"><p>Gets or sets the size of the query detail metrics to be stored in memory.
<p>
0 means disabled metrics.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int QueryDetailMetricsSize { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_QueryEntities_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.QueryEntities*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_QueryEntities" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.QueryEntities">QueryEntities</h4>
  <div class="markdown level1 summary"><p>Gets or sets the query entity configuration.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public ICollection&lt;QueryEntity&gt; QueryEntities { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.ICollection</span>&lt;<a class="xref" href="Apache.Ignite.Core.Cache.Configuration.QueryEntity.html">QueryEntity</a>&gt;</td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_QueryParallelism_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.QueryParallelism*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_QueryParallelism" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.QueryParallelism">QueryParallelism</h4>
  <div class="markdown level1 summary"><p>Gets or sets the desired query parallelism within a single node.
Query executor may or may not use this hint, depending on estimated query cost.
<p>
Default is <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html#Apache_Ignite_Core_Cache_Configuration_CacheConfiguration_DefaultQueryParallelism">DefaultQueryParallelism</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int QueryParallelism { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_ReadFromBackup_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.ReadFromBackup*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_ReadFromBackup" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.ReadFromBackup">ReadFromBackup</h4>
  <div class="markdown level1 summary"><p>Gets or sets flag indicating whether data can be read from backup.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool ReadFromBackup { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceBatchesPrefetchCount_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceBatchesPrefetchCount*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceBatchesPrefetchCount" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceBatchesPrefetchCount">RebalanceBatchesPrefetchCount</h4>
  <div class="markdown level1 summary"><p>Gets or sets the rebalance batches prefetch count.
<p>
Source node can provide more than one batch at rebalance start to improve performance.
Default is <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html#Apache_Ignite_Core_Cache_Configuration_CacheConfiguration_DefaultRebalanceBatchesPrefetchCount">DefaultRebalanceBatchesPrefetchCount</a>, minimum is 2.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public long RebalanceBatchesPrefetchCount { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int64</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceBatchSize_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceBatchSize*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceBatchSize" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceBatchSize">RebalanceBatchSize</h4>
  <div class="markdown level1 summary"><p>Gets or sets size (in number bytes) to be loaded within a single rebalance message.
Rebalancing algorithm will split total data set on every node into multiple batches prior to sending data.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int RebalanceBatchSize { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceDelay_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceDelay*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceDelay" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceDelay">RebalanceDelay</h4>
  <div class="markdown level1 summary"><p>Gets or sets delay upon a node joining or leaving topology (or crash) 
after which rebalancing should be started automatically. 
Rebalancing should be delayed if you plan to restart nodes
after they leave topology, or if you plan to start multiple nodes at once or one after another
and don&apos;t want to repartition and rebalance until all nodes are started.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public TimeSpan RebalanceDelay { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceMode_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceMode*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceMode" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceMode">RebalanceMode</h4>
  <div class="markdown level1 summary"><p>Gets or sets cache rebalance mode.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheRebalanceMode RebalanceMode { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheRebalanceMode.html">CacheRebalanceMode</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceOrder_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceOrder*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceOrder" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceOrder">RebalanceOrder</h4>
  <div class="markdown level1 summary"><p>Gets or sets the cache rebalance order. Caches with bigger RebalanceOrder are rebalanced later than caches
with smaller RebalanceOrder.
<p>
Default is 0, which means unordered rebalance. All caches with RebalanceOrder=0 are rebalanced without any
delay concurrently.
<p>
This parameter is applicable only for caches with <a class="xref" href="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.html#Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceMode">RebalanceMode</a> of
<a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheRebalanceMode.html#Apache_Ignite_Core_Cache_Configuration_CacheRebalanceMode_Sync">Sync</a> and <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheRebalanceMode.html#Apache_Ignite_Core_Cache_Configuration_CacheRebalanceMode_Async">Async</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int RebalanceOrder { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceThrottle_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceThrottle*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceThrottle" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceThrottle">RebalanceThrottle</h4>
  <div class="markdown level1 summary"><p>Time to wait between rebalance messages to avoid overloading of CPU or network.
When rebalancing large data sets, the CPU or network can get over-consumed with rebalancing messages,
which consecutively may slow down the application performance. This parameter helps tune 
the amount of time to wait between rebalance messages to make sure that rebalancing process
does not have any negative performance impact. Note that application will continue to work
properly while rebalancing is still in progress.
<p>
Value of 0 means that throttling is disabled.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public TimeSpan RebalanceThrottle { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceTimeout_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceTimeout*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_RebalanceTimeout" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.RebalanceTimeout">RebalanceTimeout</h4>
  <div class="markdown level1 summary"><p>Gets or sets rebalance timeout.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public TimeSpan RebalanceTimeout { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.TimeSpan</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_SqlEscapeAll_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.SqlEscapeAll*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_SqlEscapeAll" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.SqlEscapeAll">SqlEscapeAll</h4>
  <div class="markdown level1 summary"><p>If true all the SQL table and field names will be escaped with double quotes like 
({ &quot;tableName&quot;.&quot;fieldsName&quot;}). This enforces case sensitivity for field names and
also allows having special characters in table and field names.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool SqlEscapeAll { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_SqlIndexMaxInlineSize_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.SqlIndexMaxInlineSize*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_SqlIndexMaxInlineSize" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.SqlIndexMaxInlineSize">SqlIndexMaxInlineSize</h4>
  <div class="markdown level1 summary"><p>Gets or sets maximum inline size in bytes for sql indexes. See also <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.QueryIndex.html#Apache_Ignite_Core_Cache_Configuration_QueryIndex_InlineSize">InlineSize</a>.
-1 for automatic.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public int SqlIndexMaxInlineSize { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_SqlSchema_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.SqlSchema*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_SqlSchema" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.SqlSchema">SqlSchema</h4>
  <div class="markdown level1 summary"><p>Gets or sets the SQL schema.
Non-quoted identifiers are not case sensitive. Quoted identifiers are case sensitive.
<p>
Quoted <a class="xref" href="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.html#Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_Name">Name</a> is used by default.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string SqlSchema { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_WriteSynchronizationMode_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.WriteSynchronizationMode*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_WriteSynchronizationMode" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.WriteSynchronizationMode">WriteSynchronizationMode</h4>
  <div class="markdown level1 summary"><p>Gets or sets write synchronization mode. This mode controls whether the main<br>caller should wait for update on other nodes to complete or not.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheWriteSynchronizationMode WriteSynchronizationMode { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheWriteSynchronizationMode.html">CacheWriteSynchronizationMode</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
  </h3>
  <a id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_ToCacheConfiguration_" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.ToCacheConfiguration*"></a>
  <h4 id="Apache_Ignite_Core_Client_Cache_CacheClientConfiguration_ToCacheConfiguration" data-uid="Apache.Ignite.Core.Client.Cache.CacheClientConfiguration.ToCacheConfiguration">ToCacheConfiguration()</h4>
  <div class="markdown level1 summary"><p>Converts this instance to full <a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html">CacheConfiguration</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CacheConfiguration ToCacheConfiguration()</code></pre>
  </div>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Cache.Configuration.CacheConfiguration.html">CacheConfiguration</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            © 2015 - 2018 The Apache Software Foundation
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../styles/docfx.js"></script>
    <script type="text/javascript" src="../styles/main.js"></script>
  </body>
</html>
