تتكرر الإشعارات حتى بعد قراءتها [Private Topics plugin]

مرحباً، أنا أستخدم الإصدار 3.2.0.beta4-dev (مستضاف ذاتياً) في هذا الالتزام. بعد التحديثات، بدأ المستخدمون في تجربة إشعارات مزدوجة/ثلاثية على واجهة المستخدم. (أنا أتحدث عن واجهة مستخدم Discourse وليس البريد الإلكتروني وما إلى ذلك)

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

أعتقد أن هذه مشكلة في ذاكرة الوصول العشوائي، كم ذاكرة وصول عشوائي لدى مثيل discourse الخاص بك؟

أفترض أنك تقصد ‘واجهة Discourse’؟

حسنًا، لكن هذا الخادم نشط منذ ما يقرب من شهرين، ولم تظهر هذه المشكلة من قبل. حاليًا على خادمي لدينا 4 جيجابايت من ذاكرة الوصول العشوائي ونصفها فارغ. 2 جيجابايت من مساحة التبديل فارغة أيضًا.

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

نعم، لقد قمت بتضمين صورة في منشوري الأول. أعني إشعارات واجهة مستخدم Discourse.

لقد قمت بتعطيل مجموعة من الإضافات ولا تزال المشكلة قائمة. هل لديك أي أفكار أم هل يمكنني الرجوع إلى الإصدار 3.2.0.beta3-dev؟ شكراً.

مرحباً مرة أخرى، أعلم أنه لا يتوجب على أحد المساعدة وأن هذا منتدى مجتمعي وبالطبع أنا لست عميلاً مدفوع الأجر، لكن هذه المشكلة أصبحت محبطة حقًا لي وللمستخدمين. لقد أنشأنا مجتمعًا قبل شهرين بفضل Discourse حيث لدينا 458 مستخدمًا نشطًا شهريًا. ولكن منذ حدوث هذه المشكلة (منذ 20 يومًا) حاولت كل ما بوسعي. إنها سيئة للغاية لتجربة المستخدم والآن أحاول العثور على نصوص برمجية للهجرة إلى Flarum أو أي منصة منتديات أخرى. فقط انظر إلى هذا:

output

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

مرة أخرى، أعرف مكاني، هذه منصة مجتمعية. ليس لدي الحق في الشكوى ولكن إذا لم يساعد أحد بعد هذا المنشور حتى لو كان ذلك يعني حذف جميع مشاركاتنا ومواضيعنا السابقة (1.2 ألف موضوع و 12.7 ألف مشاركة) فسيتعين علينا الذهاب إلى مكان آخر …

فقط كملاحظة، كنت من دعاة Discourse. لقد أنشأت مقاطع فيديو حوله على قناتي على YouTube. تستخدم المجتمعات التركية عادةً منتديات قديمة وكان لدي خبرة رائعة في استخدام Discourse من قبل، لذلك بعد فتح منتدى خاص بي، أردت أن يعرف الناس هذا البرنامج.

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

فضولاً، هل يمكنك إيجاد أي شيء مشترك بين المنشورات التي لديها إشعارات متكررة؟

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

من فهمي، الأمر مختلف لكل مستخدم. لكنها تتكرر. في حسابي، أتلقى نفس الإشعارات مرارًا وتكرارًا. على الرغم من أن هذا لا يحدث في المنشورات التي يعود تاريخها إلى ما قبل 21 يومًا، والتي أجرينا عليها تحديثًا 3.2.0beta4، وأضفت أيضًا ملحقات إلى منتدانا.

في البداية، اعتقدت أن الملحقات تسببت في ذلك، لذا قمت بتعطيل جميع الملحقات، لكن هذا لم يحل المشكلة. على الهامش، ربما يجب علي حذفها وإعادة بنائها بالكامل؟ لا أعرف.

ثم اعتقدت أن السبب كان بسبب الإصدار التجريبي بيتا 4. ثم قمت بالرجوع إلى الإصدار التجريبي بيتا 3، حيث لم تكن لدينا المشكلة، لكنها استمرت.

