summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-08-08 13:06:05 +0300
committerGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-08-08 13:06:05 +0300
commit081dea194ba8f63878735775416c12faa769b6b3 (patch)
tree0859be91671ae203a0495452825d8a477c1c1e4e
parentde280cce9c63aa95b1fda7d68bf5940db0ed6bcd (diff)
Add traceId foreign key to job model
-rw-r--r--database/schema.sql9
-rw-r--r--database/test.sql10
-rw-r--r--opendc-api-spec.json3
3 files changed, 15 insertions, 7 deletions
diff --git a/database/schema.sql b/database/schema.sql
index 858f5d47..6338a457 100644
--- a/database/schema.sql
+++ b/database/schema.sql
@@ -151,8 +151,13 @@ CREATE TABLE IF NOT EXISTS traces (
-- A job
CREATE TABLE IF NOT EXISTS jobs (
- id INTEGER PRIMARY KEY NOT NULL,
- name TEXT NOT NULL
+ id INTEGER PRIMARY KEY NOT NULL,
+ name TEXT NOT NULL,
+ trace_id INTEGER NOT NULL,
+
+ FOREIGN KEY (trace_id) REFERENCES traces (id)
+ ON DELETE CASCADE
+ ON UPDATE CASCADE
);
-- A task that's defined in terms of how many flops (floating point operations) it takes to complete
diff --git a/database/test.sql b/database/test.sql
index 2309d690..7d2f002a 100644
--- a/database/test.sql
+++ b/database/test.sql
@@ -39,7 +39,7 @@ INSERT INTO sections (path_id, datacenter_id, start_tick) VALUES (2, 3, 0);
INSERT INTO traces (name) VALUES ('Default');
-- Jobs
-INSERT INTO jobs (name) VALUES ('Default');
+INSERT INTO jobs (name, trace_id) VALUES ('Default', 1);
-- Tasks
INSERT INTO tasks (id, start_tick, total_flop_count, job_id, parallelizability) VALUES (1, 0, 400000, 1, 'SEQUENTIAL');
@@ -53,7 +53,7 @@ VALUES (80, 200000, 1, 1, 'PARALLEL');
INSERT INTO traces (name) VALUES ('Image Processing');
-- Jobs
-INSERT INTO jobs (name) VALUES ('Image Processing');
+INSERT INTO jobs (name, trace_id) VALUES ('Image Processing', 2);
-- Tasks
INSERT INTO tasks (start_tick, total_flop_count, job_id, parallelizability) VALUES (0, 100000, 2, 'SEQUENTIAL');
@@ -121,7 +121,7 @@ INSERT INTO tasks (start_tick, total_flop_count, job_id, parallelizability) VALU
INSERT INTO traces (name) VALUES ('Path planning');
-- Jobs
-INSERT INTO jobs (name) VALUES ('Path planning');
+INSERT INTO jobs (name, trace_id) VALUES ('Path planning', 3);
INSERT INTO tasks (start_tick, total_flop_count, job_id, parallelizability) VALUES (0, 1000000, 2, 'PARALLEL');
INSERT INTO tasks (start_tick, total_flop_count, job_id, task_dependency_id, parallelizability)
@@ -161,7 +161,7 @@ VALUES (14, 200000, 1, 66, 'SEQUENTIAL');
INSERT INTO traces (name) VALUES ('Parallel heavy trace');
-- Jobs
-INSERT INTO jobs (name) VALUES ('Parallel heavy trace');
+INSERT INTO jobs (name, trace_id) VALUES ('Parallel heavy trace', 4);
INSERT INTO tasks (start_tick, total_flop_count, job_id, parallelizability) VALUES (0, 100000, 3, 'SEQUENTIAL');
INSERT INTO tasks (start_tick, total_flop_count, job_id, parallelizability) VALUES (0, 900000, 3, 'PARALLEL');
@@ -170,7 +170,7 @@ INSERT INTO tasks (start_tick, total_flop_count, job_id, parallelizability) VALU
INSERT INTO traces (name) VALUES ('Sequential heavy trace');
-- Jobs
-INSERT INTO jobs (name) VALUES ('Sequential heavy trace');
+INSERT INTO jobs (name, trace_id) VALUES ('Sequential heavy trace', 5);
INSERT INTO tasks (start_tick, total_flop_count, job_id, parallelizability) VALUES (0, 100000, 4, 'PARALLEL');
INSERT INTO tasks (start_tick, total_flop_count, job_id, parallelizability) VALUES (0, 900000, 4, 'SEQUENTIAL');
diff --git a/opendc-api-spec.json b/opendc-api-spec.json
index 070d497b..7a8cd4d8 100644
--- a/opendc-api-spec.json
+++ b/opendc-api-spec.json
@@ -3927,6 +3927,9 @@
},
"name": {
"type": "string"
+ },
+ "traceId": {
+ "type": "integer"
}
}
},