لاحظت للتو أنه عندما كانت هناك ردود غير مقروءة، كان عدد الردود غير المقروءة في موضوع إعلان Postgres 12 هو 303 (دائرة زرقاء تحتوي على 303). عند فتح الموضوع، تغير العدد إلى 1 بعد ظهور أحدث رد.
الموضوع مضبوط على حذف الردود الأقدم من 5 أيام تلقائيًا، وهناك حاليًا رد واحد فقط في هذا الموضوع.
يبدو أن حساب عدد الردود في المواضيع التي تخضع للحذف التلقائي مع وجود ردود غير مقروءة غير دقيق؟
حدث هذا على الهاتف المحمول، ولم أفكر في التحقق من سطح المكتب قبل فتح الموضوع ووضعه كمقروء.
نعم، هذه مشكلة معروفة موجودة في Discourse منذ الإصدار V1 تقريبًا. فالحذف المتكرر ثم الرد سيؤدي دائمًا إلى هذا التناقض حتى الزيارة التالية للموضوع. ولا يهم ما إذا كانت عمليات الحذف تلقائية أو يدوية.
فقط لإغلاق هذه الحلقة، فإن الإصلاح هنا غير مريح للغاية بشكل هائل؛ فالنظام الخلفي لا يحسب فعليًا عدد المشاركات غير المقروءة لديك، بل يعتمد على الفرق بين highest_post_number وآخر post_number زُرته في موضوع المستخدمين.
لو اضطررت إلى وضع رقم على هذا الأمر، ولو كان عملي الوحيد هو إصلاح هذا الخطأ، فسيستغرق مني عدة أشهر، وسأضطر إلى ابتكار قاعدة بيانات مخصصة لجعلها تعمل. كما أن تشغيل استعلام count(*) على كل موضوع غير مقروء أمر غير وارد.