我管理着 Discourse 实例 https://lilypond.community。几个小时前,我通过 Web 界面将 Discourse 升级到了 3.3.0beta2。升级失败,出现了与 3.3.0.beta2-dev update error - #8 by david 相同的错误。当时我没有时间去调查,所以就那样放着了,但论坛看起来仍然是可用的。现在,任何页面(/, /t/topic-slug 等)都会显示:
糟糕
驱动此讨论论坛的软件遇到了意外问题。我们对此造成的不便深表歉意。
错误详情已记录,并已生成自动通知。我们会进行查看。
无需进一步操作。但是,如果错误状况持续存在,您可以通过在站点的反馈类别中发布讨论主题来提供更多详细信息,包括重现错误的步骤。
我遵循了链接主题中的建议:
cd /var/discourse
git pull
./launcher rebuild app
./launcher start app
但没有帮助。我并不完全确定问题是否真的与升级有关,尽管我认为可能性很大。
这是我在 /var/discourse/shared/standalone/log/rails/production.log 中找到的内容,就在尝试访问页面 https://lilypond.community/t/effacer-les-citations-du-conducteur/5698/8 之后:
Started GET "/t/effacer-les-citations-du-conducteur/5698/8" for [IP redacted] at 2024-05-16 20:49:53 +0000
Processing by TopicsController#show as HTML
Parameters: {"slug"=>"effacer-les-citations-du-conducteur", "topic_id"=>"5698", "post_number"=>"8"}
Completed 500 Internal Server Error in 39ms (ActiveRecord: 0.0ms | Allocations: 14832)
NoMethodError (undefined method `visibility_reason_id' for #<Topic id: 5698, title: "Effacer les citations du conducteur", [...]>)
app/serializers/topic_view_serializer.rb:327:in `include_visibility_reason_id?'
(eval):37:in `_fast_attributes'
app/controllers/topics_controller.rb:1360:in `block (2 levels) in perform_show_response'
app/controllers/topics_controller.rb:1354:in `perform_show_response'
app/controllers/topics_controller.rb:187:in `show'
app/controllers/application_controller.rb:423:in `block in with_resolved_locale'
app/controllers/application_controller.rb:423:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:391:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14: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:277:in `call'
start
done
对于用户页面:
Started GET "/u/jeanas/" for [IP redacted] at 2024-05-16 20:47:21 +0000
Processing by UsersController#show as HTML
Parameters: {"username"=>"jeanas"}
Completed 500 Internal Server Error in 180ms (ActiveRecord: 0.0ms | Allocations: 80166)
NoMethodError (undefined method `custom_homepage' for #<ThemeModifierHelper:0x00007f37a9f775c8 @theme_ids=[1]>)
app/serializers/user_serializer.rb:327:in `can_pick_theme_with_custom_homepage'
(eval):100:in `_fast_attributes'
app/controllers/users_controller.rb:152:in `block (2 levels) in show'
app/controllers/users_controller.rb:149:in `show'
app/controllers/application_controller.rb:423:in `block in with_resolved_locale'
app/controllers/application_controller.rb:423:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:393:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14: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:277:in `call'
以及根页面:
Started GET "/" for [IP redacted] at 2024-05-16 20:54:16 +0000
NoMethodError (undefined method `custom_homepage' for #<ThemeModifierHelper:0x00007f37aba0c488 @theme_ids=[]>)
lib/homepage_helper.rb:5:in `resolve'
lib/homepage_constraint.rb:12:in `matches?'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:393:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14: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:277:in `call'