Skip to content

Commit

Permalink
feat: fallback on btree indexes when hash is unavailable
Browse files Browse the repository at this point in the history
  • Loading branch information
olirice committed Dec 4, 2024
1 parent 1bad34e commit e98b9d3
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions migrations/20240427152123_add_one_time_tokens_table.up.sql
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,14 @@ do $$ begin
check (char_length(token_hash) > 0)
);

create index if not exists one_time_tokens_token_hash_hash_idx on {{ index .Options "Namespace" }}.one_time_tokens using hash (token_hash);
create index if not exists one_time_tokens_relates_to_hash_idx on {{ index .Options "Namespace" }}.one_time_tokens using hash (relates_to);
begin
create index if not exists one_time_tokens_token_hash_hash_idx on {{ index .Options "Namespace" }}.one_time_tokens using hash (token_hash);
create index if not exists one_time_tokens_relates_to_hash_idx on {{ index .Options "Namespace" }}.one_time_tokens using hash (relates_to);
exception when others then
-- Fallback to btree indexes if hash creation fails
create index if not exists one_time_tokens_token_hash_hash_idx on {{ index .Options "Namespace" }}.one_time_tokens using btree (token_hash);
create index if not exists one_time_tokens_relates_to_hash_idx on {{ index .Options "Namespace" }}.one_time_tokens using btree (relates_to);
end;

create unique index if not exists one_time_tokens_user_id_token_type_key on {{ index .Options "Namespace" }}.one_time_tokens (user_id, token_type);
end $$;

0 comments on commit e98b9d3

Please sign in to comment.