ردود الفعل لا تظهر أحيانًا عند غياب عدد التفاعلات

هذا لأن discourse_reactions_like_sync_enabled مضبوط على false. تم ذلك عن قصد من خلال الترحيل من مايو 2024 لتجنب إرباك البيانات الموجودة.

عندما يتم تعطيل هذا الإعداد، فإن ReactionLikeSynchronizer لا يعمل. هذا المزامِن مسؤول عن:

  • إنشاء سجلات PostAction (إعجاب) للتفاعلات
  • تحديث posts.like_count ليعكس التفاعلات

بدون تشغيل المزامنة:

  1. توجد التفاعلات في discourse_reactions_reaction_users
  2. ولكن لا توجد سجلات PostAction مقابلة
  3. ويبقى posts.like_count عند 0

حدسك بشأن التوقيت دقيق - تمت إضافة التفاعلات إلى المشاركات من عام 2023/أوائل عام 2024 عندما لم تكن هذه المزامنة نشطة، لذلك لم يتم تحديث like_count الخاص بها أبدًا. بعد ذلك، قام منطق التسلسل القديم بحذف إجراء الإعجاب بالكامل عندما كان كل من count = 0 و can_act = false (انتهت صلاحية نافذة التراجع).

الإصلاح لا يصحح التناقض الأساسي في البيانات - بل يضمن ببساطة أن واجهة المستخدم تعرض التفاعلات بشكل صحيح حتى عندما لا تتم مزامنة بيانات PostAction/like_count. في المواقع التي يكون فيها discourse_reactions_like_sync_enabled = false، فإن وجود التفاعلات بشكل مستقل عن سجلات PostAction هو السلوك المتوقع.

إعجاب واحد (1)