gassim
(Al-Gassim Sharaf Addin)
Avril 10, 2025, 8:06
1
Avant la dernière mise à jour, il existait une automatisation utilisant le plugin d’automatisation qui faisait ce qui suit (et qui a été testée et fonctionnait avec succès sans aucune modification) :
Script : Envoyer des MP
Quand : « Utilisateur ajouté à un groupe »
Groupe suivi : « un groupe qui nécessite d’abord l’approbation des demandes par le propriétaire du groupe »
Options de script : un MP (testé et cela a fonctionné avec succès).
Actuellement, sur la version : 3.5.0.beta3-dev(231e9ca99a), une « erreur interne du serveur » s’affiche maintenant lors de la tentative d’approbation des utilisateurs.
Voici l’erreur qui apparaît :
PG::NotNullViolation (ERROR: null value in column "total_time" of relation "discourse_automation_stats" violates not-null constraint
DETAIL: Failing row contains (18, 8, 2025-04-10, 2025-04-10 07:34:42.740189, null, null, null, null, 1).
)
lib/mini_sql_multisite_connection.rb:109:in `run'
lib/plugin/instance.rb:609:in `block in on'
lib/discourse_event.rb:12:in `block in trigger'
lib/discourse_event.rb:12:in `trigger'
app/models/group.rb:869:in `trigger_user_added_event'
app/models/group.rb:838:in `add'
app/controllers/groups_controller.rb:502:in `block in handle_membership_request'
app/controllers/groups_controller.rb:500:in `handle_membership_request'
app/controllers/application_controller.rb:427:in `block in with_resolved_locale'
app/controllers/application_controller.rb:427: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:410: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:24:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:385:in `call'
Je soupçonne que cela est lié aux nouveaux changements apportés à la table discourse_automation_stats mentionnés ici :
Merci !
1 « J'aime »
j.jaffeux
(Joffrey Jaffeux)
Avril 10, 2025, 8:51
4
Merci pour le rapport. Je pense que vous avez une autre erreur, mais le code de statut que nous avons ajouté la masque.
Cela devrait résoudre le problème :
main ← resilient-stat-log
opened 08:49AM - 10 Apr 25 UTC
The previous code could attempt to log a `nil` `run_time` if the block would rai… se an exception. This commit adds two safeguards:
- rescue any exception to still compute `run_time`
- defaults to `0` if we still don't have any `run_time`
Et ensuite, nous devrions être en mesure de voir l’erreur réelle.
2 « J'aime »
gassim
(Al-Gassim Sharaf Addin)
Avril 10, 2025, 1:11
5
Merci !
Est-ce que cela signifie qu’après la mise à jour, je dois obtenir l’erreur réelle ?
1 « J'aime »
j.jaffeux
(Joffrey Jaffeux)
Avril 10, 2025, 1:49
6
Oui, s’il vous plaît, même si je suppose qu’à partir d’ici, vous pourriez le réparer vous-même.
2 « J'aime »
gassim
(Al-Gassim Sharaf Addin)
Avril 24, 2025, 12:05
7
Merci de votre patience !
J’ai un autre problème générique {"status":422,"error":"Unprocessable Entity"}. Veuillez voir la capture d’écran après avoir cliqué sur ‘approuver’ :
La charge utile est des données de formulaire (application/x-www-form-urlencoded; charset=UTF-8) :
user_id=10127&accept=true
Merci ! Bien que je ne sois pas sûr pourquoi il dit ‘entité non traitable’, une astuce ?
j.jaffeux
(Joffrey Jaffeux)
Avril 24, 2025, 6:39
8
Je suis désolé, mais cela ne ressemble pas à de l’automatisation.
Pouvez-vous cliquer sur réponse dans la première capture d’écran, s’il vous plaît ?
gassim
(Al-Gassim Sharaf Addin)
Avril 25, 2025, 4:50
9
Salut
Merci ! C’est la même réponse…
J’ai mené une enquête plus approfondie et j’ai réalisé que…
Deux choses ont déjà changé :
L’utilisateur est ajouté au groupe avec succès
Le message automatisé est envoyé
Cette erreur “entité non traitable” n’apparaît pas lorsque le compte administrateur est utilisé pour accepter la demande de groupe, mais elle apparaît pour un utilisateur propriétaire de groupe non administrateur (même si les points 1 et 2 fonctionnent maintenant avec succès pour l’administrateur et le non-administrateur).
Il semble que nous parlions maintenant d’un nouveau problème (étant donné que les points ci-dessus fonctionnent maintenant, mais que le résultat n’est pas clair lorsqu’il est bloqué par ce nouveau problème)…
Même les journaux d’erreurs du serveur ont changé :
info log
ActiveRecord::RecordNotSaved (Quelque chose s'est mal passé. Ce sujet a peut-être été fermé ou supprimé pendant que vous le consultiez ?)
lib/post_creator.rb:238:in `create!'
app/controllers/groups_controller.rb:523:in `handle_membership_request'
app/controllers/application_controller.rb:427:in `block in with_resolved_locale'
app/controllers/application_controller.rb:427: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:410: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:24:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:385:in `call'
backtrace log
lib/post_creator.rb:238:in `create!'
app/controllers/groups_controller.rb:523:in `handle_membership_request'
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:427:in `block in with_resolved_locale'
i18n (1.14.7) lib/i18n.rb:353:in `with_locale'
app/controllers/application_controller.rb:427: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:40: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:410: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'
railties (7.2.2.1) lib/rails/rack/logger.rb:41: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:24:in `call'
rack (2.2.13) lib/rack/method_override.rb:24:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/executor.rb:16:in `call'
rack (2.2.13) lib/rack/sendfile.rb:110: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'
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>'
env log
hostname
community-app
process_id
913
application_version
6fc5ce968892b980c3db6b19b49683fb38a59e29
HTTP_HOST
meta.discourse.org
REQUEST_URI
/groups/200/handle_membership_request.json
REQUEST_METHOD
PUT
HTTP_USER_AGENT
Mozilla/5.0
HTTP_ACCEPT
/
HTTP_REFERER
https://meta.discourse.org/g/group_name/requests
HTTP_X_FORWARDED_FOR
0.0.0.0
HTTP_X_REAL_IP
0.0.0.0
username
copuxtest
time
7:37 am
params
user_id
5836
accept
true
j.jaffeux
(Joffrey Jaffeux)
Avril 28, 2025, 5:47
10
Je suis désolé, mais je suis très confus quant à la manière dont cela est lié à l’OP. Vous n’obtenez pas cette erreur par automatisation, n’est-ce pas ? Il s’agit d’une action directe que vous effectuez dans l’administration, d’après ce que je peux dire.
1 « J'aime »
gassim
(Al-Gassim Sharaf Addin)
Avril 29, 2025, 7:52
11
Bonjour !
Merci d’avoir passé du temps sur ce problème, je pense donc qu’il est maintenant résolu. Initialement, l’erreur n’apparaissait qu’après l’activation de l’automatisation (première erreur postée dans le premier message), puis après votre correction, l’erreur a disparu mais les journaux ont montré une erreur différente comme expliqué ci-dessus.
Les erreurs ont disparu après que j’ai fait ce qui suit :
Désactivé l’automatisation
Vidé le cache du navigateur
Réactivé l’automatisation
Après avoir activé/désactivé l’automatisation et vidé le cache, toutes les erreurs ont disparu. Merci !
j.jaffeux
(Joffrey Jaffeux)
Avril 29, 2025, 8:03
12
Ok, très surprenant, mais si cela vous convient, tout va bien ! Merci pour la mise à jour.
1 « J'aime »
j.jaffeux
(Joffrey Jaffeux)
A fermé ce sujet ()
Mai 2, 2025, 11:52
14
Ce sujet a été automatiquement fermé 3 jours après la dernière réponse. Les nouvelles réponses ne sont plus autorisées.