للأسف، لم نتلق أي تقارير أخرى عن هذا الأمر، لذا من الصعب تحديد ما يحدث في موقعك. هل لديك تثبيت قياسي؟

هل هناك أي شيء في صفحة /logs أو /sidekiq قد يوفر المزيد من المعلومات؟

نعم. قد لا يؤدي التعطيل إلى إزالة المشكلة بالكامل. ولكن ما هي الإضافات التي قمت بتثبيتها مؤخرًا؟ قد نتمكن من معرفة ما إذا كانت هناك مشكلة تم الإبلاغ عنها.

إعجابَين (2)

Yes I understand it is hard to pinpoint. That’s why I hoped it would go away after a while but it didn’t.

I think I am having the same problem as this: Users getting notifictations from long ago

Yes I have a standart install but only difference is I am behind Cloudflare. You might think this is because of Cloudflare but before we didn’t had such issue. I don’t think it’s likely.

I couldn’t find anything related to notifications but I am not an expert on this so let me share a quick bit of it maybe your eyes will catch something

Warnings:


MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Failed to send push notification : WebPush::Unauthorized : host: fcm.googleapis.com, #<Net::HTTPForbidden 403 Forbidden readbody=true> body: the VAPID credentials in the authorization header do not co
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Failed to handle exception in exception app middleware : ArgumentError : Empty list of attributes passed
Failed to handle exception in exception app middleware : ArgumentError : Empty list of attributes passed
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
DiscoTOC theme/component is throwing errors: TypeError: Cannot read properties of null (reading 'en')
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Failed to handle exception in exception app middleware : ArgumentError : Empty list of attributes passed
Failed to send push notification : WebPush::Unauthorized : host: updates.push.services.mozilla.com, #<Net::HTTPUnauthorized 401 Unauthorized readbody=true> body: {"code":401,"errno":109,"error":"Unaut
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Failed to handle exception in exception app middleware : ActiveRecord::RecordNotUnique : PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_topic_tags_on_topic_id_and_t
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Failed to process hijacked response correctly : EOFError : end of file reached
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
Deprecation notice: `SiteSetting.anonymous_posting_min_trust_level` has been deprecated. Please use `SiteSetting.anonymous_posting_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/disc
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
Failed to send push notification : WebPush::ResponseError : host: web.push.apple.com, #<Net::HTTPBadRequest 400 Bad Request readbody=true> body: {"reason":"VapidPkHashMismatch"}
discourse-gifs theme/component is throwing errors: TypeError: Cannot read properties of null (reading 'en')
DiscoTOC theme/component is throwing errors: TypeError: Cannot read properties of null (reading 'en')
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
Failed to send push notification : WebPush::Unauthorized : host: updates.push.services.mozilla.com, #<Net::HTTPUnauthorized 401 Unauthorized readbody=true> body: {"code":401,"errno":109,"error":"Unaut
Sidekiq is consuming too much memory (using: 558.27M) for 'btt.community', restarting
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
Failed to send push notification : WebPush::PushServiceError : host: updates.push.services.mozilla.com, #<Net::HTTPBadGateway 502 Bad Gateway readbody=true> body: {"code":502,"errno":903,"error":"Bad
Deprecation notice: `SiteSetting.min_trust_level_for_here_mention` has been deprecated. Please use `SiteSetting.here_mention_allowed_groups` instead. (removal in Discourse 3.3) At /var/www/discourse/
Deprecation notice: Jobs::Chat::NotifyMentioned was enqueued with argument values which do not cleanly serialize to/from JSON. This means that the job will be run with slightly different values than t
Deprecation notice: Jobs::Chat::NotifyWatching was enqueued with argument values which do not cleanly serialize to/from JSON. This means that the job will be run with slightly different values than th
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) could not be found: No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
Deprecation notice: Jobs::Chat::NotifyMentioned was enqueued with argument values which do not cleanly serialize to/from JSON. This means that the job will be run with slightly different values than t
Deprecation notice: Jobs::Chat::NotifyWatching was enqueued with argument values which do not cleanly serialize to/from JSON. This means that the job will be run with slightly different values than th

Errors:

Job exception: Net::ReadTimeout
Job exception: Net::ReadTimeout
Job exception: Net::SMTPAuthenticationError
Job exception: Net::SMTPAuthenticationError
Job exception: Net::SMTPAuthenticationError
(google_oauth2) Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected
Job exception: Net::ReadTimeout
(github) Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected
(discord) Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected
default: Failed to pull hotlinked image (https://btt.community/uploads/default/optimized/2X/9/9394498c413ffd7cefbee2461a83d1a66b3b499c_2_690x388.jpeg) post: 10185 PG::UniqueViolation: ERROR: duplicat
Job exception: ERROR: duplicate key value violates unique constraint "pg_type_typname_nsp_index" DETAIL: Key (typname, typnamespace)=(gamification_leaderboard_cache_1_all_time_1, 2200) already exist
(google_oauth2) Authentication failure! invalid_credentials: OAuth2::Error, invalid_grant: Bad Request { "error": "invalid_grant", "error_description": "Bad Request" }
Job exception: Net::ReadTimeout
Job exception: end of file reached
(github) Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected
(twitter) Authentication failure! invalid_credentials: OAuth::Unauthorized, 401 Unauthorized
Job exception: Net::SMTPAuthenticationError
Job exception: end of file reached
(google_oauth2) Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected
(google_oauth2) Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected
Job exception: Net::ReadTimeout
Job exception: wrong number of arguments (given 0, expected 1)
Job exception: end of file reached
Job exception: wrong number of arguments (given 0, expected 1)
(discord) Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected
Job exception: Net::ReadTimeout
Job exception: wrong number of arguments (given 0, expected 1)

Fatal:

ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "categories" does not exist LINE 1: SELECT "categories"."id" FROM "categories" LEFT JOIN categor...
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "user_auth_tokens" does not exist LINE 1: SELECT "user_auth_tokens".* FROM "user_auth_tokens" WHERE ((...
Regexp::TimeoutError (regexp match timeout) lib/crawler_detection.rb:38:in `match?' lib/crawler_detection.rb:38:in `crawler?' lib/middleware/anonymous_cache.rb:129:in `is_crawler?' (eval):2:in `__comp
ActiveRecord::StatementInvalid (PG::InFailedSqlTransaction: ERROR: current transaction is aborted, commands ignored until end of transaction block ) lib/post_action_creator.rb:295:in `rescue in creat
NoMethodError (undefined method `title' for nil:NilClass) app/models/reviewable_queued_post.rb:166:in `perform_revise_and_reject_post' app/models/reviewable.rb:331:in `public_send' app/models/reviewab
ArgumentError (Empty list of attributes passed) lib/plugin/instance.rb:522:in `block in on' lib/discourse_event.rb:12:in `block in trigger' lib/discourse_event.rb:12:in `trigger' app/models/post_mover
ArgumentError (Empty list of attributes passed) lib/plugin/instance.rb:522:in `block in on' lib/discourse_event.rb:12:in `block in trigger' lib/discourse_event.rb:12:in `trigger' app/models/post_mover
ArgumentError (Empty list of attributes passed) lib/plugin/instance.rb:522:in `block in on' lib/discourse_event.rb:12:in `block in trigger' lib/discourse_event.rb:12:in `trigger' app/models/post_mover
NoMethodError (undefined method `title' for nil:NilClass) app/models/reviewable_queued_post.rb:166:in `perform_revise_and_reject_post' app/models/reviewable.rb:331:in `public_send' app/models/reviewab
ArgumentError (Empty list of attributes passed) lib/plugin/instance.rb:522:in `block in on' lib/discourse_event.rb:12:in `block in trigger' lib/discourse_event.rb:12:in `trigger' app/models/post_mover
ArgumentError (Empty list of attributes passed) lib/plugin/instance.rb:522:in `block in on' lib/discourse_event.rb:12:in `block in trigger' lib/discourse_event.rb:12:in `trigger' app/models/post_mover
ArgumentError (Empty list of attributes passed) lib/plugin/instance.rb:522:in `block in on' lib/discourse_event.rb:12:in `block in trigger' lib/discourse_event.rb:12:in `trigger' app/models/post_mover
ArgumentError (Empty list of attributes passed) lib/plugin/instance.rb:522:in `block in on' lib/discourse_event.rb:12:in `block in trigger' lib/discourse_event.rb:12:in `trigger' app/models/post_mover
NoMethodError (undefined method `title' for nil:NilClass) app/models/reviewable_queued_post.rb:166:in `perform_revise_and_reject_post' app/models/reviewable.rb:331:in `public_send' app/models/reviewab
NoMethodError (undefined method `title' for nil:NilClass) app/models/reviewable_queued_post.rb:166:in `perform_revise_and_reject_post' app/models/reviewable.rb:331:in `public_send' app/models/reviewab
ArgumentError (Empty list of attributes passed) lib/plugin/instance.rb:521:in `block in on' lib/discourse_event.rb:12:in `block in trigger' lib/discourse_event.rb:12:in `trigger' app/models/post_mover
ActiveRecord::RecordNotUnique (PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_topic_tags_on_topic_id_and_tag_id" DETAIL: Key (topic_id, tag_id)=(2907, 1) already e

For sidekiq I don’t know where to look exactly. Isn’t sidekiq handling e-mails? Does it have anything to do with notifications?

Okay I will try to uninstall every one of them and rebuild in the meantime.

Here are the extensions I installed before this problem started (it started the exact day):

  • Who’s Online
  • Cakeday
  • Signature
  • Adsense
  • ActivityPub (I deleted this completely and rebuilt since I couldnt disable this)

As a theme component:

  • GIF

EDIT: I forgot to add couple more of them

  • Discourse Private Topics
  • Discourse Force Moderation

قد أكون مخطئًا، لكن هذا مكون سمة، أليس كذلك؟

نعم صحيح إنها مكون سمة في هذه المرحلة لا أعرف ما هو ما هو لذا قمت بتضمينه على أي حال. :grinning_face_with_smiling_eyes:

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

يتعامل Sidekiq مع جميع المهام الخلفية، بما في ذلك الإشعارات. لديك مزيج انتقائي من الأخطاء هناك :slight_smile: أعتقد أنني أتعرف على عدد قليل تم إصلاحه منذ ذلك الحين ولن يتكرر بعد إجراء إعادة بناء/تحديث. على الرغم من أنني أرى:

Sidekiq يستهلك الكثير من الذاكرة (يستخدم: 558.27M)

مما قد يجبره على إعادة محاولة المهام (بما في ذلك إرسال الإشعارات مرة أخرى) هل يمكنك النقر على هذا لمعرفة ما إذا كانت هناك معلومات إضافية؟

إعجابَين (2)

حسنًا، فهمت. إذا كان الأمر كذلك بالفعل، فقد تكون هذه هي المشكلة.

image

على اليسار هو العدد، أليس كذلك؟ لقد حدث ذلك 10 مرات.

هذه هي المرات التي حدث فيها:

8 Sep 6:55 pm
25 Sep 9:44 pm
4 Oct 9:53 pm
10 Nov 2:26 am (بدأت المشكلة في 9 نوفمبر)
11 Nov 11:37 am
11 Nov 1:37 pm
23 Nov 6:43 pm
25 Nov 6:59 pm
Su 7:32 am
Mo 1:12 pm

لكن الأمر هو أن لدينا 4 جيجابايت من ذاكرة الوصول العشوائي (RAM) و 2 جيجابايت من مساحة التبديل (SWAP)، ولم أرها تُستخدم أكثر من هذا:

والصورة التي التقطتها الآن. لذا ربما يحدث هذا عندما يكون المستخدمون في ذروة الاستخدام، أو إذا لم يكن الأمر كذلك، فهل أحتاج إلى زيادة عتبة Sidekiq؟

معلومات:

Sidekiq يستهلك الكثير من الذاكرة (يستخدم: 558.27M) لـ 'btt.community'، جاري إعادة التشغيل

تتبع الأخطاء:

config/unicorn.conf.rb:164:in `check_sidekiq_heartbeat'
config/unicorn.conf.rb:244:in `master_sleep'
unicorn-6.1.0/lib/unicorn/http_server.rb:295:in `join'
unicorn-6.1.0/bin/unicorn:128:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `load'

/var/www/discourse/vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `<main>'

