max_execution_speed
timeout_before_checking_execution_speed.
إذا كانت سرعة التنفيذ مرتفعة، فستُخفَّض.
max_execution_speed_bytes
timeout_before_checking_execution_speed.
إذا كانت سرعة التنفيذ مرتفعة، فستُخفَّض.
max_execution_time
max_execution_time مربكًا بعض الشيء.
إذ إنها تعمل بالاعتماد على الاستيفاء وفقًا لسرعة تنفيذ الاستعلام الحالية
(ويُتحكَّم في هذا السلوك بواسطة 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.
تُفحَص المهلة، ولا يمكن إيقاف الاستعلام إلا في مواضع محددة أثناء معالجة البيانات.
وحاليًا، لا يمكن إيقافه أثناء دمج حالات التجميع أو أثناء تحليل الاستعلام،
ولذلك سيكون وقت التشغيل الفعلي أعلى من قيمة هذا الإعداد.
max_execution_time_leaf
max_execution_time، ولكنه يُطبَّق فقط
على العقد الطرفية في الاستعلامات الموزعة أو البعيدة.
على سبيل المثال، إذا أردنا تقييد وقت التنفيذ على عقدة طرفية إلى 10s ولكن
من دون فرض أي حد على العقدة الأصلية، فبدلاً من استخدام max_execution_time في
إعدادات الاستعلام الفرعي المتداخلة:
max_execution_time_leaf كأحد إعدادات الاستعلام: