mirror of
https://github.com/coder/coder.git
synced 2026-06-02 20:48:20 +00:00
fix(coderd/database): optimize provisioner daemon with status query using index (#19703)
Fixes coder/internal#724 This change adds an index to optimize the `GetProvisionerDaemonsWithStatusByOrganization` query. Execution time dropped from `18s 838ms` to `107ms`.
This commit is contained in:
committed by
GitHub
parent
38028df4d5
commit
9db265d508
Generated
+4
@@ -2949,6 +2949,10 @@ CREATE INDEX provisioner_job_logs_id_job_id_idx ON provisioner_job_logs USING bt
|
||||
|
||||
CREATE INDEX provisioner_jobs_started_at_idx ON provisioner_jobs USING btree (started_at) WHERE (started_at IS NULL);
|
||||
|
||||
CREATE INDEX provisioner_jobs_worker_id_organization_id_completed_at_idx ON provisioner_jobs USING btree (worker_id, organization_id, completed_at DESC);
|
||||
|
||||
COMMENT ON INDEX provisioner_jobs_worker_id_organization_id_completed_at_idx IS 'Support index for finding the latest completed jobs for a worker (and organization), nulls first so that active jobs have priority; targets: GetProvisionerDaemonsWithStatusByOrganization';
|
||||
|
||||
CREATE UNIQUE INDEX provisioner_keys_organization_id_name_idx ON provisioner_keys USING btree (organization_id, lower((name)::text));
|
||||
|
||||
CREATE INDEX template_usage_stats_start_time_idx ON template_usage_stats USING btree (start_time DESC);
|
||||
|
||||
+1
@@ -0,0 +1 @@
|
||||
DROP INDEX provisioner_jobs_worker_id_organization_id_completed_at_idx;
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
CREATE INDEX provisioner_jobs_worker_id_organization_id_completed_at_idx ON provisioner_jobs (worker_id, organization_id, completed_at DESC NULLS FIRST);
|
||||
|
||||
COMMENT ON INDEX provisioner_jobs_worker_id_organization_id_completed_at_idx IS 'Support index for finding the latest completed jobs for a worker (and organization), nulls first so that active jobs have priority; targets: GetProvisionerDaemonsWithStatusByOrganization';
|
||||
Reference in New Issue
Block a user