Falha na Exclusão de Tópico do Discourse com Erro

Algo no plugin de IA quebrou o aplicativo Discourse: percebi que todos os tópicos não podem ser excluídos (Erro Interno 500).
No painel de administração do plugin de IA, as abas “LLM”, “Personas” e “Tools” desapareceram, então não consigo excluir meu modelo de LLM.
Removi a automação relacionada aos tópicos tóxicos, desabilitei o plugin de IA, desabilitei o plugin de Automação, mas o problema ainda persiste.
Em seguida, excluí a linha do plugin de IA do app.yml e destruí/reconstruí/iniciei o aplicativo, mas o problema ainda persiste.
Analisamos o banco de dados postgres e ainda existem algumas tabelas relacionadas ao plugin de IA.

Aqui estão alguns detalhes sobre o erro 500 ao tentar excluir um tópico ou post:

ArgumentError (Lista vazia de atributos para alterar)
lib/post_destroyer.rb:361:in `trash_public_post_actions'
lib/post_destroyer.rb:186:in `block in perform_delete'
lib/post_destroyer.rb:177:in `perform_delete'
lib/post_destroyer.rb:79:in `destroy'
app/controllers/topics_controller.rb:687:in `destroy'
app/controllers/application_controller.rb:424:in `block in with_resolved_locale'
app/controllers/application_controller.rb:424: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:399:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
lib/freedom_patches/rails_rack_logger_from_rails_7_2.rb:35:in `call_app'
lib/freedom_patches/rails_rack_logger_from_rails_7_2.rb:22: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:360:in `call'

backtrace

