ores.compute.core

Table of Contents

Diagram

ores.compute.core component diagram

Figure 1: ores.compute.core

Summary

ores.compute.core manages the compute cluster for ORE risk runs. It maintains a registry of available compute applications (app, app_version), assigns batch jobs to available hosts, tracks execution state, and collects results. Worker nodes running ores.compute.wrapper register themselves and receive job assignments via NATS; results flow back through the same channel.

Inputs

  • NATS messages from ores.compute.wrapper instances (registration, heartbeat, job completion with result paths).
  • NATS request messages from Qt clients (batch CRUD, host/app queries).
  • PostgreSQL connections to ores_compute_* tables.

Outputs

  • Batch and result records persisted to the ores_compute schema.
  • NATS job-assignment messages dispatched to compute workers.
  • NATS response messages returned to callers.

Entry points

  • include/ores.compute.core/ores.compute.hpp — aggregate include.
  • include/ores.compute.core/messaging/registrar.hpp — registers handlers.
  • include/ores.compute.core/service/ — app, batch, host, result services.

Dependencies

  • ores.compute.api — shared domain types and NATS protocol schemas.
  • ores.dq — ORM base classes.
  • ores.iam.core — authorisation context.
  • rfl, soci, nats.c.

See also

Emacs 29.1 (Org mode 9.6.6)