데이터 탐색기 플러그인의 일부 쿼리에서 발생하는 내부 서버 오류

여기(Telegram Notifications Plugin (discourse-telegram-notifications) - #185 by Roi)에서 언급했듯이, 데이터 탐색기에서 일부 쿼리를 사용할 때 오류가 발생합니다.

Discourse 설치 시 포함된 다른 쿼리에서도 Internal Server Error가 발생합니다. 예를 들어:

  • 지난 한 주 동안 가장 많은 메시지를 보낸 사람은 누구인가요?
  • 가장 많이 '좋아요’를 누른 항목들

다른 쿼리는 정상적으로 작동합니다.

그리고 언급했듯이, 텔레그램 쿼리를 데이터베이스에서 직접 실행하면 이 경우에도 정상적으로 작동합니다.

사이트의 /logs를 확인해서 오류에 대한 더 자세한 정보가 있는지 봐 주시겠어요?

네. 도움이 되나요? 복사해서 가져왔는데, 브라우저에서는 더 많은 내용이 보입니다.

Message (15 copies reported)

ActiveModel::MissingAttributeError (missing attribute: admin)
app/models/concerns/roleable.rb:14:in `staff?'
lib/plugin/instance.rb:297:in `public_send'
lib/plugin/instance.rb:297:in `block (2 levels) in add_to_class'
(eval):7:in `_fast_attributes'
app/controllers/application_controller.rb:414:in `block in with_resolved_locale'
app/controllers/application_controller.rb:414:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:74:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:366:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
lib/middleware/request_tracker.rb:228:in `call'

Backtrace

activemodel (7.0.3.1) lib/active_model/attribute.rb:226:in `value'
activemodel (7.0.3.1) lib/active_model/attribute_set/builder.rb:43:in `fetch_value'
activerecord (7.0.3.1) lib/active_record/attribute_methods/read.rb:38:in `_read_attribute'
activemodel (7.0.3.1) lib/active_model/attribute_methods.rb:277:in `admin'
app/models/concerns/roleable.rb:14:in `staff?'
plugins/discourse-animated-avatars/plugin.rb:90:in `block (2 levels) in activate!'
lib/plugin/instance.rb:297:in `public_send'
lib/plugin/instance.rb:297:in `block (2 levels) in add_to_class'
activesupport (7.0.3.1) lib/active_support/core_ext/object/try.rb:15:in `public_send'
activesupport (7.0.3.1) lib/active_support/core_ext/object/try.rb:15:in `try'

Env

HTTP HOSTS: www.sidemount-forum.com

그 백트레이스를 보면 애니메이션 아바타 플러그인과 관련이 있을 수 있는데, 정말 이상하네요! (cc @featheredtoast - 혹시 아이디어가 있으신가요?)

사이트와 모든 플러그인이 최신 버전으로 업데이트되어 있는지 확인해 주시겠어요?

참고로, 이 버그를 재현하기 위해 방금 Animated Avatars 플러그인을 설치했는데 - Incompatibility between Cakeday,Data-Explorer and Animated Avatar plugins - #3 by JammyDodger - 테스트 사이트에서는 ‘Top 100 Likers’ 쿼리를 실행할 수 없었습니다(하지만 Meta에서는 실행 가능합니다).

오, 흥미롭네요. 같은 원인인 것 같습니다. 이 내용은 다른 주제에서 계속 논의합시다: