برمجياتقراءة دقيقتين

PostgreSQL 19 Beta 2 تضيف أمر REPACK لإعادة تنظيم الجداول دون إيقافها

المغزى

عملية كانت تعني توقف الخدمة أو الاعتماد على إضافة خارجية ممنوعة في كثير من الاستضافات المُدارة صارت أمرًا أساسيًا داخل قاعدة البيانات نفسها.

صدرت النسخة التجريبية الثانية من PostgreSQL 19 يوم 16 يوليو 2026، وتضيف أمرًا جديدًا اسمه REPACK يعالج مشكلة قديمة في إدارة الجداول الكبيرة.

فالجدول في Postgres يظل يشغل مساحته على القرص حتى بعد حذف صفوف منه، لأن الصفوف المحذوفة تبقى في مكانها إلى أن تُنظَّف. ومع الوقت يتضخم الجدول.

وكان أمام من يريد إعادة الجدول إلى حجمه الطبيعي خياران، لكل منهما مشكلة. الأول هو الأمر الرسمي VACUUM FULL، الذي يعيد كتابة الجدول من البداية، لكنه يضع عليه قفلًا حصريًا يمنع القراءة والكتابة حتى ينتهي. وعلى جدول كبير، يعني ذلك توقفًا للخدمة لا مجرد عملية صيانة.

والخيار الثاني إضافة خارجية اسمها pg_repack تؤدي العمل نفسه والجدول قيد التشغيل. لكنها أداة من طرف ثالث تحتاج إلى تثبيت وثقة، وكثير من الاستضافات المُدارة لا تسمح بتثبيت إضافات أصلًا.

وفي PostgreSQL 19 صار REPACK أمر SQL داخل قاعدة البيانات نفسها، يعمل دون إيقاف الجدول.

ويضيف الإصدار ميزتين على المنطق نفسه:

  • صار autovacuum يعمل بالتوازي، بعد أن كان كل جدول يحظى بعامل واحد مهما كان حجمه.
  • إضافة pg_plan_advice تسمح بتثبيت خطة الـ planner لاستعلام معين، فلا تتغير فجأة إلى خطة أبطأ بعد تغير الإحصاءات.

ولا تحظى هذه التحسينات عادة باهتمام العروض التسويقية، لكنها تمثل مرحلة في عمر أي قاعدة بيانات ناضجة: إزالة آلام اعتاد عليها المستخدمون حتى توقفوا عن الشكوى منها.

ومن المتوقع صدور النسخة النهائية في سبتمبر أو أكتوبر 2026، ما يجعل النسخة الحالية مخصصة للتجربة لا لبيئات الإنتاج.

المصادر

  1. إعلان PostgreSQL 19 Beta 2 الرسمي
  2. ملاحظات إصدار PostgreSQL 19
  3. توثيق أمر REPACK
  4. صفحة التحميل

من عدد الخميس 9 صفر - 23 يوليو

أخبار ذات صلة

أخبار الخميس 9 صفر - 23 يوليو