forked from e621ng/e621ng
Revert "Revert "add prefix index on tags (#3858)""
This reverts commit 6210c1554c
.
This commit is contained in:
parent
091c4c97a8
commit
7c6ef9f22c
@ -74,9 +74,9 @@ module TagAutocomplete
|
||||
n += 2
|
||||
end
|
||||
|
||||
anchors = "^" + query.split("").map {|x| Regexp.escape(x)}.join(".*[#{PREFIX_BOUNDARIES}]")
|
||||
regexp = "([a-z0-9])[a-z0-9']*($|[^a-z0-9']+)"
|
||||
Tag
|
||||
.where("name ~ ?", anchors)
|
||||
.where('regexp_replace(name, ?, ?, ?) like ?', regexp, '\1', 'g', query.to_escaped_for_sql_like + '%')
|
||||
.where("post_count > ?", min_post_count)
|
||||
.where("post_count > 0")
|
||||
.order("post_count desc")
|
||||
|
@ -7128,6 +7128,13 @@ CREATE UNIQUE INDEX index_tags_on_name ON public.tags USING btree (name);
|
||||
CREATE INDEX index_tags_on_name_pattern ON public.tags USING btree (name text_pattern_ops);
|
||||
|
||||
|
||||
--
|
||||
-- Name: index_tags_on_name_prefix; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX index_tags_on_name_prefix ON public.tags USING gin (regexp_replace((name)::text, '([a-z0-9])[a-z0-9'']*($|[^a-z0-9'']+)'::text, ''::text, 'g'::text) public.gin_trgm_ops) WHERE (post_count > 0);
|
||||
|
||||
|
||||
--
|
||||
-- Name: index_tags_on_name_trgm; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
@ -7524,6 +7531,7 @@ INSERT INTO "schema_migrations" (version) VALUES
|
||||
('20180517190048'),
|
||||
('20180518175154'),
|
||||
('20180804203201'),
|
||||
('20180816230604');
|
||||
('20180816230604'),
|
||||
('20180912185624');
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user