> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-postgresql-tls-support.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# paramètres de session function_*

> Paramètres de session ClickHouse du groupe généré function_*.

export const VersionHistory = ({rows = []}) => {
  if (rows.length === 0) {
    return null;
  }
  const headers = ["Version", "Valeur par défaut", "Commentaire"];
  const border = "1px solid rgba(128, 128, 128, 0.3)";
  const cell = {
    border,
    padding: "0.25rem 0.5rem",
    textAlign: "start",
    verticalAlign: "top"
  };
  return <details className="not-prose" style={{
    border,
    borderRadius: "0.5rem",
    margin: "0.5rem 0",
    padding: "0.5rem 0.75rem",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <summary style={{
    cursor: "pointer",
    fontWeight: 600,
    opacity: 0.72
  }}>
        Historique des versions
      </summary>
      <table style={{
    borderCollapse: "collapse",
    width: "100%",
    margin: "0.5rem 0 0"
  }}>
        <thead>
          <tr>
            {headers.map(header => <th key={header} style={{
    ...cell,
    fontWeight: 600,
    opacity: 0.72
  }}>
                {header}
              </th>)}
          </tr>
        </thead>
        <tbody>
          {rows.map((row, row_index) => <tr key={row.id ?? row_index}>
              {(row.items ?? []).map((item, item_index) => <td key={item_index} style={{
    ...cell,
    overflowWrap: "anywhere"
  }}>
                  {item?.label}
                </td>)}
            </tr>)}
        </tbody>
      </table>
    </details>;
};

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
  }}>Type</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Par défaut</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Modifiable sans redémarrage
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

Ces paramètres sont disponibles dans [system.settings](/fr/reference/system-tables/settings) et sont générés automatiquement à partir du [code source](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="function_base58_max_input_size">
  ## function\_base58\_max\_input\_size
</div>

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

Taille maximale, en octets, d’une valeur d’entrée unique pour les fonctions `base58Encode`, `base58Decode` et `tryBase58Decode`. La conversion générique `base58` est quadratique par rapport à la longueur de l’entrée ; une seule valeur volumineuse peut donc prendre très longtemps à être traitée. `base58` est conçu pour des données courtes (clés, hashes, adresses) ; la valeur par défaut de 10 KB constitue donc un seuil de sécurité large. `base58Encode` et `base58Decode` lèvent l’exception `TOO_LARGE_STRING_SIZE` pour les entrées plus volumineuses, tandis que `tryBase58Decode` renvoie une chaîne vide. Une valeur de `0` désactive la limite (c’était le comportement avant l’introduction de ce paramètre). Les fonctions linéaires `base32` et `base64` ne sont pas affectées.

<div id="function_date_trunc_return_type_behavior">
  ## function\_date\_trunc\_return\_type\_behavior
</div>

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

Permet de modifier le comportement du type de résultat renvoyé par la fonction `dateTrunc`.

Valeurs possibles :

* 0 - Lorsque le deuxième argument est `DateTime64/Date32`, le type de retour est `DateTime64/Date32`, quelle que soit l'unité de temps du premier argument.
* 1 - Pour `Date32`, le résultat est toujours `Date`. Pour `DateTime64`, le résultat est `DateTime` pour les unités de temps `second` et supérieures.

<div id="function_implementation">
  ## function\_implementation
</div>

Choisissez l’implémentation de fonction pour une cible spécifique ou pour Variant (expérimental). Si ce champ est vide, elles sont toutes activées.

<div id="function_locate_has_mysql_compatible_argument_order">
  ## function\_locate\_has\_mysql\_compatible\_argument\_order
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

Contrôle l'ordre des arguments de la fonction [locate](/fr/reference/functions/regular-functions/string-search-functions#locate).

Valeurs possibles :

* 0 — La fonction `locate` accepte les arguments `(haystack, needle[, start_pos])`.
* 1 — La fonction `locate` accepte les arguments `(needle, haystack, [, start_pos])` (comportement compatible avec MySQL)

<div id="function_range_max_elements_in_block">
  ## function\_range\_max\_elements\_in\_block
</div>

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

Définit le seuil de sécurité du volume de données généré par la fonction [range](/fr/reference/functions/regular-functions/array-functions#range). Indique le nombre maximal de valeurs générées par la fonction par bloc de données (somme des tailles des tableaux pour chaque ligne d’un bloc).

Valeurs possibles :

* Entier positif.

**Voir aussi**

* [`max_block_size`](/fr/reference/settings/session-settings/max#max_block_size)
* [`min_insert_block_size_rows`](/fr/reference/settings/session-settings/min-insert#min_insert_block_size_rows)

<div id="function_sleep_max_microseconds_per_block">
  ## function\_sleep\_max\_microseconds\_per\_block
</div>

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

Nombre maximal de microsecondes pendant lesquelles la fonction `sleep` peut être en attente pour chaque bloc. Si un utilisateur l’appelle avec une valeur supérieure, cela lève une exception. Il s’agit d’un seuil de sécurité.

<div id="function_visible_width_behavior">
  ## function\_visible\_width\_behavior
</div>

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

Version du comportement de `visibleWidth`. 0 - compte uniquement le nombre de points de code ; 1 - compte correctement les caractères de largeur nulle et les caractères de combinaison, compte les caractères de pleine largeur pour deux, estime la largeur des tabulations, compte les caractères d'effacement.
