Impossible de modifier les groupes de balises sous la catégorie

Lorsque j’essaie de gérer un groupe d’étiquettes sous une catégorie, une fenêtre contextuelle Internal Server Error (Erreur interne du serveur) générique s’affiche.

Je peux gérer les étiquettes sous la catégorie, et je peux très bien modifier les groupes d’étiquettes sous l’administration.

C’est juste sous N’IMPORTE QUELLE catégorie, si je clique sur la clé, puis sur les étiquettes, j’obtiens l’erreur lorsque j’essaie de choisir un groupe d’étiquettes sous l’un ou l’autre :

Restreindre ces groupes d’étiquettes à cette catégorie :
ou
Exiger que les nouvelles rubriques aient des étiquettes provenant des groupes d’étiquettes :

Ajouter un groupe d’étiquettes obligatoire

Je ne sais pas où chercher un journal de cette erreur.

Nous sommes censés mettre ce forum en ligne dans les prochains jours, je serais très reconnaissant si quelqu’un pouvait m’aider à résoudre ce problème à temps pour le lancement.
Nous avons vraiment besoin de pouvoir exiger certaines étiquettes dans une catégorie particulière avant le lancement.

2 « J'aime »

Désolé que vous rencontriez ce problème. :grimacing:

Lorsque vous essayez ces choses avec la console JavaScript ouverte, voyez-vous des messages d’erreur supplémentaires qui pourraient aider au dépannage ?

J’ai essayé et je ne parviens pas à reproduire le problème. Cela s’enregistre correctement.

Pouvez-vous partager une capture d’écran de la page « modifier le groupe d’étiquettes » pour le groupe d’étiquettes que vous essayez d’utiliser dans votre catégorie ? Peut-être que les autorisations ne correspondent pas ?

J’obtiens :
Failed to load resource: the server responded with a status of 500 () ... https://connect.checkinpos.com/tag_groups/filter/search?q=&limit=3

J’ai 3 groupes d’étiquettes différents disponibles, mais je n’arrive même pas à afficher les groupes disponibles. La fenêtre contextuelle apparaît dès que je clique sur le bouton.

Avez-vous essayé en mode sans échec ? Peut-être qu’un plugin ou un composant interfère ?

Avez-vous effectué la mise à jour vers la dernière version de Discourse ?

Oui, je viens de faire la mise à jour ce matin. Il se peut que cela ait cassé quelque chose.
Je ne savais pas que Discourse avait un mode sans échec, attendez…

Oui, cela se produit toujours en mode sans échec.

1 « J'aime »

Quelque chose dans /logs ?

2

[DiscourseJsProcessor] DÉPRÉCIATION : La propriété parts des nœuds de chemin est obsolète, utilisez plutôt head et tail
2 juin 14:27

Exception de tâche : Type d'argument de commande non pris en charge : FalseClass
Lun 13:47

Exception de tâche : Type d'argument de commande non pris en charge : FalseClass
Lun 15:10