activerecord (7.1.3.4) lib/active_record/relation.rb:508:in `update_all'
lib/post_destroyer.rb:361:in `trash_public_post_actions'
lib/post_destroyer.rb:186:in `block in perform_delete'
activerecord (7.1.3.4) lib/active_record/connection_adapters/abstract/transaction.rb:535:in `block in within_new_transaction'
activesupport (7.1.3.4) lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
activerecord (7.1.3.4) lib/active_record/connection_adapters/abstract/transaction.rb:532:in `within_new_transaction'
activerecord (7.1.3.4) lib/active_record/connection_adapters/abstract/database_statements.rb:344:in `transaction'
activerecord (7.1.3.4) lib/active_record/transactions.rb:212:in `transaction'
lib/post_destroyer.rb:177:in `perform_delete'
lib/post_destroyer.rb:79:in `destroy'
app/controllers/topics_controller.rb:687:in `destroy'
actionpack (7.1.3.4) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (7.1.3.4) lib/abstract_controller/base.rb:224:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/rendering.rb:165:in `process_action'
actionpack (7.1.3.4) lib/abstract_controller/callbacks.rb:259:in `block in process_action'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:121:in `block in run_callbacks'
app/controllers/application_controller.rb:424:in `block in with_resolved_locale'
i18n (1.14.5) lib/i18n.rb:351:in `with_locale'
app/controllers/application_controller.rb:424:in `with_resolved_locale'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:130:in `block in run_callbacks'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:141:in `run_callbacks'
actionpack (7.1.3.4) lib/abstract_controller/callbacks.rb:258:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/rescue.rb:25:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/instrumentation.rb:74:in `block in process_action'
activesupport (7.1.3.4) lib/active_support/notifications.rb:206:in `block in instrument'
activesupport (7.1.3.4) lib/active_support/notifications/instrumenter.rb:58:in `instrument'
activesupport (7.1.3.4) lib/active_support/notifications.rb:206:in `instrument'
actionpack (7.1.3.4) lib/action_controller/metal/instrumentation.rb:73:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/params_wrapper.rb:261:in `process_action'
activerecord (7.1.3.4) lib/active_record/railties/controller_runtime.rb:32:in `process_action'
actionpack (7.1.3.4) lib/abstract_controller/base.rb:160:in `process'
actionview (7.1.3.4) lib/action_view/rendering.rb:40:in `process'
rack-mini-profiler (3.3.1) lib/mini_profiler/profiling_methods.rb:115:in `block in profile_method'
actionpack (7.1.3.4) lib/action_controller/metal.rb:227:in `dispatch'
actionpack (7.1.3.4) lib/action_controller/metal.rb:309:in `dispatch'
actionpack (7.1.3.4) lib/action_dispatch/routing/route_set.rb:49:in `dispatch'
actionpack (7.1.3.4) lib/action_dispatch/routing/route_set.rb:32:in `serve'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:51:in `block in serve'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:131:in `block in find_routes'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:124:in `each'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:124:in `find_routes'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (7.1.3.4) lib/action_dispatch/routing/route_set.rb:882:in `call'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
rack (2.2.9) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.9) lib/rack/conditional_get.rb:40:in `call'
rack (2.2.9) lib/rack/head.rb:12:in `call'
actionpack (7.1.3.4) lib/action_dispatch/http/permissions_policy.rb:36:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:399:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
rack (2.2.9) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.9) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/cookies.rb:689:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:101:in `run_callbacks'
actionpack (7.1.3.4) lib/action_dispatch/middleware/callbacks.rb:28:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/debug_exceptions.rb:29:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/show_exceptions.rb:31:in `call'
logster (2.20.0) lib/logster/middleware/reporter.rb:40:in `call'
lib/freedom_patches/rails_rack_logger_from_rails_7_2.rb:35:in `call_app'
lib/freedom_patches/rails_rack_logger_from_rails_7_2.rb:22:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/request_id.rb:28:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
rack (2.2.9) lib/rack/method_override.rb:24:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/executor.rb:14:in `call'
rack (2.2.9) lib/rack/sendfile.rb:110:in `call'
rack-mini-profiler (3.3.1) lib/mini_profiler.rb:334:in `call'
message_bus (4.3.8) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:360:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/remote_ip.rb:92:in `call'
railties (7.1.3.4) lib/rails/engine.rb:536:in `call'
railties (7.1.3.4) lib/rails/railtie.rb:226:in `public_send'
railties (7.1.3.4) lib/rails/railtie.rb:226:in `method_missing'
rack (2.2.9) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.9) lib/rack/urlmap.rb:58:in `each'
rack (2.2.9) lib/rack/urlmap.rb:58:in `call'
unicorn (6.1.0) lib/unicorn/http_server.rb:634:in `process_client'
unicorn (6.1.0) lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn (6.1.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn (6.1.0) lib/unicorn/http_server.rb:143:in `start'
unicorn (6.1.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>'

Além disso, há um Job exception: undefined method `scheduled?’ for nil com este backtrace

/var/www/discourse/app/jobs/scheduled/run_problem_checks.rb:19:in `block in execute'
activerecord-7.1.3.4/lib/active_record/relation/delegation.rb:100:in `each'
activerecord-7.1.3.4/lib/active_record/relation/delegation.rb:100:in `each'
/var/www/discourse/app/jobs/scheduled/run_problem_checks.rb:18:in `filter_map'
/var/www/discourse/app/jobs/scheduled/run_problem_checks.rb:18:in `execute'
/var/www/discourse/app/jobs/base.rb:305:in `block (2 levels) in perform'
rails_multisite-6.0.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
rails_multisite-6.0.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:292:in `block in perform'
/var/www/discourse/app/jobs/base.rb:288:in `each'
/var/www/discourse/app/jobs/base.rb:288:in `perform'
/var/www/discourse/app/jobs/base.rb:359:in `perform'
mini_scheduler-0.16.0/lib/mini_scheduler/manager.rb:122:in `process_queue'
mini_scheduler-0.16.0/lib/mini_scheduler/manager.rb:70:in `worker_loop'
mini_scheduler-0.16.0/lib/mini_scheduler/manager.rb:59:in `block (2 levels) in ensure_worker_threads'

Obrigado

Olá @Alessandra_Casale / @ecesarini,

Esse comportamento é bastante incomum e, como persiste após a remoção de um plugin, não é causado por ele.

Você pode compartilhar mais detalhes sobre como instalou o Discourse? Qual versão você está executando? Esses erros ainda estão acontecendo após uma reconstrução?

Pelos logs, parece que a instalação está corrompida e faltando arquivos, então precisamos de mais informações para ajudar você.

Hi,
thank for your help.

  • O Discourse é implantado via docker, usando um arquivo de configuração baseado no exemplo standalone.yml que você pode encontrar no repositório oficial discourse_docker. Nós apenas definimos os campos necessários e a lista de plugins a serem instalados. A instância está em execução há vários meses e esse tipo de problema nunca aconteceu antes da configuração e ativação do plugin de IA.
  • A versão/tag de imagem do Discourse é v3.3.2.
  • Sim, destruímos e reconstruímos a instância várias vezes, mas o erro 500 persiste quando os administradores tentam excluir qualquer postagem ou tópico na interface web. Os erros não ocorrem ao excluir elementos via cli no console rails (por exemplo, Post.find(<#ID>).destroy).

Se tentarmos editar ou mover postagens/tópicos, tudo funciona bem.

Aqui está a lista de plugins, caso seja útil:

          - git clone https://github.com/discourse/discourse-oauth2-basic.git
          - git clone https://github.com/discourse/discourse-openid-connect.git
          - git clone https://github.com/discourse/discourse-saml.git
          - git clone https://github.com/discourse/discourse-post-voting.git
          - git clone https://github.com/discourse/discourse-solved.git
          - git clone https://github.com/discourse/discourse-docs.git
          - git clone https://github.com/discourse/discourse-chat-integration.git
          #- git clone https://github.com/discourse/discourse-ai.git
          - git clone https://github.com/discourse/discourse-math.git
          - git clone https://github.com/discourse/discourse-tooltips.git
          #- git clone https://github.com/discourse/discourse-jira.git
          - git clone https://github.com/discourse/discourse-category-experts.git
          - git clone https://github.com/discourse/discourse-topic-voting.git
          - git clone https://github.com/discourse/discourse-assign.git
          - git clone https://github.com/discourse/discourse-templates.git
          - git clone https://github.com/discourse/discourse-translator.git
          - git clone https://github.com/discourse/discourse-gamification.git

Na última reconstrução, ai e jira foram comentados, mas esses erros ainda estão ocorrendo.

Hi @Falco ,
I add here the log that I find in our community /logs page.

If I delete a topic:
ArgumentError (Empty list of attributes to change) lib/post_destroyer.rb:361:in trash_public_post_actions' lib/post_destroyer.rb:186:in block in perform_delete’ lib/post_destroyer.rb:177:in `perform

activerecord (7.1.3.4) lib/active_record/relation.rb:508:in `update_all'
lib/post_destroyer.rb:361:in `trash_public_post_actions'
lib/post_destroyer.rb:186:in `block in perform_delete'
activerecord (7.1.3.4) lib/active_record/connection_adapters/abstract/transaction.rb:535:in `block in within_new_transaction'
activesupport (7.1.3.4) lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
activerecord (7.1.3.4) lib/active_record/connection_adapters/abstract/transaction.rb:532:in `within_new_transaction'
activerecord (7.1.3.4) lib/active_record/connection_adapters/abstract/database_statements.rb:344:in `transaction'
activerecord (7.1.3.4) lib/active_record/transactions.rb:212:in `transaction'
lib/post_destroyer.rb:177:in `perform_delete'
lib/post_destroyer.rb:79:in `destroy'
app/controllers/topics_controller.rb:687:in `destroy'
actionpack (7.1.3.4) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (7.1.3.4) lib/abstract_controller/base.rb:224:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/rendering.rb:165:in `process_action'
actionpack (7.1.3.4) lib/abstract_controller/callbacks.rb:259:in `block in process_action'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:121:in `block in run_callbacks'
app/controllers/application_controller.rb:424:in `block in with_resolved_locale'
i18n (1.14.5) lib/i18n.rb:351:in `with_locale'
app/controllers/application_controller.rb:424:in `with_resolved_locale'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:130:in `block in run_callbacks'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:141:in `run_callbacks'
actionpack (7.1.3.4) lib/abstract_controller/callbacks.rb:258:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/rescue.rb:25:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/instrumentation.rb:74:in `block in process_action'
activesupport (7.1.3.4) lib/active_support/notifications.rb:206:in `block in instrument'
activesupport (7.1.3.4) lib/active_support/notifications/instrumenter.rb:58:in `instrument'
activesupport (7.1.3.4) lib/active_support/notifications.rb:206:in `instrument'
actionpack (7.1.3.4) lib/action_controller/metal/instrumentation.rb:73:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/params_wrapper.rb:261:in `process_action'
activerecord (7.1.3.4) lib/active_record/railties/controller_runtime.rb:32:in `process_action'
actionpack (7.1.3.4) lib/abstract_controller/base.rb:160:in `process'
actionview (7.1.3.4) lib/action_view/rendering.rb:40:in `process'
rack-mini-profiler (3.3.1) lib/mini_profiler/profiling_methods.rb:115:in `block in profile_method' 
actionpack (7.1.3.4) lib/action_controller/metal.rb:227:in `dispatch'
actionpack (7.1.3.4) lib/action_controller/metal.rb:309:in `dispatch'
actionpack (7.1.3.4) lib/action_dispatch/routing/route_set.rb:49:in `dispatch'
actionpack (7.1.3.4) lib/action_dispatch/routing/route_set.rb:32:in `serve'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:51:in `block in serve'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:131:in `block in find_routes'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:124:in `each'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:124:in `find_routes'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (7.1.3.4) lib/action_dispatch/routing/route_set.rb:882:in `call'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
rack (2.2.9) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.9) lib/rack/conditional_get.rb:40:in `call'
rack (2.2.9) lib/rack/head.rb:12:in `call'
actionpack (7.1.3.4) lib/action_dispatch/http/permissions_policy.rb:36:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:399:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
rack (2.2.9) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.9) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/cookies.rb:689:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:101:in `run_callbacks'
actionpack (7.1.3.4) lib/action_dispatch/middleware/callbacks.rb:28:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/debug_exceptions.rb:29:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/show_exceptions.rb:31:in `call'
logster (2.20.0) lib/logster/middleware/reporter.rb:40:in `call'
lib/freedom_patches/rails_rack_logger_from_rails_7_2.rb:35:in `call_app'
lib/freedom_patches/rails_rack_logger_from_rails_7_2.rb:22:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/request_id.rb:28:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
rack (2.2.9) lib/rack/method_override.rb:24:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/executor.rb:14:in `call'
rack (2.2.9) lib/rack/sendfile.rb:110:in `call'
rack-mini-profiler (3.3.1) lib/mini_profiler.rb:334:in `call'
message_bus (4.3.8) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:360:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/remote_ip.rb:92:in `call'
railties (7.1.3.4) lib/rails/engine.rb:536:in `call'
railties (7.1.3.4) lib/rails/railtie.rb:226:in `public_send'
railties (7.1.3.4) lib/rails/railtie.rb:226:in `method_missing'
rack (2.2.9) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.9) lib/rack/urlmap.rb:58:in `each'
rack (2.2.9) lib/rack/urlmap.rb:58:in `call'
unicorn (6.1.0) lib/unicorn/http_server.rb:634:in `process_client'
unicorn (6.1.0) lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn (6.1.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn (6.1.0) lib/unicorn/http_server.rb:143:in `start'
unicorn (6.1.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>'

If I delete a post:
ArgumentError (Empty list of attributes to change) lib/post_destroyer.rb:361:in trash_public_post_actions' lib/post_destroyer.rb:186:in block in perform_delete’ lib/post_destroyer.rb:177:in `perform

activerecord (7.1.3.4) lib/active_record/relation.rb:508:in `update_all'
lib/post_destroyer.rb:361:in `trash_public_post_actions'
lib/post_destroyer.rb:186:in `block in perform_delete'
activerecord (7.1.3.4) lib/active_record/connection_adapters/abstract/transaction.rb:535:in `block in within_new_transaction'
activesupport (7.1.3.4) lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
activerecord (7.1.3.4) lib/active_record/connection_adapters/abstract/transaction.rb:532:in `within_new_transaction'
activerecord (7.1.3.4) lib/active_record/connection_adapters/abstract/database_statements.rb:344:in `transaction'
activerecord (7.1.3.4) lib/active_record/transactions.rb:212:in `transaction'
lib/post_destroyer.rb:177:in `perform_delete'
lib/post_destroyer.rb:79:in `destroy'
app/controllers/posts_controller.rb:362:in `destroy'
actionpack (7.1.3.4) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (7.1.3.4) lib/abstract_controller/base.rb:224:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/rendering.rb:165:in `process_action'
actionpack (7.1.3.4) lib/abstract_controller/callbacks.rb:259:in `block in process_action'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:121:in `block in run_callbacks'
app/controllers/application_controller.rb:424:in `block in with_resolved_locale'
i18n (1.14.5) lib/i18n.rb:351:in `with_locale'
app/controllers/application_controller.rb:424:in `with_resolved_locale'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:130:in `block in run_callbacks'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:141:in `run_callbacks'
actionpack (7.1.3.4) lib/abstract_controller/callbacks.rb:258:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/rescue.rb:25:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/instrumentation.rb:74:in `block in process_action'
activesupport (7.1.3.4) lib/active_support/notifications.rb:206:in `block in instrument'
activesupport (7.1.3.4) lib/active_support/notifications/instrumenter.rb:58:in `instrument'
activesupport (7.1.3.4) lib/active_support/notifications.rb:206:in `instrument'
actionpack (7.1.3.4) lib/action_controller/metal/instrumentation.rb:73:in `process_action'
actionpack (7.1.3.4) lib/action_controller/metal/params_wrapper.rb:261:in `process_action'
activerecord (7.1.3.4) lib/active_record/railties/controller_runtime.rb:32:in `process_action'
actionpack (7.1.3.4) lib/abstract_controller/base.rb:160:in `process'
actionview (7.1.3.4) lib/action_view/rendering.rb:40:in `process'
rack-mini-profiler (3.3.1) lib/mini_profiler/profiling_methods.rb:115:in `block in profile_method' 
actionpack (7.1.3.4) lib/action_controller/metal.rb:227:in `dispatch'
actionpack (7.1.3.4) lib/action_controller/metal.rb:309:in `dispatch'
actionpack (7.1.3.4) lib/action_dispatch/routing/route_set.rb:49:in `dispatch'
actionpack (7.1.3.4) lib/action_dispatch/routing/route_set.rb:32:in `serve'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:51:in `block in serve'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:131:in `block in find_routes'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:124:in `each'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:124:in `find_routes'
actionpack (7.1.3.4) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (7.1.3.4) lib/action_dispatch/routing/route_set.rb:882:in `call'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
rack (2.2.9) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.9) lib/rack/conditional_get.rb:40:in `call'
rack (2.2.9) lib/rack/head.rb:12:in `call'
actionpack (7.1.3.4) lib/action_dispatch/http/permissions_policy.rb:36:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:399:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
rack (2.2.9) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.9) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/cookies.rb:689:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (7.1.3.4) lib/active_support/callbacks.rb:101:in `run_callbacks'
actionpack (7.1.3.4) lib/action_dispatch/middleware/callbacks.rb:28:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/debug_exceptions.rb:29:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/show_exceptions.rb:31:in `call'
logster (2.20.0) lib/logster/middleware/reporter.rb:40:in `call'
lib/freedom_patches/rails_rack_logger_from_rails_7_2.rb:35:in `call_app'
lib/freedom_patches/rails_rack_logger_from_rails_7_2.rb:22:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/request_id.rb:28:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
rack (2.2.9) lib/rack/method_override.rb:24:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/executor.rb:14:in `call'
rack (2.2.9) lib/rack/sendfile.rb:110:in `call'
rack-mini-profiler (3.3.1) lib/mini_profiler.rb:334:in `call'
message_bus (4.3.8) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:360:in `call'
actionpack (7.1.3.4) lib/action_dispatch/middleware/remote_ip.rb:92:in `call'
railties (7.1.3.4) lib/rails/engine.rb:536:in `call'
railties (7.1.3.4) lib/rails/railtie.rb:226:in `public_send'
railties (7.1.3.4) lib/rails/railtie.rb:226:in `method_missing'
rack (2.2.9) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.9) lib/rack/urlmap.rb:58:in `each'
rack (2.2.9) lib/rack/urlmap.rb:58:in `call'
unicorn (6.1.0) lib/unicorn/http_server.rb:634:in `process_client'
unicorn (6.1.0) lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn (6.1.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn (6.1.0) lib/unicorn/http_server.rb:143:in `start'
unicorn (6.1.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>'

The two logs differ only in the 11th row:

app/controllers/topics_controller.rb:687:in `destroy'
app/controllers/posts_controller.rb:362:in `destroy'

Thanks in advance for your attention!

Olá, tenho o mesmo problema, não consigo excluir publicações.

Versão do Discourse (docker)

3.3.2

(84fa512335)

Informações:

Falha ao tratar exceção no middleware de exceção da aplicação: ArgumentError : Lista vazia de atributos para alterar

Backtrace:

activerecord-7.1.3.4/lib/active_record/relation.rb:508:in `update_all' 
/var/www/discourse/lib/post_destroyer.rb:361:in `trash_public_post_actions' 
/var/www/discourse/lib/post_destroyer.rb:186:in `block in perform_delete' 
activerecord-7.1.3.4/lib/active_record/connection_adapters/abstract/transaction.rb:535:in `block in within_new_transaction' 
activesupport-7.1.3.4/lib/active_support/concurrency/null_lock.rb:9:in `synchronize' 
activerecord-7.1.3.4/lib/active_record/connection_adapters/abstract/transaction.rb:532:in `within_new_transaction' 
activerecord-7.1.3.4/lib/active_record/connection_adapters/abstract/database_statements.rb:344:in `transaction' 
activerecord-7.1.3.4/lib/active_record/transactions.rb:212:in `transaction' 
/var/www/discourse/lib/post_destroyer.rb:177:in `perform_delete' 
/var/www/discourse/lib/post_destroyer.rb:79:in `destroy' 
/var/www/discourse/app/controllers/posts_controller.rb:362:in `destroy' 
actionpack-7.1.3.4/lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action' 
actionpack-7.1.3.4/lib/abstract_controller/base.rb:224:in `process_action' 
actionpack-7.1.3.4/lib/action_controller/metal/rendering.rb:165:in `process_action' 
actionpack-7.1.3.4/lib/abstract_controller/callbacks.rb:259:in `block in process_action' 
activesupport-7.1.3.4/lib/active_support/callbacks.rb:121:in `block in run_callbacks' 
/var/www/discourse/app/controllers/application_controller.rb:424:in `block in with_resolved_locale' 
i18n-1.14.5/lib/i18n.rb:351:in `with_locale' 
/var/www/discourse/app/controllers/application_controller.rb:424:in `with_resolved_locale' 
activesupport-7.1.3.4/lib/active_support/callbacks.rb:130:in `block in run_callbacks' 
activesupport-7.1.3.4/lib/active_support/callbacks.rb:141:in `run_callbacks' 
actionpack-7.1.3.4/lib/abstract_controller/callbacks.rb:258:in `process_action' 
actionpack-7.1.3.4/lib/action_controller/metal/rescue.rb:25:in `process_action' 
actionpack-7.1.3.4/lib/action_controller/metal/instrumentation.rb:74:in `block in process_action' 
activesupport-7.1.3.4/lib/active_support/notifications.rb:206:in `block in instrument' 
activesupport-7.1.3.4/lib/active_support/notifications/instrumenter.rb:58:in `instrument' 
activesupport-7.1.3.4/lib/active_support/notifications.rb:206:in `instrument' 
actionpack-7.1.3.4/lib/action_controller/metal/instrumentation.rb:73:in `process_action' 
actionpack-7.1.3.4/lib/action_controller/metal/params_wrapper.rb:261:in `process_action' 
activerecord-7.1.3.4/lib/active_record/railties/controller_runtime.rb:32:in `process_action' 
actionpack-7.1.3.4/lib/abstract_controller/base.rb:160:in `process' 
actionview-7.1.3.4/lib/action_view/rendering.rb:40:in `process' 
rack-mini-profiler-3.3.1/lib/mini_profiler/profiling_methods.rb:115:in `block in profile_method' 
actionpack-7.1.3.4/lib/action_controller/metal.rb:227:in `dispatch' 
actionpack-7.1.3.4/lib/action_controller/metal.rb:309:in `dispatch' 
actionpack-7.1.3.4/lib/action_dispatch/routing/route_set.rb:49:in `dispatch' 
actionpack-7.1.3.4/lib/action_dispatch/routing/route_set.rb:32:in `serve' 
actionpack-7.1.3.4/lib/action_dispatch/journey/router.rb:51:in `block in serve' 
actionpack-7.1.3.4/lib/action_dispatch/journey/router.rb:131:in `block in find_routes' 
actionpack-7.1.3.4/lib/action_dispatch/journey/router.rb:124:in `each' 
actionpack-7.1.3.4/lib/action_dispatch/journey/router.rb:124:in `find_routes' 
actionpack-7.1.3.4/lib/action_dispatch/journey/router.rb:32:in `serve' 
actionpack-7.1.3.4/lib/action_dispatch/routing/route_set.rb:882:in `call' 
/var/www/discourse/lib/middleware/omniauth_bypass_middleware.rb:64:in `call' 
rack-2.2.9/lib/rack/tempfile_reaper.rb:15:in `call' 
rack-2.2.9/lib/rack/conditional_get.rb:40:in `call' 
rack-2.2.9/lib/rack/head.rb:12:in `call' 
actionpack-7.1.3.4/lib/action_dispatch/http/permissions_policy.rb:36:in `call' 
/var/www/discourse/lib/content_security_policy/middleware.rb:12:in `call' 
/var/www/discourse/lib/middleware/anonymous_cache.rb:399:in `call' 
/var/www/discourse/lib/middleware/csp_script_nonce_injector.rb:12:in `call' 
/var/www/discourse/config/initializers/008-rack-cors.rb:26:in `call' 
rack-2.2.9/lib/rack/session/abstract/id.rb:266:in `context' 
rack-2.2.9/lib/rack/session/abstract/id.rb:260:in `call' 
actionpack-7.1.3.4/lib/action_dispatch/middleware/cookies.rb:689:in `call' 
actionpack-7.1.3.4/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call' 
activesupport-7.1.3.4/lib/active_support/callbacks.rb:101:in `run_callbacks' 
actionpack-7.1.3.4/lib/action_dispatch/middleware/callbacks.rb:28:in `call' 
actionpack-7.1.3.4/lib/action_dispatch/middleware/debug_exceptions.rb:29:in `call' 
actionpack-7.1.3.4/lib/action_dispatch/middleware/show_exceptions.rb:31:in `call' 
logster-2.20.0/lib/logster/middleware/reporter.rb:40:in `call' 
/var/www/discourse/lib/freedom_patches/rails_rack_logger_from_rails_7_2.rb:35:in `call_app' 
/var/www/discourse/lib/freedom_patches/rails_rack_logger_from_rails_7_2.rb:22:in `call' 
/var/www/discourse/config/initializers/100-quiet_logger.rb:20:in `call' 
/var/www/discourse/config/initializers/100-silence_logger.rb:29:in `call' 
actionpack-7.1.3.4/lib/action_dispatch/middleware/request_id.rb:28:in `call' 
/var/www/discourse/lib/middleware/enforce_hostname.rb:24:in `call' 
rack-2.2.9/lib/rack/method_override.rb:24:in `call' 
actionpack-7.1.3.4/lib/action_dispatch/middleware/executor.rb:14:in `call' 
rack-2.2.9/lib/rack/sendfile.rb:110:in `call' 
rack-mini-profiler-3.3.1/lib/mini_profiler.rb:334:in `call' 
message_bus-4.3.8/lib/message_bus/rack/middleware.rb:60:in `call' 
/var/www/discourse/lib/middleware/request_tracker.rb:360:in `call' 
actionpack-7.1.3.4/lib/action_dispatch/middleware/remote_ip.rb:92:in `call' 
railties-7.1.3.4/lib/rails/engine.rb:536:in `call' 
railties-7.1.3.4/lib/rails/railtie.rb:226:in `public_send' 
railties-7.1.3.4/lib/rails/railtie.rb:226:in `method_missing' 
rack-2.2.9/lib/rack/urlmap.rb:74:in `block in call' 
rack-2.2.9/lib/rack/urlmap.rb:58:in `each' 
rack-2.2.9/lib/rack/urlmap.rb:58:in `call' 
unicorn-6.1.0/lib/unicorn/http_server.rb:634:in `process_client'
unicorn-6.1.0/lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn-6.1.0/lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn-6.1.0/lib/unicorn/http_server.rb:143:in `start'
unicorn-6.1.0/bin/unicorn:128:in `<top (required)>' 
/var/www/discourse/vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load' 
/var/www/discourse/vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>' 

Plugins:

          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-reactions.git
          # doc-categories is broken on current version discourse
          #- git clone https://github.com/discourse/discourse-doc-categories.git 
          - git clone https://github.com/discourse/discourse-solved-reminders-plugin.git
          - git clone https://github.com/discourse/discourse-subscriptions.git
          - git clone https://github.com/discourse/discourse-post-voting.git
          - git clone https://github.com/discourse/discourse-newsletter-integration.git
          - git clone https://github.com/communiteq/discourse-private-replies.git
          - git clone https://github.com/discourse/discourse-calendar.git
          - git clone https://github.com/discourse/discourse-user-notes.git
          - git clone https://github.com/discourse/discourse-ai.git
          - git clone https://github.com/paviliondev/discourse-tickets.git
          - git clone https://github.com/discourse/discourse-solved.git
          - git clone https://github.com/communiteq/discourse-geo-blocking.git
          - git clone https://github.com/discourse/discourse-translator.git
          - git clone https://github.com/Ebsy/discourse-nationalflags.git
          - git clone https://github.com/featheredtoast/discourse-pwned-passwords.git
          - git clone https://github.com/discourse/discourse-templates.git
          - git clone https://github.com/discourse/discourse-yearly-review.git
          - git clone https://github.com/paviliondev/discourse-legal-tools.git
          - git clone https://github.com/discourse/discourse-assign.git
          - git clone https://github.com/discourse/discourse-signatures.git
          - git clone https://github.com/discourse/discourse-whos-online.git
          - git clone https://github.com/singerscreations/discourse-stopforumspam.git

No momento, não consigo excluir nenhuma postagem.
Serei eternamente grato se o problema for corrigido.

1 curtida