بيئة التشغيل:

hostname	dc-app, [dc-discourse]
process_id	1215943
application_version	a55f924e279b45b81e69e720faeb38284aed90d4
time	Mo 1:12 pm

أعلم أن هذا لا يثبت شيئًا، لكن لدي نفس الخطأ كل يوم عدة مرات[1] ولا يحدث أي شيء مشابه لما يواجهه OP لدي.


  1. لأن إصلاحه يبدو متطلبًا ومكلفًا للغاية ↩︎

إعجابَين (2)

بالنظر مرة أخرى، أرى أيضًا بعض الأخطاء التي قد تكون مرتبطة بهذا:

Message (109 copies reported)

Deprecation notice: Jobs::Chat::NotifyMentioned was enqueued with argument values which do not cleanly serialize to/from JSON. This means that the job will be run with slightly different values than the ones supplied to `enqueue`. Argument values should be strings, booleans, numbers, or nil (or arrays/hashes of those value types). (deprecated since Discourse 2.9) (removal in Discourse 3.0)
At /var/www/discourse/plugins/chat/lib/chat/notifier.rb:355:in `notify_mentioned_users`

Backtrace

/var/www/discourse/lib/discourse.rb:1030:in `deprecate'
/var/www/discourse/app/jobs/base.rb:371:in `enqueue'
/var/www/discourse/plugins/chat/lib/chat/notifier.rb:355:in `notify_mentioned_users'
/var/www/discourse/plugins/chat/lib/chat/notifier.rb:78:in `notify_new'
/var/www/discourse/plugins/chat/app/jobs/regular/chat/process_message.rb:42:in `block in execute'
/var/www/discourse/lib/distributed_mutex.rb:53:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:34:in `synchronize'
/var/www/discourse/plugins/chat/app/jobs/regular/chat/process_message.rb:7:in `execute'
Message (109 copies reported)

Deprecation notice: Jobs::Chat::NotifyWatching was enqueued with argument values which do not cleanly serialize to/from JSON. This means that the job will be run with slightly different values than the ones supplied to `enqueue`. Argument values should be strings, booleans, numbers, or nil (or arrays/hashes of those value types). (deprecated since Discourse 2.9) (removal in Discourse 3.0)
At /var/www/discourse/plugins/chat/lib/chat/notifier.rb:367:in `notify_watching_users`

Backtrace

/var/www/discourse/lib/discourse.rb:1030:in `deprecate'
/var/www/discourse/app/jobs/base.rb:371:in `enqueue'
/var/www/discourse/plugins/chat/lib/chat/notifier.rb:367:in `notify_watching_users'
/var/www/discourse/plugins/chat/lib/chat/notifier.rb:79:in `notify_new'
/var/www/discourse/plugins/chat/app/jobs/regular/chat/process_message.rb:42:in `block in execute'
/var/www/discourse/lib/distributed_mutex.rb:53:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:34:in `synchronize'
/var/www/discourse/plugins/chat/app/jobs/regular/chat/process_message.rb:7:in `execute'
Message (29888 copies reported)

