From 0e8873e85cf339ab6fbc437ca8dd4f18e29af708 Mon Sep 17 00:00:00 2001 From: Spike Curtis Date: Tue, 9 Apr 2024 10:21:33 +0400 Subject: [PATCH 1/2] feat: add src_id and dst_id indexes to tailnet_tunnels --- coderd/database/dump.sql | 4 ++++ .../migrations/000206_add_tailnet_tunnels_indexes.down.sql | 2 ++ .../migrations/000206_add_tailnet_tunnels_indexes.up.sql | 3 +++ 3 files changed, 9 insertions(+) create mode 100644 coderd/database/migrations/000206_add_tailnet_tunnels_indexes.down.sql create mode 100644 coderd/database/migrations/000206_add_tailnet_tunnels_indexes.up.sql diff --git a/coderd/database/dump.sql b/coderd/database/dump.sql index 830f8a1825b20..03d3640f8d28a 100644 --- a/coderd/database/dump.sql +++ b/coderd/database/dump.sql @@ -1624,6 +1624,10 @@ CREATE INDEX idx_tailnet_clients_coordinator ON tailnet_clients USING btree (coo CREATE INDEX idx_tailnet_peers_coordinator ON tailnet_peers USING btree (coordinator_id); +CREATE INDEX idx_tailnet_tunnels_dst_id ON tailnet_tunnels USING hash (dst_id); + +CREATE INDEX idx_tailnet_tunnels_src_id ON tailnet_tunnels USING hash (src_id); + CREATE UNIQUE INDEX idx_users_email ON users USING btree (email) WHERE (deleted = false); CREATE UNIQUE INDEX idx_users_username ON users USING btree (username) WHERE (deleted = false); diff --git a/coderd/database/migrations/000206_add_tailnet_tunnels_indexes.down.sql b/coderd/database/migrations/000206_add_tailnet_tunnels_indexes.down.sql new file mode 100644 index 0000000000000..475e509ac6843 --- /dev/null +++ b/coderd/database/migrations/000206_add_tailnet_tunnels_indexes.down.sql @@ -0,0 +1,2 @@ +DROP INDEX idx_tailnet_tunnels_src_id; +DROP INDEX idx_tailnet_tunnels_dst_id; diff --git a/coderd/database/migrations/000206_add_tailnet_tunnels_indexes.up.sql b/coderd/database/migrations/000206_add_tailnet_tunnels_indexes.up.sql new file mode 100644 index 0000000000000..30d53aa61c1a8 --- /dev/null +++ b/coderd/database/migrations/000206_add_tailnet_tunnels_indexes.up.sql @@ -0,0 +1,3 @@ +-- Since src_id and dst_id are UUIDs, we only every compare them with equality, so hash is better +CREATE INDEX idx_tailnet_tunnels_src_id ON tailnet_tunnels USING hash (src_id); +CREATE INDEX idx_tailnet_tunnels_dst_id ON tailnet_tunnels USING hash (dst_id); From 7a561fd59ee02aa78031bc89b46a026df9c1a1d6 Mon Sep 17 00:00:00 2001 From: Spike Curtis Date: Wed, 10 Apr 2024 22:19:39 +0400 Subject: [PATCH 2/2] Update 000206_add_tailnet_tunnels_indexes.up.sql --- .../migrations/000206_add_tailnet_tunnels_indexes.up.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/coderd/database/migrations/000206_add_tailnet_tunnels_indexes.up.sql b/coderd/database/migrations/000206_add_tailnet_tunnels_indexes.up.sql index 30d53aa61c1a8..42f5729e1410c 100644 --- a/coderd/database/migrations/000206_add_tailnet_tunnels_indexes.up.sql +++ b/coderd/database/migrations/000206_add_tailnet_tunnels_indexes.up.sql @@ -1,3 +1,3 @@ --- Since src_id and dst_id are UUIDs, we only every compare them with equality, so hash is better +-- Since src_id and dst_id are UUIDs, we only ever compare them with equality, so hash is better CREATE INDEX idx_tailnet_tunnels_src_id ON tailnet_tunnels USING hash (src_id); CREATE INDEX idx_tailnet_tunnels_dst_id ON tailnet_tunnels USING hash (dst_id);