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

# timeout_overflow_mode_* session settings

> ClickHouse session settings in the timeout_overflow_mode_* generated group.

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"
  }}>Default</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Changeable without restart
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

These settings are available in [system.settings](/reference/system-tables/settings) and are autogenerated from [source](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<h2 id="timeout_overflow_mode">
  timeout\_overflow\_mode
</h2>

<SettingsInfoBlock type="OverflowMode" default_value="throw" />

Sets what to do if the query is run longer than the `max_execution_time` or the
estimated running time is longer than `max_estimated_execution_time` (the
estimate is only checked with `throw`).

Possible values:

* `throw`: throw an exception (default).
* `break`: stop executing the query and return the partial result, as if the
  source data ran out. Some operations cannot return a partial result safely, so instead of a smaller
  result they stop without producing one. A function computing a single value stops without producing
  that value; whether the stop also reaches the client as a `TIMEOUT_EXCEEDED` error, or only as a
  missing result, depends on where the query was interrupted. A `Memory`-table mutation left
  incomplete by the timeout keeps the table unchanged and reports `TIMEOUT_EXCEEDED`. An `INSERT` may
  report `QUERY_WAS_CANCELLED`. Some operations that wait for other replicas or for background work
  do not stop at `max_execution_time` at all: a quorum write keeps waiting until its quorum is
  satisfied, or reports `UNKNOWN_STATUS_OF_INSERT` if `insert_quorum_timeout` elapses first.

<h2 id="timeout_overflow_mode_leaf">
  timeout\_overflow\_mode\_leaf
</h2>

<SettingsInfoBlock type="OverflowMode" default_value="throw" />

Sets what happens when the query in leaf node run longer than `max_execution_time_leaf`.

Possible values:

* `throw`: throw an exception (default).
* `break`: stop executing the query and return the partial result, as if the
  source data ran out. Some operations cannot return a partial result safely, so
  instead of a smaller result they stop without producing one: a function
  computing a single value stops without producing that value. Whether such a stop
  also reaches the client as a `TIMEOUT_EXCEEDED` error, or only as a missing
  result, depends on where the query was interrupted.