RuntimeError (default :limit n'est pas compris entre 0 et 3) app/controllers/application_controller.rb:1027:in `fetch_int_from_params' app/controllers/application_controller.rb:1020:in `fetch_limit_from_param
9:24
4

[DiscourseJsProcessor] DÉPRÉCIATION : La propriété parts des nœuds de chemin est obsolète, utilisez plutôt head et tail
9:33
2

[DiscourseJsProcessor] DÉPRÉCIATION : La propriété parts des nœuds de chemin est obsolète, utilisez plutôt head et tail
9:33
16

RuntimeError (default :limit n'est pas compris entre 0 et 3) app/controllers/application_controller.rb:1025:in `fetch_int_from_params' app/controllers/application_controller.rb:1018:in `fetch_limit_from_param

Difficile de vous aider à dépanner avec des étapes de reproduction sur un autre site que le vôtre.

Peut-être essayer de supprimer vos groupes de balises et de les recréer ?

Je vais tenter ma chance dans un petit moment. Les autres groupes sont déjà affectés à différentes catégories et continuent de travailler, donc je crains de ne pas pouvoir les réaffecter après la destruction et la recréation.

Pouvez-vous revenir à une version antérieure de Discourse ? J’ai fait une sauvegarde juste avant la mise à jour de ce matin.

Pouvez-vous me dire si vous avez modifié le paramètre de site max_tag_search_results ?

2 « J'aime »

Oui, il est réglé sur 3.

1 « J'aime »

Je peux reproduire le problème simplement en changeant le paramètre sur mon site à 3 également.
Pourriez-vous essayer de le remettre à 5 ?

2 « J'aime »

Cela corrige effectivement le problème. On dirait bien un bug, non ?
Je ne penserais pas que la modification de ce paramètre devrait affecter la sélection d’un autre paramètre.

2 « J'aime »

Oui, vous avez découvert un bug ! :clap: Merci d’avoir persévéré pour en arriver à la source.

Excellent travail pour trouver comment le reproduire, @moin ! :clap: :clap:

Nous allons examiner cela.

1 « J'aime »

Contento de haber podido ayudar, pero solo hice lo que gente más inteligente me dijo que hiciera… :slight_smile:

1 « J'aime »

Le journal que vous avez fourni m’a aidé à le trouver.

J’ai recherché fetch_limit_from_param dans le code et j’ai trouvé une ligne dans le contrôleur de groupe d’étiquettes qui faisait référence au paramètre.

message complet et backtrace des journaux
Message

RuntimeError (default :limit is not between 0 and 3)
app/controllers/application_controller.rb:1025:in `fetch_int_from_params'
app/controllers/application_controller.rb:1018:in `fetch_limit_from_params'
app/controllers/tag_groups_controller.rb:95:in `search'
app/controllers/application_controller.rb:428:in `block in with_resolved_locale'
app/controllers/application_controller.rb:428:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
lib/middleware/default_headers.rb:13: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:23:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:385:in `call'


Backtrace

app/controllers/application_controller.rb:1025:in `fetch_int_from_params'
app/controllers/application_controller.rb:1018:in `fetch_limit_from_params'
app/controllers/tag_groups_controller.rb:95:in `search'
actionpack (7.2.2.1) lib/action_controller/metal/basic_implicit_render.rb:8:in `send_action'
actionpack (7.2.2.1) lib/abstract_controller/base.rb:226:in `process_action'
actionpack (7.2.2.1) lib/action_controller/metal/rendering.rb:193:in `process_action'
actionpack (7.2.2.1) lib/abstract_controller/callbacks.rb:261:in `block in process_action'
activesupport (7.2.2.1) lib/active_support/callbacks.rb:121:in `block in run_callbacks'
app/controllers/application_controller.rb:428:in `block in with_resolved_locale'
i18n (1.14.7) lib/i18n.rb:353:in `with_locale'
app/controllers/application_controller.rb:428:in `with_resolved_locale'
activesupport (7.2.2.1) lib/active_support/callbacks.rb:130:in `block in run_callbacks'
activesupport (7.2.2.1) lib/active_support/callbacks.rb:141:in `run_callbacks'
actionpack (7.2.2.1) lib/abstract_controller/callbacks.rb:260:in `process_action'
actionpack (7.2.2.1) lib/action_controller/metal/rescue.rb:27:in `process_action'
actionpack (7.2.2.1) lib/action_controller/metal/instrumentation.rb:77:in `block in process_action'
activesupport (7.2.2.1) lib/active_support/notifications.rb:210:in `block in instrument'
activesupport (7.2.2.1) lib/active_support/notifications/instrumenter.rb:58:in `instrument'
activesupport (7.2.2.1) lib/active_support/notifications.rb:210:in `instrument'
actionpack (7.2.2.1) lib/action_controller/metal/instrumentation.rb:76:in `process_action'
actionpack (7.2.2.1) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord (7.2.2.1) lib/active_record/railties/controller_runtime.rb:39:in `process_action'
actionpack (7.2.2.1) lib/abstract_controller/base.rb:163:in `process'
actionview (7.2.2.1) lib/action_view/rendering.rb:40:in `process'
rack-mini-profiler (3.3.1) lib/mini_profiler/profiling_methods.rb:89:in `block in profile_method'
actionpack (7.2.2.1) lib/action_controller/metal.rb:252:in `dispatch'
actionpack (7.2.2.1) lib/action_controller/metal.rb:335:in `dispatch'
actionpack (7.2.2.1) lib/action_dispatch/routing/route_set.rb:67:in `dispatch'
actionpack (7.2.2.1) lib/action_dispatch/routing/route_set.rb:50:in `serve'
actionpack (7.2.2.1) lib/action_dispatch/journey/router.rb:53:in `block in serve'
actionpack (7.2.2.1) lib/action_dispatch/journey/router.rb:133:in `block in find_routes'
actionpack (7.2.2.1) lib/action_dispatch/journey/router.rb:126:in `each'
actionpack (7.2.2.1) lib/action_dispatch/journey/router.rb:126:in `find_routes'
actionpack (7.2.2.1) lib/action_dispatch/journey/router.rb:34:in `serve'
actionpack (7.2.2.1) lib/action_dispatch/routing/route_set.rb:896:in `call'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
rack (2.2.13) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.13) lib/rack/conditional_get.rb:27:in `call'
rack (2.2.13) lib/rack/head.rb:12:in `call'
actionpack (7.2.2.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:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
rack (2.2.13) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.13) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/cookies.rb:704:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/callbacks.rb:31:in `block in call'
activesupport (7.2.2.1) lib/active_support/callbacks.rb:101:in `run_callbacks'
actionpack (7.2.2.1) lib/action_dispatch/middleware/callbacks.rb:30:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/debug_exceptions.rb:31:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/show_exceptions.rb:32:in `call'
logster (2.20.1) lib/logster/middleware/reporter.rb:40:in `call'
lib/middleware/default_headers.rb:13:in `call'
lograge (0.14.0) lib/lograge/rails_ext/rack/logger.rb:18:in `call_app'
railties (7.2.2.1) lib/rails/rack/logger.rb:29:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/request_id.rb:33:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
rack (2.2.13) lib/rack/method_override.rb:24:in `call'
rack (2.2.13) lib/rack/sendfile.rb:110:in `call'
plugins/discourse-prometheus/lib/middleware/metrics.rb:14:in `call'
rack-mini-profiler (3.3.1) lib/mini_profiler.rb:191:in `call'
lib/middleware/processing_request.rb:12:in `call'
message_bus (4.4.1) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:385:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/remote_ip.rb:96:in `call'
rails_failover (2.2.0) lib/rails_failover/active_record/middleware.rb:67:in `block in call'
activerecord (7.2.2.1) lib/active_record/connection_handling.rb:376:in `with_role_and_shard'
activerecord (7.2.2.1) lib/active_record/connection_handling.rb:147:in `connected_to'
rails_failover (2.2.0) lib/rails_failover/active_record/middleware.rb:64:in `call'
rails_multisite (6.1.0) lib/rails_multisite/middleware.rb:26:in `call'
railties (7.2.2.1) lib/rails/engine.rb:535:in `call'
railties (7.2.2.1) lib/rails/railtie.rb:226:in `public_send'
railties (7.2.2.1) lib/rails/railtie.rb:226:in `method_missing'
rack (2.2.13) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.13) lib/rack/urlmap.rb:58:in `each'
rack (2.2.13) 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>'
3 « J'aime »

Ceci a été corrigé :tada:

4 « J'aime »