Job exception: wrong number of arguments (given 0, expected 1)


Backtrace

/var/www/discourse/plugins/discourse-private-topics/plugin.rb:20:in `get_filtered_category_ids'
/var/www/discourse/plugins/discourse-private-topics/plugin.rb:149:in `handle'
/var/www/discourse/plugins/discourse-follow/plugin.rb:131:in `block (2 levels) in activate!'
/var/www/discourse/lib/plugin/instance.rb:521:in `block in on'
/var/www/discourse/lib/discourse_event.rb:12:in `block in trigger'
/usr/local/lib/ruby/3.2.0/set.rb:511:in `each_key'
/usr/local/lib/ruby/3.2.0/set.rb:511:in `each'
/var/www/discourse/lib/discourse_event.rb:12:in `trigger'
/var/www/discourse/app/services/post_alerter.rb:205:in `after_save_post'
/var/www/discourse/app/jobs/regular/post_alert.rb:10:in `execute'

hostname	dc-app
process_id	190
application_version	95b7cbd8a13ec82003936ef9408ec83bc9f3c2ea
current_db	default
current_hostname	btt.community
job	Jobs::PostAlert
problem_db	default
time	We 1:55 pm

بالنظر إلى تتبع الخطأ في الخطأ الثالث، يبدو أنه مرتبط بإضافات discourse-private-topics و discourse-follow. أنا لست خبيرًا في هذا كما قلت، ولكن دعني أزيل وأعيد بناء هذا من الصفر…

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

