Faraday : erreur de mauvaise requête lors de la publication

Si un utilisateur publie sur un sujet où le dernier auteur est un autre utilisateur, une erreur 500 se produit. Cependant, ce commentaire est publié quand même.

Mais si un utilisateur rédige un message et que le même utilisateur était déjà le dernier auteur sur ce sujet, il n’y a pas d’erreur.

En tant qu’administrateur, je ne peux pas déverrouiller les sujets. Il pourrait donc y avoir d’autres bogues.

Voici ce que je sais :

  • Le mode sans échec (safe-mode) n’aide pas
  • Le commentaire MaxMind dans app.yml n’aide pas
  • Ubuntu est à jour et a été redémarré
  • Discourse a été reconstruit via le shell hier et aujourd’hui deux fois
  • Cela ne se produit pas ici, évidemment
  • Installation standard, rien de spécial
  • Cela arrive à tout le monde — enfin, aux mobiles en tout cas, pour les ordinateurs de bureau je ne sais pas, mais comme c’est une erreur 500, je ne vois pas comment un appareil pourrait être impliqué
  • Erreur :
backtrace
Message (20 copies signalées)

Faraday::BadRequestError (le serveur a répondu avec le statut 400)
lib/discourse_event.rb:12:in `block in trigger'
lib/discourse_event.rb:12:in `trigger'
lib/post_creator.rb:258:in `trigger_after_events'
lib/post_creator.rb:220:in `create'
lib/new_post_manager.rb:318:in `perform_create_post'
lib/new_post_manager.rb:252:in `perform'
app/controllers/posts_controller.rb:201:in `create'
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'

Backtrace

faraday (2.9.0) lib/faraday/response/raise_error.rb:16:in `on_complete'
faraday (2.9.0) lib/faraday/middleware.rb:18:in `block in call'
faraday (2.9.0) lib/faraday/response.rb:42:in `on_complete'
faraday (2.9.0) lib/faraday/middleware.rb:17:in `call'
faraday (2.9.0) lib/faraday/rack_builder.rb:152:in `build_response'
faraday (2.9.0) lib/faraday/connection.rb:444:in `run_request'
faraday (2.9.0) lib/faraday/connection.rb:280:in `post'
ruby-openai (7.0.0) lib/openai/http.rb:22:in `json_post'
ruby-openai (7.0.0) lib/openai/client.rb:30:in `chat'
plugins/discourse-ai-topic-summary/lib/ai_topic_summary/call_bot.rb:15:in `get_response'
plugins/discourse-ai-topic-summary/lib/ai_topic_summary/summarise.rb:6:in `retrieve_summary'
plugins/discourse-ai-topic-summary/plugin.rb:62:in `block (2 levels) in activate!'
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'
lib/discourse_event.rb:12:in `trigger'
lib/post_creator.rb:258:in `trigger_after_events'
lib/post_creator.rb:220:in `create'
lib/new_post_manager.rb:318:in `perform_create_post'
lib/new_post_manager.rb:252:in `perform'
app/controllers/posts_controller.rb:201:in `create'
actionpack (7.0.8.1) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (7.0.8.1) lib/abstract_controller/base.rb:215:in `process_action'
actionpack (7.0.8.1) lib/action_controller/metal/rendering.rb:165:in `process_action'
actionpack (7.0.8.1) lib/abstract_controller/callbacks.rb:234:in `block in process_action'
activesupport (7.0.8.1) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
plugins/discourse-staff-alias/plugin.rb:129:in `block (4 levels) in activate!'
activesupport (7.0.8.1) lib/active_support/callbacks.rb:127:in `instance_exec'
activesupport (7.0.8.1) lib/active_support/callbacks.rb:127:in `block in run_callbacks'
app/controllers/application_controller.rb:423:in `block in with_resolved_locale'
i18n (1.14.5) lib/i18n.rb:351:in `with_locale'
app/controllers/application_controller.rb:423:in `with_resolved_locale'
activesupport (7.0.8.1) lib/active_support/callbacks.rb:127:in `block in run_callbacks'
activesupport (7.0.8.1) lib/active_support/callbacks.rb:138:in `run_callbacks'
actionpack (7.0.8.1) lib/abstract_controller/callbacks.rb:233:in `process_action'
actionpack (7.0.8.1) lib/action_controller/metal/rescue.rb:23:in `process_action'
actionpack (7.0.8.1) lib/action_controller/metal/instrumentation.rb:67:in `block in process_action'
activesupport (7.0.8.1) lib/active_support/notifications.rb:206:in `block in instrument'
activesupport (7.0.8.1) lib/active_support/notifications/instrumenter.rb:24:in `instrument'
activesupport (7.0.8.1) lib/active_support/notifications.rb:206:in `instrument'
actionpack (7.0.8.1) lib/action_controller/metal/instrumentation.rb:66:in `process_action'
actionpack (7.0.8.1) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord (7.0.8.1) lib/active_record/railties/controller_runtime.rb:27:in `process_action'
actionpack (7.0.8.1) lib/abstract_controller/base.rb:151:in `process'
actionview (7.0.8.1) lib/action_view/rendering.rb:39:in `process'
actionpack (7.0.8.1) lib/action_controller/metal.rb:188:in `dispatch'
actionpack (7.0.8.1) lib/action_controller/metal.rb:251:in `dispatch'
actionpack (7.0.8.1) lib/action_dispatch/routing/route_set.rb:49:in `dispatch'
actionpack (7.0.8.1) lib/action_dispatch/routing/route_set.rb:32:in `serve'
actionpack (7.0.8.1) lib/action_dispatch/journey/router.rb:50:in `block in serve'
actionpack (7.0.8.1) lib/action_dispatch/journey/router.rb:32:in `each'
actionpack (7.0.8.1) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (7.0.8.1) lib/action_dispatch/routing/route_set.rb:852: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.0.8.1) lib/action_dispatch/http/permissions_policy.rb:38: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'
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.0.8.1) lib/action_dispatch/middleware/cookies.rb:704:in `call'
actionpack (7.0.8.1) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'
activesupport (7.0.8.1) lib/active_support/callbacks.rb:99:in `run_callbacks'
actionpack (7.0.8.1) lib/action_dispatch/middleware/callbacks.rb:26:in `call'
actionpack (7.0.8.1) lib/action_dispatch/middleware/debug_exceptions.rb:28:in `call'
actionpack (7.0.8.1) lib/action_dispatch/middleware/show_exceptions.rb:29:in `call'
logster (2.19.1) lib/logster/middleware/reporter.rb:40:in `call'
railties (7.0.8.1) lib/rails/rack/logger.rb:40:in `call_app'
railties (7.0.8.1) lib/rails/rack/logger.rb:27:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (7.0.8.1) lib/action_dispatch/middleware/remote_ip.rb:93:in `call'
request_store (1.7.0) lib/request_store/middleware.rb:19:in `call'
actionpack (7.0.8.1) lib/action_dispatch/middleware/request_id.rb:26:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
rack (2.2.9) lib/rack/method_override.rb:24:in `call'
actionpack (7.0.8.1) lib/action_dispatch/middleware/executor.rb:14:in `call'
rack (2.2.9) lib/rack/sendfile.rb:110:in `call'
actionpack (7.0.8.1) lib/action_dispatch/middleware/host_authorization.rb:131:in `call'
message_bus (4.3.8) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:277:in `call'
railties (7.0.8.1) lib/rails/engine.rb:530:in `call'
railties (7.0.8.1) lib/rails/railtie.rb:226:in `public_send'
railties (7.0.8.1) 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.2.0/bin/unicorn:25:in `load'
vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `<main>'

Env

HTTP HOSTS: foorumi.katiska.eu

Des idées sur ce que je devrais faire ensuite ?

C’est peut-être de ma faute ?

Essayez de désactiver le résumé de sujet par IA.

Il y a probablement un problème avec votre demande à Open AI (d’où le 400).

Je devrais vraiment déplacer cette demande vers une tâche lancée dans un thread indépendant.

Je n’ai pas encore eu le temps (travail, travail, travail) de le faire, mais je m’en occuperai.

En attendant, vérifiez votre modèle et votre compte.

Oui, tu avais raison.

Je n’oublie jamais que le mode sans échec n’arrête pas tous les plugins. Nous, les administrateurs proches des utilisateurs finaux, avons vraiment besoin d’une indication pour savoir quand le mode sans échec fait de la magie et quand il n’en fait pas.

(S’il te plaît, s’il te plaît, s’il te plaît, corrige cela quand tu auras le temps ; j’aime vraiment ce résumé).

1 « J'aime »

Notez que la correction visera à réduire les perturbations en cas de panne.

Cela ne résoudra pas votre erreur 400 - vous devrez peut-être déterminer ce qui la cause et me faire rapport si c’est un autre bug.

1 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.