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

# allow_suspicious_* セッション設定

> allow_suspicious_* グループに含まれる ClickHouse のセッション設定。

export const VersionHistory = ({rows = []}) => {
  if (rows.length === 0) {
    return null;
  }
  const headers = ["バージョン", "デフォルト値", "コメント"];
  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
  }}>
        バージョン履歴
      </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
  }}>型</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>デフォルト値</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          再起動せずに変更可能
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

これらの設定は [system.settings](/ja/reference/system-tables/settings) に掲載されており、[ソースコード](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp) から自動生成されています。

<div id="allow_suspicious_codecs">
  ## allow\_suspicious\_codecs
</div>

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

true に設定すると、無意味な圧縮コーデックの指定を許可します。

<div id="allow_suspicious_fixed_string_types">
  ## allow\_suspicious\_fixed\_string\_types
</div>

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

CREATE TABLE 文で、n > 256 の FixedString(n) 型カラムの作成を許可します。長さが 256 以上の FixedString は疑わしく、ほとんどの場合は誤用を示しています

<div id="allow_suspicious_indices">
  ## allow\_suspicious\_indices
</div>

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

同一の式を持つプライマリ索引、セカンダリ索引、およびソートキーを拒否します

<div id="allow_suspicious_low_cardinality_types">
  ## allow\_suspicious\_low\_cardinality\_types
</div>

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

サイズが固定で 8 バイト以下のデータ型 (数値データ型および `FixedString(8_bytes_or_less)`) に対する [LowCardinality](/ja/reference/data-types/lowcardinality) の使用を許可または制限します。

サイズの小さい固定長の値に `LowCardinality` を使用するのは、通常は非効率です。これは、ClickHouse が各行について数値の索引を保持するためです。その結果、次のような影響があります。

* ディスク使用量が増える可能性があります。
* Dictionary のサイズによっては、RAM 消費量が増える場合があります。
* 追加のコーディング／エンコーディング操作により、一部の関数の動作が遅くなることがあります。

上記の理由により、[MergeTree](/ja/reference/engines/table-engines/mergetree-family/mergetree) エンジンのテーブルではマージ時間が長くなる可能性があります。

設定可能な値:

* 1 — `LowCardinality` の使用は制限されません。
* 0 — `LowCardinality` の使用は制限されます。

<div id="allow_suspicious_primary_key">
  ## allow\_suspicious\_primary\_key
</div>

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

MergeTree で問題のある `PRIMARY KEY`/`ORDER BY` (つまり SimpleAggregateFunction) を許可します。

<div id="allow_suspicious_ttl_expressions">
  ## allow\_suspicious\_ttl\_expressions
</div>

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

テーブルのいずれのカラムにも依存しない有効期限 (TTL) 式を拒否します。多くの場合、これはユーザーの誤りを示します。

<div id="allow_suspicious_types_in_group_by">
  ## allow\_suspicious\_types\_in\_group\_by
</div>

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

GROUP BY キーで [Variant](/ja/reference/data-types/variant) 型および [Dynamic](/ja/reference/data-types/dynamic) 型の使用を許可または制限します。

<div id="allow_suspicious_types_in_order_by">
  ## allow\_suspicious\_types\_in\_order\_by
</div>

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

ORDER BY キーでの [Variant](/ja/reference/data-types/variant) 型および [Dynamic](/ja/reference/data-types/dynamic) 型の使用を許可または禁止します。

<div id="allow_suspicious_variant_types">
  ## allow\_suspicious\_variant\_types
</div>

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

CREATE TABLE 文で、類似した variant 型 (たとえば、異なる数値型や日付型) を含む Variant 型を指定することを許可します。この設定を有効にすると、類似した型の値を扱う際にあいまいさが生じる可能性があります。
