bensheldon/good_job · error · GoodJob::InterruptError

Interrupted after starting perform at '#{CurrentThread.execu

Error message

Interrupted after starting perform at '#{CurrentThread.execution_interrupted}'

What it means

Error "Interrupted after starting perform at '#{CurrentThread.execution_interrupted}'" thrown in bensheldon/good_job.

Source

Thrown at lib/good_job/active_job_extensions/interrupt_errors.rb:10

# frozen_string_literal: true

module GoodJob
  module ActiveJobExtensions
    module InterruptErrors
      extend ActiveSupport::Concern

      included do
        around_perform do |_job, block|
          raise InterruptError, "Interrupted after starting perform at '#{CurrentThread.execution_interrupted}'" if CurrentThread.execution_interrupted.present?

          block.call
        end
      end
    end
  end
end

View on GitHub (pinned to 5fcde48f87)

Solutions

  1. Treat this as an expected shutdown signal: the job was interrupted after perform started.
  2. Make the job idempotent so it can be safely retried after interruption.

Example fix

# Make perform idempotent; GoodJob retries or discards per your retry configuration

When it happens

Trigger: Thrown at lib/good_job/active_job_extensions/interrupt_errors.rb:10 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of bensheldon/good_job@5fcde48f87 (2026-08-23). Data as JSON: /api/errors/76d89733e060f91f. Report an issue: GitHub.