﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Interface ICluster
   | Apache Ignite.NET </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Interface ICluster
   | Apache Ignite.NET ">
    <meta name="generator" content="docfx 2.58.4.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="../">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <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">Search Results for <span></span></div>
          <div class="sr-items">
            <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
          </div>
          <ul id="pagination" data-first="First" data-prev="Previous" data-next="Next" data-last="Last"></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.Cluster.ICluster">
  
  
  <h1 id="Apache_Ignite_Core_Cluster_ICluster" data-uid="Apache.Ignite.Core.Cluster.ICluster" class="text-break">Interface ICluster
  </h1>
  <div class="markdown level0 summary"><p>Represents whole cluster (group of all nodes in a cluster).
<p>
All members are thread-safe and may be used concurrently from multiple threads.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_Ignite">IClusterGroup.Ignite</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_GetCompute">IClusterGroup.GetCompute()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForNodes_IEnumerable_Apache_Ignite_Core_Cluster_IClusterNode__">IClusterGroup.ForNodes(IEnumerable&lt;IClusterNode&gt;)</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForNodes_Apache_Ignite_Core_Cluster_IClusterNode___">IClusterGroup.ForNodes(IClusterNode[])</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForNodeIds_IEnumerable_Guid__">IClusterGroup.ForNodeIds(IEnumerable&lt;Guid&gt;)</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForNodeIds_Guid___">IClusterGroup.ForNodeIds(Guid[])</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForPredicate_Func_Apache_Ignite_Core_Cluster_IClusterNode_System_Boolean__">IClusterGroup.ForPredicate(Func&lt;IClusterNode, Boolean&gt;)</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForAttribute_System_String_System_String_">IClusterGroup.ForAttribute(String, String)</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForCacheNodes_System_String_">IClusterGroup.ForCacheNodes(String)</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForDataNodes_System_String_">IClusterGroup.ForDataNodes(String)</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForClientNodes_System_String_">IClusterGroup.ForClientNodes(String)</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForRemotes">IClusterGroup.ForRemotes()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForDaemons">IClusterGroup.ForDaemons()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForHost_Apache_Ignite_Core_Cluster_IClusterNode_">IClusterGroup.ForHost(IClusterNode)</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForRandom">IClusterGroup.ForRandom()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForOldest">IClusterGroup.ForOldest()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForYoungest">IClusterGroup.ForYoungest()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForDotNet">IClusterGroup.ForDotNet()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ForServers">IClusterGroup.ForServers()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_GetNodes">IClusterGroup.GetNodes()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_GetNode_Guid_">IClusterGroup.GetNode(Guid)</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_GetNode">IClusterGroup.GetNode()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_GetMetrics">IClusterGroup.GetMetrics()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_GetMessaging">IClusterGroup.GetMessaging()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_GetEvents">IClusterGroup.GetEvents()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_GetServices">IClusterGroup.GetServices()</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_EnableStatistics_IEnumerable_System_String__System_Boolean_">IClusterGroup.EnableStatistics(IEnumerable&lt;String&gt;, Boolean)</a>
    </div>
    <div>
      <a class="xref" href="Apache.Ignite.Core.Cluster.IClusterGroup.html#Apache_Ignite_Core_Cluster_IClusterGroup_ClearStatistics_IEnumerable_System_String__">IClusterGroup.ClearStatistics(IEnumerable&lt;String&gt;)</a>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Apache.Ignite.Core.Cluster.html">Apache.Ignite.Core.Cluster</a></h6>
  <h6><strong>Assembly</strong>: Apache.Ignite.Core.dll</h6>
  <h5 id="Apache_Ignite_Core_Cluster_ICluster_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public interface ICluster : IClusterGroup</code></pre>
  </div>
  <h3 id="properties">Properties
  </h3>
  <a id="Apache_Ignite_Core_Cluster_ICluster_ClientReconnectTask_" data-uid="Apache.Ignite.Core.Cluster.ICluster.ClientReconnectTask*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_ClientReconnectTask" data-uid="Apache.Ignite.Core.Cluster.ICluster.ClientReconnectTask">ClientReconnectTask</h4>
  <div class="markdown level1 summary"><p>Gets the reconnect task, which will transition to Completed state 
