Check whether closed? exists on noteable in CreateNoteHandler
When e.g. notable
in CreateNoteHandler
is a Commit
it doesn't respond to closed?
to raises an error.
From Slack (internal link), sample log
Backtrace:
app/models/commit.rb:349:in `method_missing', lib/gitlab/
email/handler/create_note_handler.rb:78:in `reopen_issue_on_external_participant_note',
lib/gitlab/email/handler/create_note_handler.rb:37:in `execute', lib/gitlab/email/receiver.rb:32:in
`execute', app/workers/email_receiver_worker.rb:30:in `execute_receiver',
app/workers/email_receiver_worker.rb:20:in `perform', lib/gitlab/sidekiq_middleware/skip_jobs.rb:49:in
`call', lib/gitlab/database/load_balancing/sidekiq_server_middleware.rb:29:in `call',
lib/gitlab/sidekiq_middleware/duplicate_jobs/strategies/until_executing.rb:16:in `perform',
lib/gitlab/sidekiq_middleware/duplicate_jobs/duplicate_job.rb:44:in `perform',
lib/gitlab/sidekiq_middleware/duplicate_jobs/server.rb:8:in `call',
lib/gitlab/sidekiq_middleware/pause_control/strategies/base.rb:31:in `perform',
lib/gitlab/sidekiq_middleware/pause_control/strategy_handler.rb:22:in `perform',
lib/gitlab/sidekiq_middleware/pause_control/server.rb:8:in `call',
lib/gitlab/sidekiq_middleware/worker_context.rb:9:in `wrap_in_optional_context',
lib/gitlab/sidekiq_middleware/worker_context/server.rb:19:in `block in call',
lib/gitlab/application_context.rb:130:in `block in use', lib/gitlab/application_context.rb:130:in `use',
lib/gitlab/application_context.rb:64:in `with_context',
lib/gitlab/sidekiq_middleware/worker_context/server.rb:17:in `call',
lib/gitlab/sidekiq_status/server_middleware.rb:7:in `call',
lib/gitlab/sidekiq_versioning/middleware.rb:9:in `call',
lib/gitlab/sidekiq_middleware/query_analyzer.rb:7:in `block in call',
lib/gitlab/database/query_analyzer.rb:37:in `within', lib/gitlab/sidekiq_middleware/query_analyzer.rb:7:in
`call', lib/gitlab/sidekiq_middleware/admin_mode/server.rb:14:in `call',
lib/gitlab/sidekiq_middleware/instrumentation_logger.rb:9:in `call',
lib/gitlab/sidekiq_middleware/batch_loader.rb:7:in `call',
lib/gitlab/sidekiq_middleware/extra_done_log_metadata.rb:7:in `call',
lib/gitlab/sidekiq_middleware/request_store_middleware.rb:8:in `block in call',
lib/gitlab/sidekiq_middleware/request_store_middleware.rb:7:in `call',
lib/gitlab/sidekiq_middleware/server_metrics.rb:105:in `block in call',
lib/gitlab/sidekiq_middleware/server_metrics.rb:133:in `block in instrument',
lib/gitlab/metrics/background_transaction.rb:33:in `run',
lib/gitlab/sidekiq_middleware/server_metrics.rb:133:in `instrument',
lib/gitlab/sidekiq_middleware/server_metrics.rb:104:in `call',
lib/gitlab/sidekiq_middleware/monitor.rb:10:in `block in call', lib/gitlab/sidekiq_daemon/monitor.rb:46:in
`within_job', lib/gitlab/sidekiq_middleware/monitor.rb:9:in `call',
lib/gitlab/sidekiq_middleware/size_limiter/server.rb:13:in `call',
lib/gitlab/sidekiq_logging/structured_logger.rb:21:in `call'
Edited by Marc Saleiko