sofurry user/gallery/post scanning

This commit is contained in:
Dylan Knutson
2025-07-01 19:09:42 +00:00
parent ca5649a28f
commit 66d1e06b4b
68 changed files with 12038 additions and 443 deletions

View File

@@ -0,0 +1,11 @@
class CreateSofurryEnumTypes < ActiveRecord::Migration[7.2]
disable_ddl_transaction!
def change
add_enum_value(:domain_post_group_type, Domain::PostGroup::SofurryFolder)
add_enum_value(
:domain_post_group_join_type,
Domain::PostGroupJoin::SofurryFolderJoin,
)
end
end

View File

@@ -1,6 +1,6 @@
class CreateSofurryTypes < ActiveRecord::Migration[7.2]
def change
up_only { execute "SET DEFAULT_TABLESPACE = mirai" }
mirai_tablespace!
add_json_index(
:domain_users,
@@ -12,7 +12,15 @@ class CreateSofurryTypes < ActiveRecord::Migration[7.2]
add_json_index(
:domain_users,
:url_name,
:username,
:text,
where: "type = 'Domain::User::SofurryUser'",
unique: true,
)
add_json_index(
:domain_users,
:useralias,
:text,
where: "type = 'Domain::User::SofurryUser'",
unique: true,
@@ -25,5 +33,20 @@ class CreateSofurryTypes < ActiveRecord::Migration[7.2]
where: "type = 'Domain::Post::SofurryPost'",
unique: true,
)
add_json_index(
:domain_post_groups,
:sofurry_id,
:integer,
where: "type = 'Domain::PostGroup::SofurryFolder'",
unique: true,
)
add_json_index(
:domain_post_groups,
:owner_id,
:integer,
where: "type = 'Domain::PostGroup::SofurryFolder'",
)
end
end

View File

@@ -123,7 +123,8 @@ CREATE TYPE public.domain_post_file_type AS ENUM (
CREATE TYPE public.domain_post_group_join_type AS ENUM (
'Domain::PostGroupJoin::InkbunnyPoolJoin',
'Domain::PostGroupJoin::E621PoolJoin'
'Domain::PostGroupJoin::E621PoolJoin',
'Domain::PostGroupJoin::SofurryFolderJoin'
);
@@ -133,7 +134,8 @@ CREATE TYPE public.domain_post_group_join_type AS ENUM (
CREATE TYPE public.domain_post_group_type AS ENUM (
'Domain::PostGroup::InkbunnyPool',
'Domain::PostGroup::E621Pool'
'Domain::PostGroup::E621Pool',
'Domain::PostGroup::SofurryFolder'
);
@@ -5824,6 +5826,20 @@ CREATE INDEX idx_domain_post_files_on_url_str_lower ON public.domain_post_files
CREATE INDEX idx_domain_post_files_on_url_str_lower_reverse ON public.domain_post_files USING btree (reverse(lower((json_attributes ->> 'url_str'::text))) text_pattern_ops);
--
-- Name: idx_domain_post_groups_on_owner_id; Type: INDEX; Schema: public; Owner: -; Tablespace: mirai
--
CREATE INDEX idx_domain_post_groups_on_owner_id ON public.domain_post_groups USING btree ((((json_attributes ->> 'owner_id'::text))::integer)) WHERE (type = 'Domain::PostGroup::SofurryFolder'::public.domain_post_group_type);
--
-- Name: idx_domain_post_groups_on_sofurry_id; Type: INDEX; Schema: public; Owner: -; Tablespace: mirai
--
CREATE UNIQUE INDEX idx_domain_post_groups_on_sofurry_id ON public.domain_post_groups USING btree ((((json_attributes ->> 'sofurry_id'::text))::integer)) WHERE (type = 'Domain::PostGroup::SofurryFolder'::public.domain_post_group_type);
--
-- Name: idx_domain_posts_on_sofurry_id; Type: INDEX; Schema: public; Owner: -; Tablespace: mirai
--
@@ -5860,10 +5876,17 @@ CREATE UNIQUE INDEX idx_domain_users_on_sofurry_id ON public.domain_users USING
--
-- Name: idx_domain_users_on_url_name; Type: INDEX; Schema: public; Owner: -; Tablespace: mirai
-- Name: idx_domain_users_on_useralias; Type: INDEX; Schema: public; Owner: -; Tablespace: mirai
--
CREATE UNIQUE INDEX idx_domain_users_on_url_name ON public.domain_users USING btree (((json_attributes ->> 'url_name'::text))) WHERE (type = 'Domain::User::SofurryUser'::public.domain_user_type);
CREATE UNIQUE INDEX idx_domain_users_on_useralias ON public.domain_users USING btree (((json_attributes ->> 'useralias'::text))) WHERE (type = 'Domain::User::SofurryUser'::public.domain_user_type);
--
-- Name: idx_domain_users_on_username; Type: INDEX; Schema: public; Owner: -; Tablespace: mirai
--
CREATE UNIQUE INDEX idx_domain_users_on_username ON public.domain_users USING btree (((json_attributes ->> 'username'::text))) WHERE (type = 'Domain::User::SofurryUser'::public.domain_user_type);
SET default_tablespace = '';
@@ -9038,6 +9061,7 @@ SET search_path TO "$user", public;
INSERT INTO "schema_migrations" (version) VALUES
('20250628000003'),
('20250628000002'),
('20250626191434'),
('20250619233027'),
('20250321050628'),