when local client node reconnects to the cluster. 
<p>
Result of the task indicates whether cluster has been restarted.
<p>
If local node is not in client mode or is not disconnected, returns completed task.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">Task&lt;bool&gt; ClientReconnectTask { get; }</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">Task</span>&lt;<span class="xref">System.Boolean</span>&gt;</td>
        <td><p>The reconnect task.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_TopologyVersion_" data-uid="Apache.Ignite.Core.Cluster.ICluster.TopologyVersion*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_TopologyVersion" data-uid="Apache.Ignite.Core.Cluster.ICluster.TopologyVersion">TopologyVersion</h4>
  <div class="markdown level1 summary"><p>Gets current topology version. In case of TCP discovery topology versions are sequential </p>
<ul>
<li>they start from 1 and get incremented every time whenever a node joins or leaves. 
For other discovery SPIs topology versions may not be (and likely are not) sequential.</li>
</ul>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">long TopologyVersion { get; }</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><p>Current topology version.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
  </h3>
  <a id="Apache_Ignite_Core_Cluster_ICluster_DisableWal_" data-uid="Apache.Ignite.Core.Cluster.ICluster.DisableWal*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_DisableWal_System_String_" data-uid="Apache.Ignite.Core.Cluster.ICluster.DisableWal(System.String)">DisableWal(String)</h4>
  <div class="markdown level1 summary"><p>Disables write-ahead logging for specified cache. When WAL is disabled, changes are not logged to disk.
This significantly improves cache update speed.The drawback is absence of local crash-recovery guarantees.
If node is crashed, local content of WAL-disabled cache will be cleared on restart
to avoid data corruption.
<p>
Internally this method will wait for all current cache operations to finish and prevent new cache 
operations from being executed.Then checkpoint is initiated to flush all data to disk.Control is returned
to the callee when all dirty pages are prepared for checkpoint, but not necessarily flushed to disk.
<p>
WAL state can be changed only for persistent caches.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void DisableWal(string cacheName)</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">cacheName</span></td>
        <td><p>Name of the cache.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_EnableWal_" data-uid="Apache.Ignite.Core.Cluster.ICluster.EnableWal*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_EnableWal_System_String_" data-uid="Apache.Ignite.Core.Cluster.ICluster.EnableWal(System.String)">EnableWal(String)</h4>
  <div class="markdown level1 summary"><p>Enables write-ahead logging for specified cache. Restoring crash-recovery guarantees of a previous call to
<a class="xref" href="Apache.Ignite.Core.Cluster.ICluster.html#Apache_Ignite_Core_Cluster_ICluster_DisableWal_System_String_">DisableWal(String)</a>.
<p>
Internally this method will wait for all current cache operations to finish and prevent new cache
operations from being executed. Then checkpoint is initiated to flush all data to disk.
Control is returned to the callee when all data is persisted to disk.
<p>
WAL state can be changed only for persistent caches.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void EnableWal(string cacheName)</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">cacheName</span></td>
        <td><p>Name of the cache.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_ForLocal_" data-uid="Apache.Ignite.Core.Cluster.ICluster.ForLocal*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_ForLocal" data-uid="Apache.Ignite.Core.Cluster.ICluster.ForLocal">ForLocal()</h4>
  <div class="markdown level1 summary"><p>Gets monadic projection consisting from the local node.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">IClusterGroup ForLocal()</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.Cluster.IClusterGroup.html">IClusterGroup</a></td>
        <td><p>Monadic projection consisting from the local node.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_GetBaselineAutoAdjustTimeout_" data-uid="Apache.Ignite.Core.Cluster.ICluster.GetBaselineAutoAdjustTimeout*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_GetBaselineAutoAdjustTimeout" data-uid="Apache.Ignite.Core.Cluster.ICluster.GetBaselineAutoAdjustTimeout">GetBaselineAutoAdjustTimeout()</h4>
  <div class="markdown level1 summary"><p>Gets the value of time which we would wait before the actual topology change since last server topology change(node join/left/fail).</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">long GetBaselineAutoAdjustTimeout()</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><span class="xref">System.Int64</span></td>
        <td><p>Timeout value</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_GetBaselineTopology_" data-uid="Apache.Ignite.Core.Cluster.ICluster.GetBaselineTopology*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_GetBaselineTopology" data-uid="Apache.Ignite.Core.Cluster.ICluster.GetBaselineTopology">GetBaselineTopology()</h4>
  <div class="markdown level1 summary"><p>Gets the baseline topology.
