diff --git a/.sqlx/query-a9cafe3a6ef8bcba95b1b29d5b9bde81f8233804e771b6347a5d165663a39680.json b/.sqlx/query-a9cafe3a6ef8bcba95b1b29d5b9bde81f8233804e771b6347a5d165663a39680.json new file mode 100644 index 0000000..3dc1413 --- /dev/null +++ b/.sqlx/query-a9cafe3a6ef8bcba95b1b29d5b9bde81f8233804e771b6347a5d165663a39680.json @@ -0,0 +1,12 @@ +{ + "db_name": "SQLite", + "query": "\n INSERT OR REPLACE INTO metrics (name, unit)\n VALUES (?, ?)\n ", + "describe": { + "columns": [], + "parameters": { + "Right": 2 + }, + "nullable": [] + }, + "hash": "a9cafe3a6ef8bcba95b1b29d5b9bde81f8233804e771b6347a5d165663a39680" +} diff --git a/migrations/20240513132200_init.sql b/migrations/20240513132200_init.sql index 286e128..5aa6ece 100644 --- a/migrations/20240513132200_init.sql +++ b/migrations/20240513132200_init.sql @@ -38,7 +38,7 @@ CREATE TABLE refs ( CREATE TABLE metrics ( name TEXT NOT NULL PRIMARY KEY, unit TEXT, - direction INT + direction INT NOT NULL DEFAULT 0 ) STRICT; CREATE TABLE runs ( diff --git a/src/server/web/api/worker.rs b/src/server/web/api/worker.rs index 7b9c72a..6b33dea 100644 --- a/src/server/web/api/worker.rs +++ b/src/server/web/api/worker.rs @@ -78,6 +78,17 @@ async fn save_work( .await?; for (metric, measurement) in run.measurements { + sqlx::query!( + " + INSERT OR REPLACE INTO metrics (name, unit) + VALUES (?, ?) + ", + metric, + measurement.unit, + ) + .execute(&mut *conn) + .await?; + sqlx::query!( " INSERT INTO run_measurements (