Package com.kingsrook.qqq.backend.core.jobs.effects
package com.kingsrook.qqq.backend.core.jobs.effects
-
ClassDescriptionDelivers outbox effects (spec section 2.13): claims due effects with leases, calls their targets as the system user, and records the outcome, fenced on the lease.A test seam: called around a delivery (the fault-injection tests halt the JVM there).The deterministic idempotency key of an effect, and the forms targets need (spec section 2.13): jobId:chunkSeq:rowKey:effectName.A dispatcher's hold on one effect while it delivers or reconciles it.One effect, as handed to its target for delivery or reconciliation.What a target's delivery attempt achievedThe four outcomes.Status of one outbox effect (jobs_effect.status).The jobs_effect outbox: write effects with a chunk's progress, claim due effects (FOR UPDATE SKIP LOCKED where supported, else conditional updates), record outcomes (fenced), and reap leases of dispatchers that died.Counts of a job's effects.A system outside the job's database that receives effects (email, an HTTP API, object storage, another database).Resolve registered effect targets (DurableJobsMetaData.effectTargets) to instances, one per code reference.A provider of job-level side effects, such as delivering a job's outputs (spec section 2.13).A side effect a durable process's step causes, declared in its DurableProcessMetaData (spec section 2.13): its name (unique in the process), the step that emits it, the target that delivers it (external effects), and its type.How a process step causes a side effect outside the job's database (spec section 2.13).How a step's side effect is made safe across crashes and reruns (spec section 2.13).One job-level effect a JobCompletionEffects provider asks for.What a target's reconcile lookup (by idempotency key or natural id) found for an effect whose delivery outcome is unknownThe three outcomes.