Returns null if <a class="xref" href="Apache.Ignite.Core.Cluster.ICluster.html#Apache_Ignite_Core_Cluster_ICluster_SetBaselineTopology_System_Int64_">SetBaselineTopology(Int64)</a> has not been called.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">ICollection&lt;IBaselineNode&gt; GetBaselineTopology()</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><span class="xref">ICollection</span>&lt;<a class="xref" href="Apache.Ignite.Core.Cluster.IBaselineNode.html">IBaselineNode</a>&gt;</td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_GetLocalNode_" data-uid="Apache.Ignite.Core.Cluster.ICluster.GetLocalNode*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_GetLocalNode" data-uid="Apache.Ignite.Core.Cluster.ICluster.GetLocalNode">GetLocalNode()</h4>
  <div class="markdown level1 summary"><p>Gets local Ignite node.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">IClusterNode GetLocalNode()</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.Cluster.IClusterNode.html">IClusterNode</a></td>
        <td><p>Local Ignite node.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_GetTopology_" data-uid="Apache.Ignite.Core.Cluster.ICluster.GetTopology*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_GetTopology_System_Int64_" data-uid="Apache.Ignite.Core.Cluster.ICluster.GetTopology(System.Int64)">GetTopology(Int64)</h4>
  <div class="markdown level1 summary"><p>Gets a topology by version. Returns null if topology history storage doesn&apos;t contain 
specified topology version (history currently keeps the last 1000 snapshots).</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">ICollection&lt;IClusterNode&gt; GetTopology(long ver)</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.Int64</span></td>
        <td><span class="parametername">ver</span></td>
        <td><p>Topology version.</p>
</td>
      </tr>
    </tbody>
  </table>
  <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><span class="xref">ICollection</span>&lt;<a class="xref" href="Apache.Ignite.Core.Cluster.IClusterNode.html">IClusterNode</a>&gt;</td>
        <td><p>Collection of Ignite nodes which represented by specified topology version, 
if it is present in history storage, null otherwise.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Apache.Ignite.Core.Common.IgniteException.html">IgniteException</a></td>
        <td><p>If underlying SPI implementation does not support 
topology history. Currently only <code>org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi</code>
supports topology history.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_IsActive_" data-uid="Apache.Ignite.Core.Cluster.ICluster.IsActive*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_IsActive" data-uid="Apache.Ignite.Core.Cluster.ICluster.IsActive">IsActive()</h4>
  <div class="markdown level1 summary"><p>Determines whether this grid is in active state.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">bool IsActive()</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><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code> if the grid is active; otherwise, <code>false</code>.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_IsBaselineAutoAdjustEnabled_" data-uid="Apache.Ignite.Core.Cluster.ICluster.IsBaselineAutoAdjustEnabled*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_IsBaselineAutoAdjustEnabled" data-uid="Apache.Ignite.Core.Cluster.ICluster.IsBaselineAutoAdjustEnabled">IsBaselineAutoAdjustEnabled()</h4>
  <div class="markdown level1 summary"><p>Returns value of manual baseline control or auto adjusting baseline.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">bool IsBaselineAutoAdjustEnabled()</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><span class="xref">System.Boolean</span></td>
        <td><p><code>true</code> If cluster in auto-adjust. <code>false</code> If cluster in manual.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_IsWalEnabled_" data-uid="Apache.Ignite.Core.Cluster.ICluster.IsWalEnabled*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_IsWalEnabled_System_String_" data-uid="Apache.Ignite.Core.Cluster.ICluster.IsWalEnabled(System.String)">IsWalEnabled(String)</h4>
  <div class="markdown level1 summary"><p>Determines whether write-ahead logging is enabled for specified cache.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">bool IsWalEnabled(string cacheName)</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">cacheName</span></td>
        <td><p>Name of the cache.</p>
</td>
      </tr>
    </tbody>
  </table>
  <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><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_PingNode_" data-uid="Apache.Ignite.Core.Cluster.ICluster.PingNode*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_PingNode_Guid_" data-uid="Apache.Ignite.Core.Cluster.ICluster.PingNode(Guid)">PingNode(Guid)</h4>
  <div class="markdown level1 summary"><p>Pings a remote node.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">bool PingNode(Guid nodeId)</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">Guid</span></td>
        <td><span class="parametername">nodeId</span></td>
        <td><p>ID of a node to ping.</p>
