خلل خفي في ترقية سولانا قد يجمّد شبكة القرّاء ويعطّل حدود الرسوم بصمت

شبكة سولانا تستعد لإطلاق تنسيق معاملات جديد يحمل اسم “v1″، والذي يعد بمساحة أكبر بكثير لكل معاملة. لكن هذا التحديث الكبير يحمل معه تحديات ومسؤوليات جديدة لمقدمي الخدمات والمطورين، حيث قد تواجه الأنظمة غير الجاهزة مشاكل في الأداء أو حتى تتوقف تماماً عن العمل.
ما الجديد في تنسيق v1؟
يزيد تنسيق v1 الحد الأقصى لحجم المعاملة من 1,232 بايت إلى 4,096 بايت، أي بزيادة تقارب 3.3 أضعاف. هذا يعني مساحة أكبر لنقل البيانات والمعلومات داخل كل معاملة. ومن المهم معرفة أن المعاملات القديمة بتنسيقيها السابقين ستبقى تعمل كما هي دون أي تغيير، ولن يحتاج المستخدمون الذين يستمرون باستخدامها إلى أي تعديلات.
حالياً، التنسيق الجديد يعمل على شبكة الاختبار “Testnet” والشبكة التجريبية “Devnet”، لكنه لم يُفعّل بعد على الشبكة الرئيسية، مما يمنح مزودي البنية التحتية وقتاً للاستعداد.
تحديات تواجه مزودي الخدمات
هناك طريقتان مختلفتان قد تفشل بهما الأنظمة غير الجاهزة للتعامل مع تنسيق v1:
- بعض الأنظمة تتوقف تماماً عن العمل عند مواجهة معاملة بصيغة v1
- أنظمة أخرى تستمر في العمل لكن مع أخطاء في حدود الموارد والحسابات
بالنسبة للتطبيقات التي تطلب بيانات المعاملات من شبكة Solana، يجب عليها إضافة معامل خاص في طلباتها للسماح باستقبال هذا التنسيق الجديد. بدون هذا التعديل، ستفشل طلبات جلب البيانات أو تعرض معلومات غير كاملة.
مشاكل صامتة تحتاج لانتباه
هناك أيضاً أخطاء لا تظهر بشكل واضح. على سبيل المثال، الأنظمة التي تفحص التعليمات البرمجية القديمة للمعاملات ستظهر نتائج خاطئة لكل معاملة من نوع v1 دون أن ترسل أي تحذير عن الخطأ. هذا يشمل أنظمة الفهرسة وخدمات تتبع الشبكة.
الأنظمة التي تعمل كوسطاء وتدفع الرسوم نيابة عن المستخدمين يجب أن تحدث طرق التحقق الخاصة بها أيضاً. فالأنظمة التي تعتمد على فحص التعليمات القديمة لتحديد الرسوم لن تكون قادرة على تطبيق حدود الرسوم بشكل صحيح مع التنسيق الجديد.
ماذا عن البرامج الذكية؟
تواجه البرامج الذكية أو “العقود الذكية” قيداً أكبر. فحالياً لا توجد طريقة للاطلاع على إعدادات تنسيق v1 من داخل البرنامج نفسه. لذلك، يجب على البرامج التي تعتمد على فحص الموارد المستخدمة أن تجد طريقة جديدة للتحقق عندما يتم تفعيل التنسيق الجديد.
من يحتاج إلى التحديث؟
أصدرت Solana قائمة بالحد الأدنى من الإصدارات المطلوبة لمختلف الأدوات والمكتبات البرمجية. على سبيل المثال:
- مكتبة @solana/kit بحاجة لإصدار 8.0.0 أو أحدث
- مكتبة @solana/web3.js بحاجة لإصدار 3.0.0-rc.3 أو أحدث
- مكتبات لغات برمجة أخرى مثل Rust و Python و Go لها إصدارات محددة أيضاً
هذا التحديث ليس إجبارياً لكل المحافظ الرقمية الآن، لكنه اختبار مهم للتوافق لكل خدمة قد تقرأ أو تفهرس معاملات الآخرين أو تدفع رسومها.
إنشاء معاملات v1 ليس إجبارياً
إنشاء معاملات بالتنسيق الجديد هو خيار اختياري للفرق المطورة. لكن إذا قرر فريق استخدامه، يجب عليه:
- تحديد حدود الموارد والحمولة بشكل صريح لأن القيم الافتراضية هي صفر
- إزالة التعليمات البرمجية القديمة غير الضرورية
- التوقف عن استخدام جداول العناوين المرجعية
- استخدام ترميز base64 للمعاملات الأكبر من 1,232 بايت
الخلاصة أن تنسيق v1 يفتح آفاقاً جديدة لشبكة سولانا من حيث سعة المعاملات، لكنه يتطلب جاهزية كاملة من جميع الأطراف العاملة على الشبكة لضمان انتقال سلس دون أخطاء.
الأسئلة الشائعة
س: هل سيتأثر مستخدمو المحافظ الرقمية العاديون بهذا التحديث؟
ج: لا، المستخدمون الذين يستخدمون تنسيقات المعاملات القديمة سيعملون بشكل طبيعي دون أي تغيير. التحديث موجه بشكل أساسي للمطورين ومزودي الخدمات الذين يحتاجون لتحديث أنظمتهم للتعامل مع المعاملات الجديدة إذا كانوا يخططون لدعمها.
س: ما الفائدة الرئيسية من تنسيق v1 في سولانا؟
ج: الفائدة الرئيسية هي زيادة حجم المعاملة من 1,232 بايت إلى 4,096 بايت، مما يسمح بنقل بيانات أكثر داخل كل معاملة. هذه الزيادة تساعد في معالجة المزيد من العمليات المعقدة وتخفض عدد المعاملات المطلوبة لتنفيذ عمليات كبيرة.
س: هل يمكن للمطورين تجاهل هذا التحديث والاستمرار بالتنسيقات القديمة؟
ج: نعم، يمكنهم ذلك. إنشاء معاملات v1 أمر اختياري وليس إجبارياً. لكن إذا كان المطور يدير خدمة تقرأ معاملات الآخرين أو تفهرسها، فيجب عليه التحديث لضمان توافق خدمته مع جميع أشكال المعاملات وعدم فشلها عند ظهور معاملات من نوع v1 على الشبكة.












