Expand description
The job history: a SQLite database of jobs, their runners, steps, samples and logs, the events clients resume
from, cache sizes and the paused repositories. Owns the schema and its migrations, the one writer and the event
broadcast. Writes are messages to a writer thread, so the engine never waits on the disk; reads and pruning run
on Tokio’s blocking pool, pruning on its own connection, a batch at a time. It decides nothing about scheduling
and stores no secret: no token, no JIT config, no runner _diag log.
Structs§
- Announced
- The profiles and repositories as the stored events last announced them: what clients resuming after those events have.
- LogPosition
- Where a job’s log capture continues: the runner’s page file and the byte offset in it.
- Measured
- The last measurement of the cache volumes.
- Mirror
Position - How far the mirror’s log was counted: the time of the last response counted, in nanoseconds since the epoch as Docker logs it, and how many responses logged at exactly that time were counted, so the next read counts the ones it was too early to see.
- OpenJob
- A job the history has not closed, as the engine needs it after a restart.
- Runner
Record - A runner container as the history records it.
- Sample
Record - One sample of one runner’s container.
- Store
- The job history. Cloning shares it.
Enums§
- Store
Error - Why the database cannot be used.
Functions§
- sizing_
at - What sizing reads from the database at
path, opened read-only and not migrated, asrunnerd doctorreads it while no daemon runs;Nonewhen there is no database yet. In a directory it may write, SQLite keeps the-waland-shmfiles a read of a WAL database needs next to it; in one it may not, it reads the file as it is, or refuses when the-walholds changes the file does not have yet.