gassim
(Al-Gassim Sharaf Addin)
10 Aprile 2025, 8:06am
1
Prima dell’ultimo aggiornamento, c’era un’automazione che utilizzava il plugin Automation che faceva quanto segue (che è stato testato e ha funzionato con successo senza modifiche):
Script: Invia PM
Quando: “Utente aggiunto al gruppo”
Gruppo monitorato: “un gruppo che richiede al proprietario del gruppo di ‘approvare le richieste’ prima”
Opzioni script: un PM (testato e ha funzionato con successo).
Attualmente, sulla versione: 3.5.0.beta3-dev(231e9ca99a) ora viene visualizzato “errore interno del server” quando si tenta di approvare gli utenti.
Il seguente è l’errore che appare:
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'
Sospetto che ciò sia dovuto alle nuove modifiche alla tabella discourse_automation_stats menzionate qui:
[quote] @sam
main ← automation-stats
opened 06:32AM - 20 Mar 25 UTC
introduces comprehensive statistics tracking for the Discourse Automation plugin… , allowing users to monitor the performance and execution patterns of their automations:
- Add `discourse_automation_stats` table to track execution metrics including run counts, execution times, and performance data
- Create a new `Stat` model to handle tracking and retrieving automation statistics
- Update the admin UI to display automation stats (runs today/this week/month and last run time)
- Modernize the automation list interface using Glimmer components
- Replace the older enable/disable icon with a toggle switch for better UX
- Add schema annotations to existing models for better code documentation
- Include extensive test coverage for the new statistics functionality
This helps administrators understand how their automations are performing and identify potential bottlenecks or optimization opportunities.
[/quote]
Grazie!
1 Mi Piace
j.jaffeux
(Joffrey Jaffeux)
10 Aprile 2025, 8:51am
4
Grazie per il rapporto. Penso che tu abbia un altro errore, ma il codice di stato che abbiamo aggiunto lo sta nascondendo.
Questo dovrebbe risolverlo:
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`
E poi saremo in grado di vedere l’errore effettivo.
2 Mi Piace
gassim
(Al-Gassim Sharaf Addin)
10 Aprile 2025, 1:11pm
5
Grazie!
Questo significa che dopo l’aggiornamento, devo ottenere l’errore effettivo?
1 Mi Piace
j.jaffeux
(Joffrey Jaffeux)
10 Aprile 2025, 1:49pm
6
Sì, per favore, anche se da qui sospetto che tu possa risolverlo da solo.
2 Mi Piace
gassim
(Al-Gassim Sharaf Addin)
24 Aprile 2025, 12:05pm
7
Grazie per la tua pazienza!
Sto riscontrando un altro problema generico {"status":422,"error":"Unprocessable Entity"}. Si prega di vedere lo screenshot dopo aver cliccato su ‘approva’:
Il payload è form data (application/x-www-form-urlencoded; charset=UTF-8):
user_id=10127&accept=true
Grazie! Anche se non sono sicuro del perché dica ‘entità non elaborabile’, qualche suggerimento?
j.jaffeux
(Joffrey Jaffeux)
24 Aprile 2025, 6:39pm
8
Mi dispiace, ma non sembra automazione.
Puoi fare clic su risposta nella prima schermata, per favore?
gassim
(Al-Gassim Sharaf Addin)
25 Aprile 2025, 4:50am
9
Ciao
Grazie! È la stessa risposta…
Ho approfondito ulteriormente e ho capito che…
Sono già cambiate due cose:
L’utente viene aggiunto al gruppo con successo
Il messaggio automatico viene inviato
Questo errore “unprocessable entity” non compare quando l’account amministratore viene utilizzato per accettare la richiesta di gruppo, ma compare a un utente proprietario di gruppo non amministratore (anche se ora 1 e 2 funzionano correttamente sia per l’amministratore che per il non amministratore).
Sembra che ora stiamo parlando di un nuovo problema (dato che quelli sopra ora funzionano, ma solo che il risultato non è chiaro quando è bloccato da questo nuovo problema)…
Anche i log degli errori del server sono cambiati:
info log
ActiveRecord::RecordNotSaved (Qualcosa è andato storto. Forse questo argomento è stato chiuso o eliminato mentre lo stavi guardando?)
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)
28 Aprile 2025, 5:47pm
10
Mi dispiace ma sono molto confuso su come questo sia correlato all’op. Non ottieni questo errore tramite l’automazione, giusto? Questa è un’azione diretta che stai eseguendo nell’amministratore, per quanto posso dire.
1 Mi Piace
gassim
(Al-Gassim Sharaf Addin)
29 Aprile 2025, 7:52am
11
Ciao di nuovo!
Grazie per aver dedicato il tuo tempo a questo, quindi penso che ora sia risolto. Inizialmente, l’errore è apparso solo dopo aver attivato l’automazione (primo errore pubblicato nel primo post), e poi dopo la tua correzione l’errore è scomparso ma i log hanno mostrato un errore diverso come spiegato sopra.
Gli errori sono scomparsi dopo che ho fatto quanto segue:
Ho disattivato l’automazione
Ho cancellato la cache del browser
Ho riattivato l’automazione
Dopo aver attivato/disattivato l’automazione e cancellato la cache, tutti gli errori sono scomparsi. Grazie!
j.jaffeux
(Joffrey Jaffeux)
29 Aprile 2025, 8:03am
12
Ok, molto sorprendente, ma se funziona per te, tutto bene! Grazie per l’aggiornamento.
1 Mi Piace
j.jaffeux
(Joffrey Jaffeux)
Chiuso
2 Maggio 2025, 11:52pm
14
Questo argomento è stato chiuso automaticamente 3 giorni dopo l’ultima risposta. Non sono più consentite nuove risposte.