> ## 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.

# ajustes de sesión apply_*

> Ajustes de sesión de ClickHouse del grupo generado apply_*.

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"
  }}>Predeterminado</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Modificable sin reiniciar
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

Estas opciones de configuración están disponibles en [system.settings](/docs/es/reference/system-tables/settings) y se generan automáticamente a partir del [código fuente](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="apply_deleted_mask">
  ## apply\_deleted\_mask
</div>

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

Permite filtrar las filas eliminadas con DELETE de eliminación ligera. Si se deshabilita, una consulta podrá leer esas filas. Esto resulta útil para tareas de depuración y para escenarios de "deshacer la eliminación".

<div id="apply_mutations_on_fly">
  ## apply\_mutations\_on\_fly
</div>

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

Si se establece en true, las mutaciones (UPDATE y DELETE) que no estén materializadas en la parte de datos se aplicarán en las consultas SELECT.

<div id="apply_prewhere_after_final">
  ## apply\_prewhere\_after\_final
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.12"},{"label": "0"},{"label": "Nueva configuración. Cuando se habilita, las condiciones PREWHERE se aplican después del procesamiento FINAL."}]}]} />

Cuando se habilita, las condiciones PREWHERE se aplican después del procesamiento FINAL en ReplacingMergeTree y motores similares.
Esto puede ser útil cuando PREWHERE hace referencia a columnas que pueden tener valores distintos entre filas duplicadas
y quiere que FINAL seleccione la fila que prevalece antes de filtrar. Cuando está deshabilitada, PREWHERE se aplica durante la lectura.
Nota: Si apply\_row\_level\_security\_after\_final está habilitada y la política de filas usa columnas que no forman parte de la clave de ordenación, PREWHERE también
se aplazará para mantener el orden de ejecución correcto (la política de filas debe aplicarse antes de PREWHERE).

<div id="apply_row_policy_after_final">
  ## apply\_row\_policy\_after\_final
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.10"},{"label": "1"},{"label": "La configuración se añadió como corrección de la regresión posterior a #87303, en la que las políticas de fila y PREWHERE se aplicaban antes de FINAL. El PR #91065 introdujo la configuración y el PR #97279 hizo que true, la opción segura en términos de corrección, fuera el valor predeterminado. Se registró como {true, true} para que compatibility nunca revierta al comportamiento false anterior a la corrección."}]}]} />

Cuando está habilitado, las políticas de fila y PREWHERE se aplican después del procesamiento de FINAL en las tablas \*MergeTree. (Especialmente en ReplacingMergeTree)
Cuando está deshabilitado, las políticas de fila se aplican antes de FINAL, lo que puede dar resultados diferentes cuando la política
filtra filas que deberían usarse para la deduplicación en ReplacingMergeTree o motores similares.

Si la expresión de la política de fila depende solo de columnas de ORDER BY, se seguirá aplicando antes de FINAL como optimización,
ya que ese filtrado no puede afectar al resultado de la deduplicación.

Valores posibles:

* 0 — La política de fila y PREWHERE se aplican antes de FINAL (predeterminado).
* 1 — La política de fila y PREWHERE se aplican después de FINAL.

<div id="apply_settings_from_server">
  ## apply\_settings\_from\_server
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.2"},{"label": "1"},{"label": "El código del lado del client (p. ej., el análisis de la entrada de INSERT y el formato de salida de la consulta) usará la misma configuración que el servidor, incluida la configuración del servidor."}]}]} />

Si el client debe aceptar la configuración del servidor.

Esto solo afecta a las operaciones realizadas del lado del client, en particular el análisis de los datos de entrada de INSERT y el formato del resultado de la consulta. La mayor parte de la ejecución de consultas ocurre en el servidor y no se ve afectada por esta configuración.

Normalmente, esta configuración debe establecerse en el perfil de usuario (`users.xml` o consultas como `ALTER USER`), no a través del client (argumentos de línea de comandos del client, consulta `SET` o sección `SETTINGS` de la consulta `SELECT`). A través del client puede cambiarse a false, pero no puede cambiarse a true (porque el servidor no enviará la configuración si el perfil de usuario tiene `apply_settings_from_server = false`).

Tenga en cuenta que, inicialmente (24.12), existía una configuración del servidor (`send_settings_to_client`), pero posteriormente fue sustituida por esta configuración de cliente para mejorar la usabilidad.
