orbis/internal/worker/queries.sql
kjuulh 1d4a72fd5f
All checks were successful
continuous-integration/drone/push Build is passing
feat: prune old workers
2025-01-18 12:30:15 +01:00

34 lines
544 B
SQL

-- name: Ping :one
SELECT 1;
-- name: RegisterWorker :exec
INSERT INTO worker_register (worker_id, capacity)
VALUES (
$1
, $2
);
-- name: GetWorkers :many
SELECT
worker_id
, capacity
FROM
worker_register;
-- name: UpdateWorkerHeartbeat :exec
UPDATE worker_register
SET
heart_beat = now()
WHERE
worker_id = $1;
-- name: DeregisterWorker :exec
DELETE FROM worker_register
WHERE
worker_id = $1;
-- name: PruneWorker :exec
DELETE FROM worker_register
WHERE
heart_beat <= now() - INTERVAL '10 minutes';