<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<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.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>&nbsp; Apache Ignite C++: ignite::transactions::TransactionIsolation Struct 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</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 id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">&nbsp; Apache Ignite C++
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceignite.html">ignite</a></li><li class="navelem"><a class="el" href="namespaceignite_1_1transactions.html">transactions</a></li><li class="navelem"><a class="el" href="structignite_1_1transactions_1_1TransactionIsolation.html">TransactionIsolation</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="structignite_1_1transactions_1_1TransactionIsolation-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">ignite::transactions::TransactionIsolation Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Defines different cache transaction isolation levels.  
 <a href="structignite_1_1transactions_1_1TransactionIsolation.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="core_2include_2ignite_2transactions_2transaction__consts_8h_source.html">transaction_consts.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a3ac24463ce4e1f63186a974c33c6b3e3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structignite_1_1transactions_1_1TransactionIsolation.html#a3ac24463ce4e1f63186a974c33c6b3e3">Type</a> { <a class="el" href="structignite_1_1transactions_1_1TransactionIsolation.html#a3ac24463ce4e1f63186a974c33c6b3e3afedbd137a83cadbbff0daae1f10f4c53">READ_COMMITTED</a> = 0, 
<a class="el" href="structignite_1_1transactions_1_1TransactionIsolation.html#a3ac24463ce4e1f63186a974c33c6b3e3a6f7ada83d09adcb5cf6d107c08f88dec">REPEATABLE_READ</a> = 1, 
<a class="el" href="structignite_1_1transactions_1_1TransactionIsolation.html#a3ac24463ce4e1f63186a974c33c6b3e3a8dadab2cb79ed7d2d0ed91f692fa3b27">SERIALIZABLE</a> = 2
 }</td></tr>
<tr class="separator:a3ac24463ce4e1f63186a974c33c6b3e3"><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>Defines different cache transaction isolation levels. </p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a3ac24463ce4e1f63186a974c33c6b3e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3ac24463ce4e1f63186a974c33c6b3e3">&#9670;&nbsp;</a></span>Type</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="structignite_1_1transactions_1_1TransactionIsolation.html#a3ac24463ce4e1f63186a974c33c6b3e3">ignite::transactions::TransactionIsolation::Type</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a3ac24463ce4e1f63186a974c33c6b3e3afedbd137a83cadbbff0daae1f10f4c53"></a>READ_COMMITTED&#160;</td><td class="fielddoc"><p>Read committed isolation level. </p>
<p>This 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. </p>
</td></tr>
<tr><td class="fieldname"><a id="a3ac24463ce4e1f63186a974c33c6b3e3a6f7ada83d09adcb5cf6d107c08f88dec"></a>REPEATABLE_READ&#160;</td><td class="fielddoc"><p>Repeatable read isolation level. </p>
<p>This 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 ::IGNITE_TX_CONCURRENCY_PESSIMISTIC, then a lock on the key will be acquired prior to accessing the value. </p>
</td></tr>
<tr><td class="fieldname"><a id="a3ac24463ce4e1f63186a974c33c6b3e3a8dadab2cb79ed7d2d0ed91f692fa3b27"></a>SERIALIZABLE&#160;</td><td class="fielddoc"><p>Serializable isolation level. </p>
<p>This 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 ::IGNITE_TX_ISOLATION_REPEATABLE_READ level. However, in ::IGNITE_TX_CONCURRENCY_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 <a class="el" href="classignite_1_1IgniteError.html" title="Ignite error information.">IgniteError</a> being thrown. </p>
</td></tr>
</table>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="core_2include_2ignite_2transactions_2transaction__consts_8h_source.html">core/include/ignite/transactions/transaction_consts.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Mon Jan 10 2022 11:02:04 for &nbsp; Apache Ignite C++ by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>
