<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="canonical" href="https://ignite.apache.org/releases/1.8.0/dotnetdoc/interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>Apache Ignite.NET: Apache.Ignite.Core.Transactions.ITransaction Interface Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<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>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="ignite_logo.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">Apache Ignite.NET
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Apache.Ignite.Core.Transactions.ITransaction Interface Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Grid cache transaction.  
 <a href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for Apache.Ignite.Core.Transactions.ITransaction:</div>
<div class="dyncontent">
 <div class="center">
  <img src="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.png" usemap="#Apache.Ignite.Core.Transactions.ITransaction_map" alt=""/>
  <map id="Apache.Ignite.Core.Transactions.ITransaction_map" name="Apache.Ignite.Core.Transactions.ITransaction_map">
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a495d08a23d723c439146f6fe20c8cf0c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#a495d08a23d723c439146f6fe20c8cf0c">SetRollbackonly</a> ()</td></tr>
<tr class="memdesc:a495d08a23d723c439146f6fe20c8cf0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Modify the transaction associated with the current thread such that the only possible outcome of the transaction is to roll back the transaction.  <a href="#a495d08a23d723c439146f6fe20c8cf0c">More...</a><br /></td></tr>
<tr class="separator:a495d08a23d723c439146f6fe20c8cf0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba386970d0f1fdcd1244bf46591304a5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#aba386970d0f1fdcd1244bf46591304a5">Commit</a> ()</td></tr>
<tr class="memdesc:aba386970d0f1fdcd1244bf46591304a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Commits this transaction.  <a href="#aba386970d0f1fdcd1244bf46591304a5">More...</a><br /></td></tr>
<tr class="separator:aba386970d0f1fdcd1244bf46591304a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8700c30bff1ca96cfe1b9c6b3927072d"><td class="memItemLeft" align="right" valign="top">Task&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#a8700c30bff1ca96cfe1b9c6b3927072d">CommitAsync</a> ()</td></tr>
<tr class="memdesc:a8700c30bff1ca96cfe1b9c6b3927072d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Commits this transaction.  <a href="#a8700c30bff1ca96cfe1b9c6b3927072d">More...</a><br /></td></tr>
<tr class="separator:a8700c30bff1ca96cfe1b9c6b3927072d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d8b41a1d016f44fd86a2477f8d213c8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#a3d8b41a1d016f44fd86a2477f8d213c8">Rollback</a> ()</td></tr>
<tr class="memdesc:a3d8b41a1d016f44fd86a2477f8d213c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rolls back this transaction.  <a href="#a3d8b41a1d016f44fd86a2477f8d213c8">More...</a><br /></td></tr>
<tr class="separator:a3d8b41a1d016f44fd86a2477f8d213c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91c8b2c7d94fad564596482232e80848"><td class="memItemLeft" align="right" valign="top">Task&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#a91c8b2c7d94fad564596482232e80848">RollbackAsync</a> ()</td></tr>
<tr class="memdesc:a91c8b2c7d94fad564596482232e80848"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rolls back this transaction.  <a href="#a91c8b2c7d94fad564596482232e80848">More...</a><br /></td></tr>
<tr class="separator:a91c8b2c7d94fad564596482232e80848"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7889f571949a33575749067f3a77dfb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#ad7889f571949a33575749067f3a77dfb">AddMeta&lt; TV &gt;</a> (string name, TV val)</td></tr>
<tr class="memdesc:ad7889f571949a33575749067f3a77dfb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a new metadata.  <a href="#ad7889f571949a33575749067f3a77dfb">More...</a><br /></td></tr>
<tr class="separator:ad7889f571949a33575749067f3a77dfb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac367fc6ee988d7948b0e999bec23ce3f"><td class="memItemLeft" align="right" valign="top">TV&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#ac367fc6ee988d7948b0e999bec23ce3f">Meta&lt; TV &gt;</a> (string name)</td></tr>
<tr class="memdesc:ac367fc6ee988d7948b0e999bec23ce3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets metadata by name.  <a href="#ac367fc6ee988d7948b0e999bec23ce3f">More...</a><br /></td></tr>
<tr class="separator:ac367fc6ee988d7948b0e999bec23ce3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3d32be35ef64968a3d7f32195fa9e20"><td class="memItemLeft" align="right" valign="top">TV&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#ab3d32be35ef64968a3d7f32195fa9e20">RemoveMeta&lt; TV &gt;</a> (string name)</td></tr>
<tr class="memdesc:ab3d32be35ef64968a3d7f32195fa9e20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes metadata by name.  <a href="#ab3d32be35ef64968a3d7f32195fa9e20">More...</a><br /></td></tr>
<tr class="separator:ab3d32be35ef64968a3d7f32195fa9e20"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:aad4adc299a54792dd4a9b3b2f5782671"><td class="memItemLeft" align="right" valign="top">Guid&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#aad4adc299a54792dd4a9b3b2f5782671">NodeId</a><code> [get]</code></td></tr>
<tr class="memdesc:aad4adc299a54792dd4a9b3b2f5782671"><td class="mdescLeft">&#160;</td><td class="mdescRight">ID of the node on which this transaction started.  <a href="#aad4adc299a54792dd4a9b3b2f5782671">More...</a><br /></td></tr>
<tr class="separator:aad4adc299a54792dd4a9b3b2f5782671"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accd45b916470bc7f2c755be9d2cefb67"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#accd45b916470bc7f2c755be9d2cefb67">ThreadId</a><code> [get]</code></td></tr>
<tr class="memdesc:accd45b916470bc7f2c755be9d2cefb67"><td class="mdescLeft">&#160;</td><td class="mdescRight">ID of the thread in which this transaction started.  <a href="#accd45b916470bc7f2c755be9d2cefb67">More...</a><br /></td></tr>
<tr class="separator:accd45b916470bc7f2c755be9d2cefb67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5783d9bc8aac264528d240dc52cf906b"><td class="memItemLeft" align="right" valign="top">DateTime&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#a5783d9bc8aac264528d240dc52cf906b">StartTime</a><code> [get]</code></td></tr>
<tr class="memdesc:a5783d9bc8aac264528d240dc52cf906b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start time of this transaction on this node.  <a href="#a5783d9bc8aac264528d240dc52cf906b">More...</a><br /></td></tr>
<tr class="separator:a5783d9bc8aac264528d240dc52cf906b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a633de9b4660bf52bfa5367f40d09f539"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_apache_1_1_ignite_1_1_core_1_1_transactions.html#a65f263fd54a52c13d159461b31bb9e55">TransactionIsolation</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#a633de9b4660bf52bfa5367f40d09f539">Isolation</a><code> [get]</code></td></tr>
<tr class="memdesc:a633de9b4660bf52bfa5367f40d09f539"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transaction isolation level.  <a href="#a633de9b4660bf52bfa5367f40d09f539">More...</a><br /></td></tr>
<tr class="separator:a633de9b4660bf52bfa5367f40d09f539"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdee6325c0d979b048fdcdd941808701"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_apache_1_1_ignite_1_1_core_1_1_transactions.html#a129c7a06db650bbc53d5cf551252b0b2">TransactionConcurrency</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#abdee6325c0d979b048fdcdd941808701">Concurrency</a><code> [get]</code></td></tr>
<tr class="memdesc:abdee6325c0d979b048fdcdd941808701"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transaction concurrency mode.  <a href="#abdee6325c0d979b048fdcdd941808701">More...</a><br /></td></tr>
<tr class="separator:abdee6325c0d979b048fdcdd941808701"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae76ff32cd9b28656bee58266ee72b2d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_apache_1_1_ignite_1_1_core_1_1_transactions.html#ad7a45a0d52428aea09ce55cf007cf917">TransactionState</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#ae76ff32cd9b28656bee58266ee72b2d0">State</a><code> [get]</code></td></tr>
<tr class="memdesc:ae76ff32cd9b28656bee58266ee72b2d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Current transaction state.  <a href="#ae76ff32cd9b28656bee58266ee72b2d0">More...</a><br /></td></tr>
<tr class="separator:ae76ff32cd9b28656bee58266ee72b2d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a080c742967f5795c811a1fba124099ff"><td class="memItemLeft" align="right" valign="top">TimeSpan&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#a080c742967f5795c811a1fba124099ff">Timeout</a><code> [get]</code></td></tr>
<tr class="memdesc:a080c742967f5795c811a1fba124099ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Timeout for this transaction. If transaction times out prior to it's completion, an exception will be thrown. TimeSpan.Zero for infinite timeout.  <a href="#a080c742967f5795c811a1fba124099ff">More...</a><br /></td></tr>
<tr class="separator:a080c742967f5795c811a1fba124099ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0c4d5bd63625453306b23ca3bbe6f3f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#ad0c4d5bd63625453306b23ca3bbe6f3f">IsRollbackOnly</a><code> [get]</code></td></tr>
<tr class="memdesc:ad0c4d5bd63625453306b23ca3bbe6f3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a value indicating whether this transaction was marked as rollback-only.  <a href="#ad0c4d5bd63625453306b23ca3bbe6f3f">More...</a><br /></td></tr>
<tr class="separator:ad0c4d5bd63625453306b23ca3bbe6f3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Cache transactions support the following isolation levels: </p><ul>
<li>
TransactionIsolation.ReadCommitted isolation level means that always a committed value will be provided for read operations. With this isolation level values are always read from cache global memory or persistent store every time a value is accessed. In other words, if the same key is accessed more than once within the same transaction, it may have different value every time since global cache memory may be updated concurrently by other threads.  </li>
<li>
TransactionIsolation.RepeatableRead isolation level means that if a value was read once within transaction, then all consecutive reads will provide the same in-transaction value. With this isolation level accessed values are stored within in-transaction memory, so consecutive access to the same key within the same transaction will always return the value that was previously read or updated within this transaction. If concurrency is TransactionConcurrency.Pessimistic, then a lock on the key will be acquired prior to accessing the value.  </li>
<li>
TransactionIsolation.Serializable isolation level means that all transactions occur in a completely isolated fashion, as if all transactions in the system had executed serially, one after the other. Read access with this level happens the same way as with TransactionIsolation.RepeatableRead level. However, in TransactionConcurrency.Optimistic mode, if some transactions cannot be serially isolated from each other, then one winner will be picked and the other transactions in conflict will result in <code>TransactionOptimisticException</code> being thrown on Java side.  </li>
</ul>
<p>Cache transactions support the following concurrency models: </p><ul>
<li>
<p class="startli">TransactionConcurrency.Optimistic - in this mode all cache operations are not distributed to other nodes until <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#aba386970d0f1fdcd1244bf46591304a5" title="Commits this transaction. ">ITransaction.Commit()</a>. In this mode one <code>PREPARE</code> message will be sent to participating cache nodes to start acquiring per-transaction locks, and once all nodes reply <code>OK</code> (i.e. <code>Phase 1</code> completes successfully), a one-way <code>COMMIT</code> message is sent without waiting for reply. If it is necessary to know whenever remote nodes have committed as well, synchronous commit or synchronous rollback should be enabled via <code>CacheConfiguration.setWriteSynchronizationMode</code>. </p>
<p class="endli">Note that in this mode, optimistic failures are only possible in conjunction with TransactionIsolation.Serializable isolation level. In all other cases, optimistic transactions will never fail optimistically and will always be identically ordered on all participating Ignite nodes.  </p>
</li>
<li>
TransactionConcurrency.Pessimistic - in this mode a lock is acquired on all cache operations with exception of read operations in TransactionIsolation.ReadCommitted mode. All optional filters passed into cache operations will be evaluated after successful lock acquisition. Whenever <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html#aba386970d0f1fdcd1244bf46591304a5" title="Commits this transaction. ">ITransaction.Commit()</a> is called, a single one-way <code>COMMIT</code> message is sent to participating cache nodes without waiting for reply. Note that there is no reason for distributed <code>PREPARE</code> step, as all locks have been already acquired. Just like with optimistic mode, it is possible to configure synchronous commit or rollback and wait till transaction commits on all participating remote nodes.  </li>
</ul>
<p>In addition to standard <code>CacheAtomicityMode.TRANSACTIONAL</code> behavior, Ignite also supports a lighter <code>CacheAtomicityMode.ATOMIC</code> mode as well. In this mode distributed transactions and distributed locking are not supported. Disabling transactions and locking allows to achieve much higher performance and throughput ratios. It is recommended that <code>CacheAtomicityMode.TRANSACTIONAL</code> mode is used whenever full <code>ACID</code>-compliant transactions are not needed. </p>
<p>You can use cache transactions as follows: </p><div class="fragment"><div class="line">ICacheTx tx = cache.TxStart();    </div>
<div class="line"></div>
<div class="line"><span class="keywordflow">try</span> </div>
<div class="line">{</div>
<div class="line">    <span class="keywordtype">int</span> v1 = cache&lt;string, int&gt;.Get(<span class="stringliteral">&quot;k1&quot;</span>);</div>
<div class="line"></div>
<div class="line">    <span class="comment">// Check if v1 satisfies some condition before doing a put.</span></div>
<div class="line">    <span class="keywordflow">if</span> (v1 &gt; 0)</div>
<div class="line">        cache.Put&lt;string, <span class="keywordtype">int</span>&gt;(<span class="stringliteral">&quot;k1&quot;</span>, 2);</div>
<div class="line"></div>
<div class="line">    cache.Removex(<span class="stringliteral">&quot;k2);</span></div>
<div class="line"><span class="stringliteral"></span></div>
<div class="line"><span class="stringliteral">    // Commit the transaction.</span></div>
<div class="line"><span class="stringliteral">    tx.Commit();</span></div>
<div class="line"><span class="stringliteral">}</span></div>
<div class="line"><span class="stringliteral">finally </span></div>
<div class="line"><span class="stringliteral">{</span></div>
<div class="line"><span class="stringliteral">    tx.Dispose();</span></div>
<div class="line"><span class="stringliteral">}</span></div>
</div><!-- fragment --> </div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ad7889f571949a33575749067f3a77dfb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Apache.Ignite.Core.Transactions.ITransaction.AddMeta&lt; TV &gt; </td>
          <td>(</td>
          <td class="paramtype">string&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">TV&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>Metadata name.</td></tr>
    <tr><td class="paramname">val</td><td>Metadata value.</td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aba386970d0f1fdcd1244bf46591304a5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Apache.Ignite.Core.Transactions.ITransaction.Commit </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a8700c30bff1ca96cfe1b9c6b3927072d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Task Apache.Ignite.Core.Transactions.ITransaction.CommitAsync </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="ac367fc6ee988d7948b0e999bec23ce3f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">TV Apache.Ignite.Core.Transactions.ITransaction.Meta&lt; TV &gt; </td>
          <td>(</td>
          <td class="paramtype">string&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>Metadata name.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Metadata value.</dd></dl>
<dl class="exception"><dt>Exceptions</dt><dd>
  <table class="exception">
    <tr><td class="paramname">KeyNotFoundException</td><td>If metadata key was not found.</td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ab3d32be35ef64968a3d7f32195fa9e20"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">TV Apache.Ignite.Core.Transactions.ITransaction.RemoveMeta&lt; TV &gt; </td>
          <td>(</td>
          <td class="paramtype">string&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>Metadata name.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Value of removed metadata or default value for <code>V</code> type.</dd></dl>

</div>
</div>
<a class="anchor" id="a3d8b41a1d016f44fd86a2477f8d213c8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Apache.Ignite.Core.Transactions.ITransaction.Rollback </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a91c8b2c7d94fad564596482232e80848"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Task Apache.Ignite.Core.Transactions.ITransaction.RollbackAsync </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a495d08a23d723c439146f6fe20c8cf0c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Apache.Ignite.Core.Transactions.ITransaction.SetRollbackonly </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>True if rollback-only flag was set as a result of this operation, false if it was already set prior to this call or could not be set because transaction is already finishing up committing or rolling back. </dd></dl>

</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a class="anchor" id="abdee6325c0d979b048fdcdd941808701"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespace_apache_1_1_ignite_1_1_core_1_1_transactions.html#a129c7a06db650bbc53d5cf551252b0b2">TransactionConcurrency</a> Apache.Ignite.Core.Transactions.ITransaction.Concurrency</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a633de9b4660bf52bfa5367f40d09f539"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespace_apache_1_1_ignite_1_1_core_1_1_transactions.html#a65f263fd54a52c13d159461b31bb9e55">TransactionIsolation</a> Apache.Ignite.Core.Transactions.ITransaction.Isolation</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="ad0c4d5bd63625453306b23ca3bbe6f3f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool Apache.Ignite.Core.Transactions.ITransaction.IsRollbackOnly</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="aad4adc299a54792dd4a9b3b2f5782671"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Guid Apache.Ignite.Core.Transactions.ITransaction.NodeId</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Originating node ID. </p>

</div>
</div>
<a class="anchor" id="a5783d9bc8aac264528d240dc52cf906b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">DateTime Apache.Ignite.Core.Transactions.ITransaction.StartTime</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="ae76ff32cd9b28656bee58266ee72b2d0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespace_apache_1_1_ignite_1_1_core_1_1_transactions.html#ad7a45a0d52428aea09ce55cf007cf917">TransactionState</a> Apache.Ignite.Core.Transactions.ITransaction.State</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="accd45b916470bc7f2c755be9d2cefb67"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">long Apache.Ignite.Core.Transactions.ITransaction.ThreadId</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a080c742967f5795c811a1fba124099ff"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">TimeSpan Apache.Ignite.Core.Transactions.ITransaction.Timeout</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespace_apache.html">Apache</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite.html">Ignite</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite_1_1_core.html">Core</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite_1_1_core_1_1_transactions.html">Transactions</a></li><li class="navelem"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_transactions_1_1_i_transaction.html">ITransaction</a></li>
    <li class="footer">Generated on Mon Dec 5 2016 14:37:40 for Apache Ignite.NET by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
  </ul>
</div>
</body>
</html>
