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

# إعدادات جلسة s3_validate_*

> إعدادات جلسة ClickHouse ضمن المجموعة المُنشأة s3_validate_*.

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](/docs/ar/reference/system-tables/settings)، ويتم توليدها تلقائيًا من [المصدر](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="s3_validate_etag_on_read">
  ## s3\_validate\_etag\_on\_read
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "1"},{"label": "إعداد جديد لاكتشاف عمليات الاستبدال المتزامنة لكائنات S3\/GCS في موضعها أثناء القراءة، وذلك عبر التحقق من تطابق ETag في استجابة GET مع القيمة التي ظهرت عند إدراج الكائن. previous_value=false لذا فإن `compatibility` مع الإصدارات الأقدم من 26.7 يستعيد السلوك السابق (من دون تحقق)."}]}]} />

عند قراءة كائن من S3 (أو من مخزن متوافق مع S3 مثل GCS)، تحقّق من أن كل طلب GET يعيد قيمة ETag نفسها التي رُصدت عند إدراج الكائن. تتطلب قراءة ملف واحد إرسال العديد من طلبات GET النطاقية؛ وإذا أُعيدت الكتابة فوق الكائن في موضعه بين هذه الطلبات (على سبيل المثال، بواسطة جهة خارجية تعيد كتابة مفتاح ثابت)، فقد تُركَّب القراءات من جيلين مختلفين للكائن، مما قد يظهر على شكل checksum تالف أو خطأ في التحليل. وعند اكتشاف عدم تطابق، تفشل القراءة مع `S3_OBJECT_CHANGED_DURING_READ` بدلًا من إرجاع بيانات غير متسقة. عطّل هذا الخيار فقط لأحمال العمل التي تقرأ عمدًا كائنات يُعاد الكتابة فوقها ويمكنها تحمّل القراءات غير المتسقة.

<div id="s3_validate_request_settings">
  ## s3\_validate\_request\_settings
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "1"},{"label": "السماح بتعطيل التحقق من إعدادات طلبات S3"}]}]} />

يُفعّل التحقق من إعدادات طلبات S3.
القيم الممكنة:

* 1 — التحقق من الإعدادات.
* 0 — عدم التحقق من الإعدادات.
