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

# إعدادات الجلسة لـ max_execution_*

> إعدادات جلسة ClickHouse ضمن المجموعة المُولَّدة max_execution_*.

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="max_execution_speed">
  ## max\_execution\_speed
</div>

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

الحد الأقصى لعدد الصفوف التي تُنفَّذ في الثانية. يُجرى التحقق من ذلك عند كل كتلة بيانات عند انتهاء مهلة
[`timeout_before_checking_execution_speed`](/docs/ar/reference/settings/session-settings/other#timeout_before_checking_execution_speed).
إذا كانت سرعة التنفيذ مرتفعة، فستُخفَّض.

<div id="max_execution_speed_bytes">
  ## max\_execution\_speed\_bytes
</div>

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

الحد الأقصى لعدد بايتات التنفيذ في الثانية. يُتحقَّق منه عند كل كتلة بيانات عندما تنتهي مهلة
[`timeout_before_checking_execution_speed`](/docs/ar/reference/settings/session-settings/other#timeout_before_checking_execution_speed).
إذا كانت سرعة التنفيذ مرتفعة، فستُخفَّض.

<div id="max_execution_time">
  ## max\_execution\_time
</div>

<SettingsInfoBlock type="ثوانٍ" default_value="0" />

الحد الأقصى لوقت تنفيذ الاستعلام، بالثواني.

قد يكون فهم المَعلَمة `max_execution_time` مربكًا بعض الشيء.
إذ إنها تعمل بالاعتماد على الاستيفاء وفقًا لسرعة تنفيذ الاستعلام الحالية
(ويُتحكَّم في هذا السلوك بواسطة [`timeout_before_checking_execution_speed`](/docs/ar/reference/settings/session-settings/other#timeout_before_checking_execution_speed)).

سيُوقِف ClickHouse الاستعلام إذا تجاوز وقت التنفيذ المتوقَّع
القيمة المحددة في `max_execution_time`. افتراضيًا، تُضبط `timeout_before_checking_execution_speed`
على 10 ثوانٍ. وهذا يعني أنه بعد 10 ثوانٍ من تنفيذ الاستعلام، سيبدأ ClickHouse
في تقدير وقت التنفيذ الإجمالي. فإذا كانت `max_execution_time`، على سبيل المثال،
مضبوطة على 3600 ثانية (ساعة واحدة)، فسينهي ClickHouse الاستعلام إذا تجاوز الوقت المقدَّر
هذا الحد البالغ 3600 ثانية. وإذا ضبطت `timeout_before_checking_execution_speed`
على 0، فسيستخدم ClickHouse الوقت الفعلي كأساس لـ `max_execution_time`.

إذا تجاوز وقت تشغيل الاستعلام عدد الثواني المحدد، فسيُحدَّد
السلوك بواسطة `timeout_overflow_mode`، والتي تُضبط افتراضيًا على `throw`.

<Note>
  تُفحَص المهلة، ولا يمكن إيقاف الاستعلام إلا في مواضع محددة أثناء معالجة البيانات.
  وحاليًا، لا يمكن إيقافه أثناء دمج حالات التجميع أو أثناء تحليل الاستعلام،
  ولذلك سيكون وقت التشغيل الفعلي أعلى من قيمة هذا الإعداد.
</Note>

<div id="max_execution_time_leaf">
  ## max\_execution\_time\_leaf
</div>

<SettingsInfoBlock type="ثوانٍ" default_value="0" />

مشابه من حيث المعنى لـ [`max_execution_time`](/docs/ar/reference/settings/session-settings/max-execution#max_execution_time)، ولكنه يُطبَّق فقط
على العقد الطرفية في الاستعلامات الموزعة أو البعيدة.

على سبيل المثال، إذا أردنا تقييد وقت التنفيذ على عقدة طرفية إلى `10s` ولكن
من دون فرض أي حد على العقدة الأصلية، فبدلاً من استخدام `max_execution_time` في
إعدادات الاستعلام الفرعي المتداخلة:

```sql theme={null}
SELECT count()
FROM cluster(cluster, view(SELECT * FROM t SETTINGS max_execution_time = 10));
```

يمكن استخدام `max_execution_time_leaf` كأحد إعدادات الاستعلام:

```sql theme={null}
SELECT count()
FROM cluster(cluster, view(SELECT * FROM t)) SETTINGS max_execution_time_leaf = 10;
```
