> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# configurações de sessão insert_keeper_*

> Configurações de sessão do ClickHouse no grupo gerado insert_keeper_*.

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>Tipo</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Padrão</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Pode ser alterado sem reiniciar
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

Estas configurações estão disponíveis em [system.settings](/docs/pt-BR/reference/system-tables/settings) e são geradas automaticamente a partir do [código-fonte](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="insert_keeper_fault_injection_probability">
  ## insert\_keeper\_fault\_injection\_probability
</div>

<SettingsInfoBlock type="Float" default_value="0" />

Probabilidade aproximada de falha de uma requisição do Keeper durante o insert. O valor válido está no intervalo \[0.0f, 1.0f]

<div id="insert_keeper_fault_injection_seed">
  ## insert\_keeper\_fault\_injection\_seed
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

0 - semente aleatória; caso contrário, o valor da configuração

<div id="insert_keeper_max_retries">
  ## insert\_keeper\_max\_retries
</div>

<SettingsInfoBlock type="UInt64" default_value="20" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.2"},{"label": "20"},{"label": "Habilita reconexões ao Keeper em INSERT, melhorando a confiabilidade"}]}]} />

Essa configuração define o número máximo de novas tentativas para requisições ao ClickHouse Keeper (ou ZooKeeper) durante o INSERT em MergeTree replicado. Apenas requisições ao Keeper que falharem devido a erro de rede, timeout de sessão do Keeper ou timeout da requisição são consideradas para novas tentativas.

Valores possíveis:

* Inteiro positivo.
* 0 — As novas tentativas são desabilitadas

As novas tentativas de requisições ao Keeper são feitas após um certo timeout. O timeout é controlado pelas seguintes configurações: `insert_keeper_retry_initial_backoff_ms`, `insert_keeper_retry_max_backoff_ms`.
A primeira nova tentativa é feita após o timeout de `insert_keeper_retry_initial_backoff_ms`. Os timeouts seguintes serão calculados da seguinte forma:

```
timeout = min(insert_keeper_retry_max_backoff_ms, latest_timeout * 2)
```

Por exemplo, se `insert_keeper_retry_initial_backoff_ms=100`, `insert_keeper_retry_max_backoff_ms=10000` e `insert_keeper_max_retries=8`, então os timeouts serão `100, 200, 400, 800, 1600, 3200, 6400, 10000`.

Além da tolerância a falhas, as tentativas de retry visam proporcionar uma melhor experiência ao usuário — elas permitem evitar que um erro seja retornado durante a execução de INSERT se o Keeper for reiniciado, por exemplo, devido a um upgrade.

<div id="insert_keeper_retry_initial_backoff_ms">
  ## insert\_keeper\_retry\_initial\_backoff\_ms
</div>

<SettingsInfoBlock type="UInt64" default_value="100" />

Timeout inicial (em milissegundos) para tentar novamente uma requisição do Keeper que falhou durante a execução da consulta INSERT

Valores possíveis:

* Inteiro positivo.
* 0 — Sem timeout

<div id="insert_keeper_retry_max_backoff_ms">
  ## insert\_keeper\_retry\_max\_backoff\_ms
</div>

<SettingsInfoBlock type="UInt64" default_value="10000" />

Timeout máximo (em milissegundos) para tentar novamente uma requisição do Keeper com falha durante a execução da consulta INSERT

Valores possíveis:

* Inteiro positivo.
* 0 — O timeout máximo não tem limite
