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

# dead_blobs_* MergeTree table settings

> ClickHouse MergeTree table settings in the dead_blobs_* 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.merge\_tree\_settings](/docs/reference/system-tables/merge_tree_settings) and are autogenerated from ClickHouse source.

<h2 id="dead_blobs_to_delay_insert">
  dead\_blobs\_to\_delay\_insert
</h2>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "100000"},{"label": "New setting to artificially slow down inserts when the dead blobs queues of the table's disks accumulate too many blobs pending removal."}]}]} />

If the number of blobs pending removal in the dead blobs queues of the table's disks exceeds the
`dead_blobs_to_delay_insert` value, an `INSERT` is artificially slowed down (up to `max_delay_to_insert`).

The dead blobs queue belongs to the disk and is shared by all tables on it (including blobs of already
dropped tables), so size the threshold for the whole disk rather than a single table.

<Tip>
  It is useful when a server fails to clean up blobs quickly enough.
</Tip>

Possible values:

* Any positive integer.
* 0 — disabled.

<h2 id="dead_blobs_to_throw_insert">
  dead\_blobs\_to\_throw\_insert
</h2>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "1000000"},{"label": "New setting to reject inserts when the dead blobs queues of the table's disks accumulate too many blobs pending removal."}]}]} />

If the number of blobs pending removal in the dead blobs queues of the table's disks is more than the
`dead_blobs_to_throw_insert` value, `INSERT` is interrupted with the following error:

> "Too many dead blobs in queue (N) on disks of table. Blobs cleanup is processing significantly
> slower than inserts"

The dead blobs queue belongs to the disk and is shared by all tables on it (including blobs of already
dropped tables), so size the threshold for the whole disk rather than a single table.

Possible values:

* Any positive integer.
* 0 — disabled.
