lib/good_job/adapter.rb in good_job-3.15.3 vs lib/good_job/adapter.rb in good_job-3.15.4

- old
+ new

@@ -48,14 +48,18 @@ active_jobs = Array(active_jobs) return 0 if active_jobs.empty? current_time = Time.current executions = active_jobs.map do |active_job| - GoodJob::Execution.build_for_enqueue(active_job, { - id: SecureRandom.uuid, - created_at: current_time, - updated_at: current_time, - }) + GoodJob::Execution.build_for_enqueue(active_job).tap do |execution| + if GoodJob::Execution.discrete_support? + execution.make_discrete + execution.scheduled_at = current_time if execution.scheduled_at == execution.created_at + end + + execution.created_at = current_time + execution.updated_at = current_time + end end inline_executions = [] GoodJob::Execution.transaction(requires_new: true, joinable: false) do results = GoodJob::Execution.insert_all(executions.map(&:attributes), returning: %w[id active_job_id]) # rubocop:disable Rails/SkipsModelValidations