Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ class OutputPerformerConfig extends Stage {
}
runs runsAsYaml
settings topLevelSettings
jobId ctx.jc.jobId
}

def converted = YamlConverter.convertJsonToYaml(new StringReader(json.toString()))
Expand Down
10 changes: 10 additions & 0 deletions src/com/couchbase/perf/shared/database/PerfDatabase.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,16 @@ class PerfDatabase {
// JSONB indexes
execute(sql, env, "CREATE INDEX IF NOT EXISTS idx_runs_params ON runs USING gin (params)")
execute(sql, env, "CREATE INDEX IF NOT EXISTS idx_runs_events_params ON run_events USING gin (params)")

// For FIT-as-a-Service:-
// New tables to hold an overlying job for grouping runs
execute(sql, env, "CREATE TABLE IF NOT EXISTS jobs (id uuid PRIMARY KEY, datetime timestamp NOT NULL DEFAULT now(), config jsonb, tags TEXT[] DEFAULT NULL)");
execute(sql, env, "CREATE TABLE IF NOT EXISTS job_run_join (job_id UUID REFERENCES jobs(id) ON DELETE CASCADE, run_id UUID REFERENCES runs(id) ON DELETE CASCADE, PRIMARY KEY (job_id, run_id))");
// Indexes for the new tables
execute(sql, env, "CREATE INDEX IF NOT EXISTS idx_jobs_datetime ON jobs (datetime)");
execute(sql, env, "CREATE INDEX IF NOT EXISTS idx_jobs_tags ON jobs USING gin (tags)");
execute(sql, env, "CREATE INDEX IF NOT EXISTS idx_job_runs_job_id ON job_run_join (job_id)");
execute(sql, env, "CREATE INDEX IF NOT EXISTS idx_job_runs_run_id ON job_run_join (run_id)");
}

/**
Expand Down