بعد حذف الإضافات وإعادة البناء، اختفى الخطأ الثالث، لكن إشعارات التحذير الأولى والثانية لا تزال قائمة.

والمشكلة لم تُحل.

في sidekiq، أرى عشرات من Jobs::PostAlert في قسم الإعادة. أعتقد أن هذا هو السبب في عودة كل هذه الإشعارات. ولكن لماذا ستنتقل إلى الإعادة في المقام الأول إذا كانت ترسل التنبيه بالفعل؟

كما ترى، هناك 63 صفحة من هذا. هل يجب أن أقتلهم جميعًا؟

تعديل:
بالنظر إلى الخطأ، يبدو أنه يتم تشغيله من إضافات discourse-private-topics و discourse-follow.

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

إعجابَين (2)

حسنًا، لقد تم حل المشكلة. إذن في النهاية Job exception: wrong number of arguments (given 0, expected 1) هذه المشكلة ناتجة عن أحد المكونات الإضافية التالية أو كليهما: Private Topics Plugin و Discourse Follow. ربما يتسبب كلاهما معًا في هذه المشكلة، لا أعرف، ولا أعتقد أنني أريد معرفة ذلك. لقد أصبت بصدمة هنا وأنا أتعامل مع هذه المشكلة لمدة 21 يومًا. :grinning_face_with_smiling_eyes: ربما يرغب مؤلفو هذا المكون الإضافي في معرفة ذلك، لذا سأقوم بوضع علامة عليهم هنا: @sam @RGJ

شكرًا لك @JammyDodger @Firepup650

أعتقد أنني تعلمت كيفية تصحيح مشكلة Discourse وعدم تثبيت أكثر من مكون إضافي واحد في المرة الواحدة…

4 إعجابات

شكراً لك على الوصول إلى جوهر المشكلة! لقد كانت بالفعل مشكلة في إضافة المواضيع الخاصة بي والتي حدثت فقط عند تمكين إضافة المتابعة أيضاً. لقد قمت بنشر إصلاح. آسف على التجربة المروعة :wink:

3 إعجابات

تصحيح ممتاز للأخطاء. :clap: :slight_smile: وشكراً على الإصلاح السريع @RGJ :rocket:

بما أن هذه كانت مشكلة مع إضافة غير رسمية #official، سأقوم بإزالتها من فئة Bug (ولكن لن أدمجها في Private Topics Plugin لأنها كبيرة جدًا بالنسبة لها).

نأمل أن تتمكن الآن من تثبيت كلتا الإضافتين دون أي إثارة إشعارات. :crossed_fingers:

إعجابَين (2)