Release compilation is batched (compile_release_batch; the emitter batches OCIDs per compiler_release message; the consumer bulk-writes).
Record compilation is still one OCID per message: compiler publishes compiler_record per OCID, and record_compiler runs compile_record + save_compiled_release (singular) for each.
Apply the same pattern if record throughput warrants:
- Emitter: publish
compiler_record per batch of OCIDs (reuse the _publish(…, ocids=…) helper).
record_compiler: accept an ocids list, read the batch's records in one query, compile each, and bulk-write via save_compiled_releases.
- Preserve the per-record logic (dated/undated/linked/tagged/compiledRelease handling and notes).
Work on this if record compilation is a bottleneck.
Release compilation is batched (
compile_release_batch; the emitter batches OCIDs percompiler_releasemessage; the consumer bulk-writes).Record compilation is still one OCID per message:
compilerpublishescompiler_recordper OCID, andrecord_compilerrunscompile_record+save_compiled_release(singular) for each.Apply the same pattern if record throughput warrants:
compiler_recordper batch of OCIDs (reuse the_publish(…, ocids=…)helper).record_compiler: accept anocidslist, read the batch's records in one query, compile each, and bulk-write viasave_compiled_releases.Work on this if record compilation is a bottleneck.