</td>
      </tr>
    </tbody>
  </table>
  <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><span class="xref">System.Boolean</span></td>
        <td><p>True if node for a given ID is alive, false otherwise.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_ResetMetrics_" data-uid="Apache.Ignite.Core.Cluster.ICluster.ResetMetrics*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_ResetMetrics" data-uid="Apache.Ignite.Core.Cluster.ICluster.ResetMetrics">ResetMetrics()</h4>
  <div class="markdown level1 summary"><p>Resets local I/O, job, and task execution metrics.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void ResetMetrics()</code></pre>
  </div>
  <a id="Apache_Ignite_Core_Cluster_ICluster_SetActive_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetActive*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_SetActive_System_Boolean_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetActive(System.Boolean)">SetActive(Boolean)</h4>
  <div class="markdown level1 summary"><p>Changes Ignite grid state to active or inactive.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void SetActive(bool isActive)</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.Boolean</span></td>
        <td><span class="parametername">isActive</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_SetBaselineAutoAdjustEnabledFlag_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetBaselineAutoAdjustEnabledFlag*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_SetBaselineAutoAdjustEnabledFlag_System_Boolean_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetBaselineAutoAdjustEnabledFlag(System.Boolean)">SetBaselineAutoAdjustEnabledFlag(Boolean)</h4>
  <div class="markdown level1 summary"><p>Sets the value of manual baseline control or auto adjusting baseline.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void SetBaselineAutoAdjustEnabledFlag(bool isBaselineAutoAdjustEnabled)</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.Boolean</span></td>
        <td><span class="parametername">isBaselineAutoAdjustEnabled</span></td>
        <td><p><code>true</code> If cluster in auto-adjust. <code>false</code> If cluster in manual.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_SetBaselineAutoAdjustTimeout_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetBaselineAutoAdjustTimeout*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_SetBaselineAutoAdjustTimeout_System_Int64_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetBaselineAutoAdjustTimeout(System.Int64)">SetBaselineAutoAdjustTimeout(Int64)</h4>
  <div class="markdown level1 summary"><p>Sets the value of time which we would wait before the actual topology change since last server topology change(node join/left/fail).</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void SetBaselineAutoAdjustTimeout(long baselineAutoAdjustTimeout)</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.Int64</span></td>
        <td><span class="parametername">baselineAutoAdjustTimeout</span></td>
        <td><p>Timeout value</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_SetBaselineTopology_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetBaselineTopology*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_SetBaselineTopology_IEnumerable_Apache_Ignite_Core_Cluster_IBaselineNode__" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetBaselineTopology(IEnumerable{Apache.Ignite.Core.Cluster.IBaselineNode})">SetBaselineTopology(IEnumerable&lt;IBaselineNode&gt;)</h4>
  <div class="markdown level1 summary"><p>Sets the baseline topology nodes.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void SetBaselineTopology(IEnumerable&lt;IBaselineNode&gt; nodes)</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">IEnumerable</span>&lt;<a class="xref" href="Apache.Ignite.Core.Cluster.IBaselineNode.html">IBaselineNode</a>&gt;</td>
        <td><span class="parametername">nodes</span></td>
        <td><p>The nodes.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_SetBaselineTopology_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetBaselineTopology*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_SetBaselineTopology_System_Int64_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetBaselineTopology(System.Int64)">SetBaselineTopology(Int64)</h4>
  <div class="markdown level1 summary"><p>Sets the baseline topology from the cluster topology of the given version.
This method requires active cluster (<a class="xref" href="Apache.Ignite.Core.Cluster.ICluster.html#Apache_Ignite_Core_Cluster_ICluster_IsActive">IsActive()</a>).</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void SetBaselineTopology(long topologyVersion)</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.Int64</span></td>
        <td><span class="parametername">topologyVersion</span></td>
        <td><p>The topology version.</p>
</td>
      </tr>
    </tbody>
  </table>
  <a id="Apache_Ignite_Core_Cluster_ICluster_SetTxTimeoutOnPartitionMapExchange_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetTxTimeoutOnPartitionMapExchange*"></a>
  <h4 id="Apache_Ignite_Core_Cluster_ICluster_SetTxTimeoutOnPartitionMapExchange_TimeSpan_" data-uid="Apache.Ignite.Core.Cluster.ICluster.SetTxTimeoutOnPartitionMapExchange(TimeSpan)">SetTxTimeoutOnPartitionMapExchange(TimeSpan)</h4>
  <div class="markdown level1 summary"><p>Set transaction timeout on partition map exchange</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void SetTxTimeoutOnPartitionMapExchange(TimeSpan timeout)</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">TimeSpan</span></td>
        <td><span class="parametername">timeout</span></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">
                <h5>In This Article</h5>
                <div></div>
              </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 - 2019 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>
