<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/mongodb.mongodb.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'pt_BR',
  ),
  'this' => 
  array (
    0 => 'class.mongodb-driver-readconcern.php',
    1 => 'MongoDB\\Driver\\ReadConcern',
    2 => 'A classe MongoDB\\Driver\\ReadConcern',
  ),
  'up' => 
  array (
    0 => 'mongodb.mongodb.php',
    1 => 'MongoDB\\Driver',
  ),
  'prev' => 
  array (
    0 => 'mongodb-driver-readpreference.gettagsets.php',
    1 => 'MongoDB\\Driver\\ReadPreference::getTagSets',
  ),
  'next' => 
  array (
    0 => 'mongodb-driver-readconcern.bsonserialize.php',
    1 => 'MongoDB\\Driver\\ReadConcern::bsonSerialize',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'pt_BR',
    'path' => 'reference/mongodb/mongodb/driver/readconcern.xml',
  ),
  'history' => 
  array (
  ),
  'extra_header_links' => 
  array (
    'rel' => 'alternate',
    'href' => '/manual/en/feeds/class.mongodb-driver-readconcern.atom',
    'type' => 'application/atom+xml',
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="class.mongodb-driver-readconcern" class="reference">

 <h1 class="title">A classe MongoDB\Driver\ReadConcern</h1>
 

 <div class="partintro"><p class="verinfo">(mongodb &gt;=1.1.0)</p>


  <div class="section" id="mongodb-driver-readconcern.intro">
   <h2 class="title">Introdução</h2>
   <p class="para">
    A classe <span class="classname"><strong class="classname">MongoDB\Driver\ReadConcern</strong></span> controla o nível de
    isolamento para operações de leitura em conjuntos de réplicas e fragmentos de conjuntos de réplicas. Esta
    opção requer o MongoDB 3.2 ou posterior.
   </p>
  </div>


  <div class="section" id="mongodb-driver-readconcern.synopsis">
   <h2 class="title">Resumo da classe</h2>


   <div class="classsynopsis">
    <span class="ooclass"><strong class="classname"></strong></span>


    <div class="classsynopsisinfo">
     <span class="modifier">final</span>
     <span class="ooclass">
      <span class="modifier">class</span> <strong class="classname">MongoDB\Driver\ReadConcern</strong>
     </span>

     <span class="oointerface"><span class="modifier">implements</span> 
       <a href="class.mongodb-bson-serializable.php" class="interfacename">MongoDB\BSON\Serializable</a></span><span class="oointerface">,  <a href="class.serializable.php" class="interfacename">Serializable</a></span> {</div>

    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Constantes */</div>
    <div class="fieldsynopsis">
     <span class="modifier">const</span>
     <span class="type"><a href="language.types.string.php" class="type string">string</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.linearizable"><var class="varname">AVAILABLE</var></a></var><span class="initializer"> = &quot;available&quot;</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.string.php" class="type string">string</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.linearizable"><var class="varname">LINEARIZABLE</var></a></var><span class="initializer"> = &quot;linearizable&quot;</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.string.php" class="type string">string</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.local"><var class="varname">LOCAL</var></a></var><span class="initializer"> = &quot;local&quot;</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.string.php" class="type string">string</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.majority"><var class="varname">MAJORITY</var></a></var><span class="initializer"> = &quot;majority&quot;</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.string.php" class="type string">string</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.snapshot"><var class="varname">SNAPSHOT</var></a></var><span class="initializer"> = &quot;snapshot&quot;</span>;</div>


    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Métodos */</div>
    <div class="methodsynopsis dc-description">
   <span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-driver-readconcern.bsonserialize.php" class="methodname">bsonSerialize</a></span>(): <span class="type"><a href="class.stdclass.php" class="type stdClass">stdClass</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-driver-readconcern.construct.php" class="methodname">__construct</a></span>(<span class="methodparam"><span class="type"><span class="type"><a href="language.types.null.php" class="type null">?</a></span><span class="type"><a href="language.types.string.php" class="type string">string</a></span></span> <code class="parameter">$level</code><span class="initializer"> = <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong></span></span>)</div>
<div class="methodsynopsis dc-description"><span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-driver-readconcern.getlevel.php" class="methodname">getLevel</a></span>(): <span class="type"><span class="type"><a href="language.types.null.php" class="type null">?</a></span><span class="type"><a href="language.types.string.php" class="type string">string</a></span></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-driver-readconcern.isdefault.php" class="methodname">isDefault</a></span>(): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>

   }</div>


  </div>


  <div class="section" id="mongodb-driver-readconcern.constants">
   <h2 class="title">Constantes predefinidas</h2>
   <dl>

    
     <dt id="mongodb-driver-readconcern.constants.available"><strong><code><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.available">MongoDB\Driver\ReadConcern::AVAILABLE</a></code></strong></dt>
     <dd>
      <p class="para">
       Padrão para leitura de secundários quando
       <code class="literal">afterClusterTime</code> e <code class="literal">level</code> não são
       especificados.
      </p>
      <p class="para">
       A consulta retorna os dados mais recentes da instância. Não fornece nenhuma
       garantia de que os dados foram gravados na maioria dos membros do conjunto de
       réplicas (ou seja, podem ser revertidos).
      </p>
      <p class="para">
       Para coleções não fragmentadas (incluindo coleções em uma implantação
       autônoma ou uma implantação de conjunto de réplicas), as preocupações de leitura <code class="literal">&quot;local&quot;</code> e
       <code class="literal">&quot;available&quot;</code> se comportam de forma idêntica.
      </p>
      <p class="para">
       Para um cluster fragmentado, a preocupação de leitura <code class="literal">&quot;available&quot;</code>
       fornece maior tolerância para partições, uma vez que não espera por
       garantias de consistência. No entanto, uma consulta com
       preocupação de leitura <code class="literal">&quot;available&quot;</code> pode retornar documentos órfãos
       se o fragmento estiver passando por migrações de blocos desde a
       preocupação de leitura <code class="literal">&quot;available&quot;</code>, ao contrário da
       preocupação de leitura <code class="literal">&quot;local&quot;</code>, que não entra em contato
       com o servidor primário do fragmento nem com os servidores de configuração para obter metadados atualizados.
      </p>
     </dd>
    

    
     <dt id="mongodb-driver-readconcern.constants.linearizable"><strong><code><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.linearizable">MongoDB\Driver\ReadConcern::LINEARIZABLE</a></code></strong></dt>
     <dd>
      <p class="para">
       A consulta retorna dados que refletem todas as gravações bem-sucedidas emitidas com uma
       preocupação de gravação de <code class="literal">&quot;majority&quot;</code> <em>e</em>
       reconhecida antes do início da operação de leitura. Para conjuntos de réplicas
       executados com <code class="literal">writeConcernMajorityJournalDefault</code> igual
       a <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong>, a preocupação de leitura linearizável retorna dados que nunca serão
       revertidos.
      </p>
      <p class="para">
       Com <code class="literal">writeConcernMajorityJournalDefault</code> igual a
       <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>, o MongoDB não esperará que as gravações <code class="literal">w: &quot;majority&quot;</code>
       sejam duráveis ​​antes de reconhecê-las. Como tal,
       as operações de gravação <code class="literal">&quot;majority&quot;</code> poderiam possivelmente ser revertidas
       no caso de perda de um membro do conjunto de réplicas.
      </p>
      <p class="para">
       Pode-se especificar a preocupação de leitura linearizável apenas para operações de
       leitura no primário.
      </p>
      <p class="para">
       As garantias de preocupação de leitura linearizáveis ​​só se aplicam se as operações
       de leitura especificarem um filtro de consulta que identifique exclusivamente um único
       documento.
      </p>
      <div class="tip"><strong class="tip">Dica</strong>
       <p class="simpara">
        Sempre use <code class="literal">maxTimeMS</code> com preocupação de leitura linearizável
        caso a maioria dos membros que contêm dados estejam indisponíveis.
        <code class="literal">maxTimeMS</code> garante que a operação não seja bloqueada
        indefinidamente e, em vez disso, garante que a operação retorne um erro se
        a preocupação de leitura não puder ser atendida.
       </p>
      </div>
      <p class="para">
       A preocupação de leitura linearizável requer MongoDB 3.4.
      </p>
     </dd>
    

    
     <dt id="mongodb-driver-readconcern.constants.local"><strong><code><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.local">MongoDB\Driver\ReadConcern::LOCAL</a></code></strong></dt>
     <dd>
      <p class="para">
       Padrão para leituras em relação ao primário se <code class="literal">level</code> não
       for especificado e para leituras em relação a secundários se <code class="literal">level</code>
       não for especificado, mas <code class="literal">afterClusterTime</code> for especificado.
      </p>
      <p class="para">
       A consulta retorna os dados mais recentes da instância. Não fornece
       nenhuma garantia de que os dados foram gravados na maioria dos membros do conjunto de
       réplicas (ou seja, podem ser revertidos).
      </p>
     </dd>
    

    
     <dt id="mongodb-driver-readconcern.constants.majority"><strong><code><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.majority">MongoDB\Driver\ReadConcern::MAJORITY</a></code></strong></dt>
     <dd>
      <p class="para">
       A consulta retorna os dados mais recentes da instância reconhecidos como
       tendo sido gravados para a maioria dos membros do conjunto de réplicas.
      </p>
      <p class="para">
       Para usar o nível de preocupação de leitura de <code class="literal">&quot;majority&quot;</code>, os conjuntos
       de réplicas devem usar o mecanismo de armazenamento WiredTiger e o protocolo de escolha versão 1.
      </p>
     </dd>
    

    
     <dt id="mongodb-driver-readconcern.constants.snapshot"><strong><code><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.snapshot">MongoDB\Driver\ReadConcern::SNAPSHOT</a></code></strong></dt>
     <dd>
      <p class="para">
       A preocupação de leitura <code class="literal">&quot;snapshot&quot;</code> está disponível para
       transações multi-documentos e, a partir do MongoDB 5.0, certas operações
       de leitura fora das transações multi-documentos.
      </p>
      <p class="para">
       Se a transação não fizer parte de uma sessão causalmente consistente, após
       a confirmação da transação com preocupação de gravação <code class="literal">&quot;majority&quot;</code>, é
       garantido que as operações de transação tenham lido um instantâneo de
       dados confirmados pela maioria.
      </p>
      <p class="para">
       Se a transação fizer parte de uma sessão causalmente consistente, após
       a confirmação da transação com preocupação de gravação <code class="literal">&quot;majority&quot;</code>, é
       garantido que as operações de transação tenham lido um instantâneo de
       dados confirmados pela maioria que fornece consistência causal com a
       operação imediatamente anterior ao início da transação.
      </p>
      <p class="para">
       Fora das transações multi-documentos, a preocupação de leitura
       <code class="literal">&quot;snapshot&quot;</code> está disponíveis nos primários e secundários
       para as seguintes operações de leitura: <code class="literal">find</code>,
       <code class="literal">aggregate</code> e <code class="literal">distinct</code> (em
       coleções não fragmentadas). Todos os outros comandos de leitura proíbem
       <code class="literal">&quot;snapshot&quot;</code>.
      </p>
     </dd>
    

   </dl>
  </div>


  <div class="section">
   <h2 class="title">Registro de Alterações</h2>
   <p class="para">
    <table class="doctable informaltable">
     
      <thead>
       <tr>
        <th>Versão</th>
        <th>Descrição</th>
       </tr>

      </thead>

      <tbody class="tbody">
       <tr>
        <td>PECL mongodb 1.11.0</td>
        <td>
         <p class="para">
          Adicionada a constante
          <strong><code><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.snapshot">MongoDB\Driver\ReadConcern::SNAPSHOT</a></code></strong>.
         </p>
        </td>
       </tr>

       <tr>
        <td>PECL mongodb 1.7.0</td>
        <td>
         Implementa <span class="interfacename"><a href="class.serializable.php" class="interfacename">Serializable</a></span>.
        </td>
       </tr>

       <tr>
        <td>PECL mongodb 1.4.0</td>
        <td>
         <p class="para">
          Adicionada a constante
          <strong><code><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.available">MongoDB\Driver\ReadConcern::AVAILABLE</a></code></strong>.
         </p>
        </td>
       </tr>

       <tr>
        <td>PECL mongodb 1.2.0</td>
        <td>
         <p class="para">
          Adicionada a
          constante
          <strong><code><a href="class.mongodb-driver-readconcern.php#mongodb-driver-readconcern.constants.linearizable">MongoDB\Driver\ReadConcern::LINEARIZABLE</a></code></strong>.
         </p>
         <p class="para">
          Implementa <span class="interfacename"><a href="class.mongodb-bson-serializable.php" class="interfacename">MongoDB\BSON\Serializable</a></span>.
         </p>
        </td>
       </tr>

      </tbody>
     
    </table>

   </p>
  </div>

  <div class="section" id="mongodb-driver-readconcern.seealso">
   <h2 class="title">Veja Também</h2>
   <ul class="simplelist">
    <li><a href="https://www.mongodb.com/docs/manual/reference/read-concern/" class="link external">&raquo;&nbsp;Referência de Preocupação de Leitura</a></li>
   </ul>
  </div>

 </div>

 




























<h2>Índice</h2><ul class="chunklist chunklist_reference"><li><a href="mongodb-driver-readconcern.bsonserialize.php">MongoDB\Driver\ReadConcern::bsonSerialize</a> — Retorna um objeto para serializa&ccedil;&atilde;o BSON</li><li><a href="mongodb-driver-readconcern.construct.php">MongoDB\Driver\ReadConcern::__construct</a> — Cria uma nova preocupa&ccedil;&atilde;o de leitura</li><li><a href="mongodb-driver-readconcern.getlevel.php">MongoDB\Driver\ReadConcern::getLevel</a> — Retorna o n&iacute;vel da preocupa&ccedil;&atilde;o de leitura</li><li><a href="mongodb-driver-readconcern.isdefault.php">MongoDB\Driver\ReadConcern::isDefault</a> — Verifica se esta &eacute; a preocupa&ccedil;&atilde;o de leitura padr&atilde;o</li></ul>
</div>
<?php manual_footer($setup); ?>