> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-trino-dialect.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> جدول نظامي يحتوي على معلومات عن تعديلات جداول MergeTree ومدى تقدّمها. ويمثّل كل أمر تعديل صفًا واحدًا.

# system.mutations

<div id="description">
  ## الوصف
</div>

يحتوي الجدول على معلومات حول [التعديلات](/ar/reference/statements/alter/index#mutations) في جداول [MergeTree](/ar/reference/engines/table-engines/mergetree-family/mergetree) ومدى تقدّمها. ويُمثَّل كل أمر تعديل بصف واحد.

<div id="columns">
  ## الأعمدة:
</div>

* `database` ([String](/ar/reference/data-types/string)) — اسم قاعدة البيانات التي طُبِّقت عليها عملية التعديل.
* `table` ([String](/ar/reference/data-types/string)) — اسم الجدول الذي طُبِّقت عليه عملية التعديل.
* `mutation_id` ([String](/ar/reference/data-types/string)) — معرّف عملية التعديل. بالنسبة إلى الجداول المُكرَّرة، تتوافق هذه المعرّفات مع أسماء عقد znode في الدليل `<table_path_in_clickhouse_keeper>/mutations/` ضمن ClickHouse Keeper. أما بالنسبة إلى الجداول غير المُكرَّرة، فتتوافق المعرّفات مع أسماء الملفات في دليل بيانات الجدول.
* `command` ([String](/ar/reference/data-types/string)) — سلسلة أوامر التعديل (الجزء من الاستعلام الذي يلي ALTER TABLE \[db.]table).
* `create_time` ([DateTime](/ar/reference/data-types/datetime)) — التاريخ والوقت اللذان أُرسل فيهما أمر التعديل للتنفيذ.
* `block_numbers.partition_id` ([Array(String)](/ar/reference/data-types/array)) — بالنسبة إلى تعديلات الجداول المُكرَّرة، تحتوي المصفوفة على معرّفات الأقسام (سجل واحد لكل قسم). أما بالنسبة إلى تعديلات الجداول غير المُكرَّرة، فتكون المصفوفة فارغة.
* `block_numbers.number` ([Array(Int64)](/ar/reference/data-types/array)) — بالنسبة إلى تعديلات الجداول المُكرَّرة، تحتوي المصفوفة على سجل واحد لكل قسم يتضمن رقم الكتلة الذي حصلت عليه عملية التعديل. لا تُعدَّل في القسم إلا الأجزاء التي تحتوي على كتل أرقامها أقل من هذا الرقم. في الجداول غير المُكرَّرة، تشكّل أرقام الكتل في جميع الأقسام تسلسلاً واحدًا. وهذا يعني أنه بالنسبة إلى تعديلات الجداول غير المُكرَّرة، سيحتوي العمود على سجل واحد يتضمن رقم كتلة واحدًا حصلت عليه عملية التعديل.
* `parts_in_progress_names` ([Array(String)](/ar/reference/data-types/array)) — مصفوفة بأسماء أجزاء البيانات التي يجري تعديلها حاليًا.
* `parts_to_do_names` ([Array(String)](/ar/reference/data-types/array)) — مصفوفة بأسماء أجزاء البيانات التي يجب تعديلها لإكمال عملية التعديل.
* `parts_to_do` ([Int64](/ar/reference/data-types/int-uint)) — عدد أجزاء البيانات التي يجب تعديلها لإكمال عملية التعديل. ملاحظة: حتى إذا كانت قيمة `parts_to_do` تساوي 0، فقد لا تكون عملية تعديل جدول مُكرَّر قد اكتملت بعد بسبب عملية INSERT طويلة التشغيل تنشئ جزء بيانات جديدًا سيحتاج إلى تعديل.
* `parts_postpone_reasons` ([Map(String, String)](/ar/reference/data-types/map)) — خريطة تربط أسماء الأجزاء بأسباب تأجيلها.
* `is_done` ([UInt8](/ar/reference/data-types/int-uint)) — علامة تحدد ما إذا كانت عملية التعديل قد اكتملت أم لا. القيم الممكنة: 1 إذا اكتملت عملية التعديل، و0 إذا كانت لا تزال قيد التنفيذ.
* `is_killed` ([UInt8](/ar/reference/data-types/int-uint)) — يشير إلى ما إذا تم إيقاف عملية تعديل. متاح فقط في ClickHouse Cloud. ملاحظة: لا تعني القيمة is\_killed=1 بالضرورة أن عملية التعديل قد اكتملت نهائيًا. قد تظل عملية التعديل لفترة طويلة في حالة تكون فيها is\_killed=1 وis\_done=0. وقد يحدث ذلك إذا كانت عملية تعديل أخرى طويلة التشغيل تحجب عملية التعديل الموقوفة. وهذا وضع طبيعي.
* `latest_failed_part` ([String](/ar/reference/data-types/string)) — اسم أحدث جزء تعذّر تعديله.
* `latest_fail_time` ([DateTime](/ar/reference/data-types/datetime)) — تاريخ ووقت أحدث فشل في تعديل جزء.
* `latest_fail_reason` ([String](/ar/reference/data-types/string)) — رسالة الاستثناء التي تسببت في أحدث فشل في تعديل جزء.
* `latest_fail_error_code_name` ([String](/ar/reference/data-types/string)) — رمز خطأ الاستثناء الذي تسبب في أحدث فشل في تعديل جزء.

<Note>
  - إذا لم يكن اسم الجزء موجودًا في `parts_postpone_reasons` ولم يُطبَّق عليه تعديل بعد، فهذا يعني أن الجزء لم يُجدوَل بعد للتعديل.
  - يمثّل اسم الجزء `all_parts` جميع الأجزاء التي لم يُطبَّق عليها تعديل بعد.
</Note>

* `is_killed` ([UInt8](/ar/reference/data-types/int-uint)) — يشير إلى ما إذا كان التعديل قد أُوقِف. **متاح فقط في ClickHouse Cloud.**

<Note>
  لا تعني القيمة `is_killed=1` بالضرورة أن التعديل قد اكتمل نهائيًا. قد يظل التعديل في حالة تكون فيها `is_killed=1` و`is_done=0` لفترة طويلة. وقد يحدث ذلك إذا كان تعديل آخر طويل التشغيل يحجب التعديل المُوقَف. هذه حالة طبيعية.
</Note>

* `is_done` ([UInt8](/ar/reference/data-types/int-uint)) — علامة تشير إلى ما إذا كانت عملية التعديل قد اكتملت أم لا. القيم الممكنة:
  * `1` إذا كان التعديل مكتملًا،
  * `0` إذا كان التعديل لا يزال قيد التنفيذ.

<Note>
  حتى إذا كانت قيمة `parts_to_do = 0`، فقد لا يكون التعديل لجدول مكرر قد اكتمل بعد، بسبب استعلام `INSERT` طويل التشغيل ينشئ جزء بيانات جديدًا يجب تطبيق التعديل عليه.
</Note>

إذا كانت هناك مشكلات في تطبيق التعديل على بعض أجزاء البيانات، فستحتوي الأعمدة التالية على معلومات إضافية:

* `latest_failed_part` ([String](/ar/reference/data-types/string)) — اسم أحدث جزء تعذّر تطبيق التعديل عليه.
* `latest_fail_time` ([DateTime](/ar/reference/data-types/datetime)) — تاريخ ووقت أحدث فشل في تعديل جزء بيانات.
* `latest_fail_reason` ([String](/ar/reference/data-types/string)) — رسالة الاستثناء التي تسببت في أحدث فشل في تعديل جزء بيانات.

<div id="monitoring-mutations">
  ## مراقبة عمليات التعديل
</div>

لمتابعة التقدّم في جدول `system.mutations`، استخدم الاستعلام التالي:

```sql theme={null}
SELECT * FROM clusterAllReplicas('cluster_name', 'system', 'mutations')
WHERE is_done = 0 AND table = 'tmp';

-- or

SELECT * FROM clusterAllReplicas('cluster_name', 'system.mutations')
WHERE is_done = 0 AND table = 'tmp';
```

ملاحظة: يتطلب هذا أذونات القراءة على جداول `system.*`.

<Tip>
  **استخدام Cloud**

  في ClickHouse Cloud، يتضمن الجدول `system.mutations` على كل عقدة جميع عمليات التعديل في العنقود، لذلك لا حاجة إلى `clusterAllReplicas`.
</Tip>

<div id="see-also">
  ## انظر أيضًا
</div>

* [التعديلات](/ar/reference/statements/alter/index#mutations)
* [MergeTree](/ar/reference/engines/table-engines/mergetree-family/mergetree) محرك الجدول
* [ReplicatedMergeTree](/ar/reference/engines/table-engines/mergetree-family/replication) عائلة المحركات
