schema.sql (135590B)
1 -- 2 -- PostgreSQL database dump 3 -- 4 5 -- \restrict mjMyY2YEVBfWGabnjdRqEcQmimigWbvovifIDg4VxfkA30tCaxYDjnokejkP5XZ 6 7 -- Dumped from database version 14.19 (Debian 14.19-1.pgdg12+1) 8 -- Dumped by pg_dump version 14.19 (Debian 14.19-1.pgdg12+1) 9 10 -- SET statement_timeout = 0; 11 -- SET lock_timeout = 0; 12 -- SET idle_in_transaction_session_timeout = 0; 13 -- SET client_encoding = 'UTF8'; 14 -- SET standard_conforming_strings = on; 15 -- SELECT pg_catalog.set_config('search_path', '', false); 16 -- SET check_function_bodies = false; 17 -- SET xmloption = content; 18 -- SET client_min_messages = warning; 19 -- SET row_security = off; 20 21 -- 22 -- Name: cube; Type: EXTENSION; Schema: -; Owner: - 23 -- 24 25 -- CREATE EXTENSION IF NOT EXISTS cube WITH SCHEMA public; 26 27 28 -- 29 -- Name: EXTENSION cube; Type: COMMENT; Schema: -; Owner: 30 -- 31 32 -- COMMENT ON EXTENSION cube IS 'data type for multidimensional cubes'; 33 34 35 -- 36 -- Name: earthdistance; Type: EXTENSION; Schema: -; Owner: - 37 -- 38 39 -- CREATE EXTENSION IF NOT EXISTS earthdistance WITH SCHEMA public; 40 41 42 -- 43 -- Name: EXTENSION earthdistance; Type: COMMENT; Schema: -; Owner: 44 -- 45 46 -- COMMENT ON EXTENSION earthdistance IS 'calculate great-circle distances on the surface of the Earth'; 47 48 49 -- 50 -- Name: pg_trgm; Type: EXTENSION; Schema: -; Owner: - 51 -- 52 53 -- CREATE EXTENSION IF NOT EXISTS pg_trgm WITH SCHEMA public; 54 55 56 -- 57 -- Name: EXTENSION pg_trgm; Type: COMMENT; Schema: -; Owner: 58 -- 59 60 -- COMMENT ON EXTENSION pg_trgm IS 'text similarity measurement and index searching based on trigrams'; 61 62 63 -- 64 -- Name: unaccent; Type: EXTENSION; Schema: -; Owner: - 65 -- 66 67 -- CREATE EXTENSION IF NOT EXISTS unaccent WITH SCHEMA public; 68 69 70 -- 71 -- Name: EXTENSION unaccent; Type: COMMENT; Schema: -; Owner: 72 -- 73 74 -- COMMENT ON EXTENSION unaccent IS 'text search dictionary that removes accents'; 75 76 77 -- 78 -- Name: uuid-ossp; Type: EXTENSION; Schema: -; Owner: - 79 -- 80 81 -- CREATE EXTENSION IF NOT EXISTS "uuid-ossp" WITH SCHEMA public; 82 83 84 -- 85 -- Name: EXTENSION "uuid-ossp"; Type: COMMENT; Schema: -; Owner: 86 -- 87 88 -- COMMENT ON EXTENSION "uuid-ossp" IS 'generate universally unique identifiers (UUIDs)'; 89 90 91 -- 92 -- Name: vector; Type: EXTENSION; Schema: -; Owner: - 93 -- 94 95 -- CREATE EXTENSION IF NOT EXISTS vector WITH SCHEMA public; 96 97 98 -- 99 -- Name: EXTENSION vector; Type: COMMENT; Schema: -; Owner: 100 -- 101 102 -- COMMENT ON EXTENSION vector IS 'vector data type and ivfflat and hnsw access methods'; 103 104 105 -- 106 -- Name: vchord; Type: EXTENSION; Schema: -; Owner: - 107 -- 108 109 -- CREATE EXTENSION IF NOT EXISTS vchord WITH SCHEMA public; 110 111 112 -- 113 -- Name: EXTENSION vchord; Type: COMMENT; Schema: -; Owner: 114 -- 115 116 -- COMMENT ON EXTENSION vchord IS 'vchord: Vector database plugin for Postgres, written in Rust, specifically designed for LLM'; 117 118 119 -- 120 -- Name: album_user_role_enum; Type: TYPE; Schema: public; Owner: postgres 121 -- 122 123 -- ENuM not supported in sqlite 124 -- CREATE TYPE public.album_user_role_enum AS ENUM ( 125 -- 'owner', 126 -- 'editor', 127 -- 'viewer' 128 -- ); 129 130 131 -- ALTER TYPE public.album_user_role_enum OWNER TO postgres; 132 133 -- 134 -- Name: asset_checksum_algorithm_enum; Type: TYPE; Schema: public; Owner: postgres 135 -- 136 137 -- CREATE TYPE public.asset_checksum_algorithm_enum AS ENUM ( 138 -- 'sha1', 139 -- 'sha1-path' 140 -- ); 141 142 143 -- ALTER TYPE public.asset_checksum_algorithm_enum OWNER TO postgres; 144 145 -- 146 -- Name: asset_visibility_enum; Type: TYPE; Schema: public; Owner: postgres 147 -- 148 149 -- CREATE TYPE public.asset_visibility_enum AS ENUM ( 150 -- 'archive', 151 -- 'timeline', 152 -- 'hidden', 153 -- 'locked' 154 -- ); 155 156 157 -- ALTER TYPE public.asset_visibility_enum OWNER TO postgres; 158 159 -- 160 -- Name: assets_status_enum; Type: TYPE; Schema: public; Owner: postgres 161 -- 162 163 -- CREATE TYPE public.assets_status_enum AS ENUM ( 164 -- 'active', 165 -- 'trashed', 166 -- 'deleted' 167 -- ); 168 169 170 -- ALTER TYPE public.assets_status_enum OWNER TO postgres; 171 172 -- 173 -- Name: sourcetype; Type: TYPE; Schema: public; Owner: postgres 174 -- 175 176 -- CREATE TYPE public.sourcetype AS ENUM ( 177 -- 'machine-learning', 178 -- 'exif', 179 -- 'manual' 180 -- ); 181 182 183 -- ALTER TYPE public.sourcetype OWNER TO postgres; 184 185 -- 186 -- Name: video_stream_variant_codec_enum; Type: TYPE; Schema: public; Owner: postgres 187 -- 188 189 -- CREATE TYPE public.video_stream_variant_codec_enum AS ENUM ( 190 -- 'av1', 191 -- 'hevc', 192 -- 'h264' 193 -- ); 194 195 196 -- ALTER TYPE public.video_stream_variant_codec_enum OWNER TO postgres; 197 198 -- 199 -- Name: album_asset_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 200 -- 201 202 -- CREATE FUNCTION public.album_asset_delete_audit() RETURNS trigger 203 -- LANGUAGE plpgsql 204 -- AS $$ 205 -- BEGIN 206 -- INSERT INTO album_asset_audit ("albumId", "assetId") 207 -- SELECT "albumId", "assetId" FROM OLD 208 -- WHERE "albumId" IN (SELECT "id" FROM album WHERE "id" IN (SELECT "albumId" FROM OLD)); 209 -- RETURN NULL; 210 -- END 211 -- $$; 212 213 214 -- ALTER FUNCTION public.album_asset_delete_audit() OWNER TO postgres; 215 216 -- 217 -- Name: album_user_after_insert(); Type: FUNCTION; Schema: public; Owner: postgres 218 -- 219 220 -- CREATE FUNCTION public.album_user_after_insert() RETURNS trigger 221 -- LANGUAGE plpgsql 222 -- AS $$ 223 -- BEGIN 224 -- UPDATE album SET "updatedAt" = clock_timestamp(), "updateId" = immich_uuid_v7(clock_timestamp()) 225 -- WHERE "id" IN (SELECT "albumId" FROM inserted_rows) 226 -- AND NOT EXISTS (SELECT FROM inserted_rows WHERE role = 'owner'); 227 -- RETURN NULL; 228 -- END 229 -- $$; 230 231 232 -- ALTER FUNCTION public.album_user_after_insert() OWNER TO postgres; 233 234 -- 235 -- Name: album_user_delete(); Type: FUNCTION; Schema: public; Owner: postgres 236 -- 237 238 -- CREATE FUNCTION public.album_user_delete() RETURNS trigger 239 -- LANGUAGE plpgsql 240 -- AS $$ 241 -- BEGIN 242 -- DELETE FROM "album" 243 -- WHERE "album"."id" = OLD."albumId" 244 -- AND NOT EXISTS (SELECT "albumId" FROM "album_user" WHERE "album_user"."albumId" = "album"."id" AND "album_user"."role" = 'owner'); 245 246 -- RETURN NULL; 247 -- END 248 -- $$; 249 250 251 -- ALTER FUNCTION public.album_user_delete() OWNER TO postgres; 252 253 -- 254 -- Name: album_user_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 255 -- 256 257 -- CREATE FUNCTION public.album_user_delete_audit() RETURNS trigger 258 -- LANGUAGE plpgsql 259 -- AS $$ 260 -- BEGIN 261 -- INSERT INTO album_audit ("albumId", "userId") 262 -- SELECT "albumId", "userId" 263 -- FROM OLD; 264 265 -- IF pg_trigger_depth() = 1 THEN 266 -- INSERT INTO album_user_audit ("albumId", "userId") 267 -- SELECT "albumId", "userId" 268 -- FROM OLD; 269 -- END IF; 270 271 -- RETURN NULL; 272 -- END 273 -- $$; 274 275 276 -- ALTER FUNCTION public.album_user_delete_audit() OWNER TO postgres; 277 278 -- 279 -- Name: asset_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 280 -- 281 282 -- CREATE FUNCTION public.asset_delete_audit() RETURNS trigger 283 -- LANGUAGE plpgsql 284 -- AS $$ 285 -- BEGIN 286 -- INSERT INTO asset_audit ("assetId", "ownerId") 287 -- SELECT "id", "ownerId" 288 -- FROM OLD; 289 -- RETURN NULL; 290 -- END 291 -- $$; 292 293 294 -- ALTER FUNCTION public.asset_delete_audit() OWNER TO postgres; 295 296 -- 297 -- Name: asset_edit_audit(); Type: FUNCTION; Schema: public; Owner: postgres 298 -- 299 300 -- CREATE FUNCTION public.asset_edit_audit() RETURNS trigger 301 -- LANGUAGE plpgsql 302 -- AS $$ 303 -- BEGIN 304 -- INSERT INTO asset_edit_audit ("editId", "assetId") 305 -- SELECT "id", "assetId" 306 -- FROM OLD; 307 -- RETURN NULL; 308 -- END 309 -- $$; 310 311 312 -- ALTER FUNCTION public.asset_edit_audit() OWNER TO postgres; 313 314 -- 315 -- Name: asset_edit_delete(); Type: FUNCTION; Schema: public; Owner: postgres 316 -- 317 318 -- CREATE FUNCTION public.asset_edit_delete() RETURNS trigger 319 -- LANGUAGE plpgsql 320 -- AS $$ 321 -- BEGIN 322 -- UPDATE asset 323 -- SET "isEdited" = false 324 -- FROM deleted_edit 325 -- WHERE asset.id = deleted_edit."assetId" AND asset."isEdited" 326 -- AND NOT EXISTS (SELECT FROM asset_edit edit WHERE edit."assetId" = asset.id); 327 -- RETURN NULL; 328 -- END 329 -- $$; 330 331 332 -- ALTER FUNCTION public.asset_edit_delete() OWNER TO postgres; 333 334 -- 335 -- Name: asset_edit_insert(); Type: FUNCTION; Schema: public; Owner: postgres 336 -- 337 338 -- CREATE FUNCTION public.asset_edit_insert() RETURNS trigger 339 -- LANGUAGE plpgsql 340 -- AS $$ 341 -- BEGIN 342 -- UPDATE asset 343 -- SET "isEdited" = true 344 -- FROM inserted_edit 345 -- WHERE asset.id = inserted_edit."assetId" AND NOT asset."isEdited"; 346 -- RETURN NULL; 347 -- END 348 -- $$; 349 350 351 -- ALTER FUNCTION public.asset_edit_insert() OWNER TO postgres; 352 353 -- 354 -- Name: asset_face_audit(); Type: FUNCTION; Schema: public; Owner: postgres 355 -- 356 357 -- CREATE FUNCTION public.asset_face_audit() RETURNS trigger 358 -- LANGUAGE plpgsql 359 -- AS $$ 360 -- BEGIN 361 -- INSERT INTO asset_face_audit ("assetFaceId", "assetId") 362 -- SELECT "id", "assetId" 363 -- FROM OLD; 364 -- RETURN NULL; 365 -- END 366 -- $$; 367 368 369 -- ALTER FUNCTION public.asset_face_audit() OWNER TO postgres; 370 371 -- 372 -- Name: asset_metadata_audit(); Type: FUNCTION; Schema: public; Owner: postgres 373 -- 374 375 -- CREATE FUNCTION public.asset_metadata_audit() RETURNS trigger 376 -- LANGUAGE plpgsql 377 -- AS $$ 378 -- BEGIN 379 -- INSERT INTO asset_metadata_audit ("assetId", "key") 380 -- SELECT "assetId", "key" 381 -- FROM OLD; 382 -- RETURN NULL; 383 -- END 384 -- $$; 385 386 387 -- ALTER FUNCTION public.asset_metadata_audit() OWNER TO postgres; 388 389 -- 390 -- Name: asset_ocr_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 391 -- 392 393 -- CREATE FUNCTION public.asset_ocr_delete_audit() RETURNS trigger 394 -- LANGUAGE plpgsql 395 -- AS $$ 396 -- BEGIN 397 -- INSERT INTO asset_ocr_audit ("assetId") 398 -- SELECT "assetId" 399 -- FROM OLD; 400 -- RETURN NULL; 401 -- END 402 -- $$; 403 404 405 -- ALTER FUNCTION public.asset_ocr_delete_audit() OWNER TO postgres; 406 407 -- 408 -- Name: f_concat_ws(text, text[]); Type: FUNCTION; Schema: public; Owner: postgres 409 -- 410 411 -- CREATE FUNCTION public.f_concat_ws(text, text[]) RETURNS text 412 -- LANGUAGE sql IMMUTABLE PARALLEL SAFE 413 -- AS $_$SELECT array_to_string($2, $1)$_$; 414 415 416 -- ALTER FUNCTION public.f_concat_ws(text, text[]) OWNER TO postgres; 417 418 -- 419 -- Name: f_unaccent(text); Type: FUNCTION; Schema: public; Owner: postgres 420 -- 421 422 -- CREATE FUNCTION public.f_unaccent(text) RETURNS text 423 -- LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE 424 -- RETURN public.unaccent('public.unaccent'::regdictionary, $1); 425 426 427 -- ALTER FUNCTION public.f_unaccent(text) OWNER TO postgres; 428 429 -- 430 -- Name: immich_uuid_v7(timestamp with time zone); Type: FUNCTION; Schema: public; Owner: postgres 431 -- 432 433 -- CREATE FUNCTION public.immich_uuid_v7(p_timestamp timestamp with time zone DEFAULT clock_timestamp()) RETURNS uuid 434 -- LANGUAGE sql 435 -- AS $$ 436 -- select encode( 437 -- set_bit( 438 -- set_bit( 439 -- overlay(uuid_send(gen_random_uuid()) 440 -- placing substring(int8send(floor(extract(epoch from p_timestamp) * 1000)::bigint) from 3) 441 -- from 1 for 6 442 -- ), 443 -- 52, 1 444 -- ), 445 -- 53, 1 446 -- ), 447 -- 'hex')::uuid; 448 -- $$; 449 450 451 -- ALTER FUNCTION public.immich_uuid_v7(p_timestamp timestamp with time zone) OWNER TO postgres; 452 453 -- 454 -- Name: ll_to_earth_public(double precision, double precision); Type: FUNCTION; Schema: public; Owner: postgres 455 -- 456 457 -- CREATE FUNCTION public.ll_to_earth_public(latitude double precision, longitude double precision) RETURNS public.earth 458 -- LANGUAGE sql IMMUTABLE STRICT PARALLEL SAFE 459 -- AS $$ 460 -- SELECT public.cube(public.cube(public.cube(public.earth()*cos(radians(latitude))*cos(radians(longitude))),public.earth()*cos(radians(latitude))*sin(radians(longitude))),public.earth()*sin(radians(latitude)))::public.earth 461 -- $$; 462 463 464 -- ALTER FUNCTION public.ll_to_earth_public(latitude double precision, longitude double precision) OWNER TO postgres; 465 466 -- 467 -- Name: memory_asset_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 468 -- 469 470 -- CREATE FUNCTION public.memory_asset_delete_audit() RETURNS trigger 471 -- LANGUAGE plpgsql 472 -- AS $$ 473 -- BEGIN 474 -- INSERT INTO memory_asset_audit ("memoryId", "assetId") 475 -- SELECT "memoriesId", "assetId" FROM OLD 476 -- WHERE "memoriesId" IN (SELECT "id" FROM memory WHERE "id" IN (SELECT "memoriesId" FROM OLD)); 477 -- RETURN NULL; 478 -- END 479 -- $$; 480 481 482 -- ALTER FUNCTION public.memory_asset_delete_audit() OWNER TO postgres; 483 484 -- 485 -- Name: memory_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 486 -- 487 488 -- CREATE FUNCTION public.memory_delete_audit() RETURNS trigger 489 -- LANGUAGE plpgsql 490 -- AS $$ 491 -- BEGIN 492 -- INSERT INTO memory_audit ("memoryId", "userId") 493 -- SELECT "id", "ownerId" 494 -- FROM OLD; 495 -- RETURN NULL; 496 -- END 497 -- $$; 498 499 500 -- ALTER FUNCTION public.memory_delete_audit() OWNER TO postgres; 501 502 -- 503 -- Name: partner_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 504 -- 505 506 -- CREATE FUNCTION public.partner_delete_audit() RETURNS trigger 507 -- LANGUAGE plpgsql 508 -- AS $$ 509 -- BEGIN 510 -- INSERT INTO partner_audit ("sharedById", "sharedWithId") 511 -- SELECT "sharedById", "sharedWithId" 512 -- FROM OLD; 513 -- RETURN NULL; 514 -- END 515 -- $$; 516 517 518 -- ALTER FUNCTION public.partner_delete_audit() OWNER TO postgres; 519 520 -- 521 -- Name: person_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 522 -- 523 524 -- CREATE FUNCTION public.person_delete_audit() RETURNS trigger 525 -- LANGUAGE plpgsql 526 -- AS $$ 527 -- BEGIN 528 -- INSERT INTO person_audit ("personGroupId", "ownerId") 529 -- SELECT "personGroupId", "ownerId" 530 -- FROM OLD; 531 -- RETURN NULL; 532 -- END 533 -- $$; 534 535 536 -- ALTER FUNCTION public.person_delete_audit() OWNER TO postgres; 537 538 -- 539 -- Name: person_group_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 540 -- 541 542 -- CREATE FUNCTION public.person_group_delete_audit() RETURNS trigger 543 -- LANGUAGE plpgsql 544 -- AS $$ 545 -- BEGIN 546 -- INSERT INTO person_group_audit ("personGroupId", "clusterGroupId") 547 -- SELECT "id", "clusterGroupId" 548 -- FROM OLD; 549 -- RETURN NULL; 550 -- END 551 -- $$; 552 553 554 -- ALTER FUNCTION public.person_group_delete_audit() OWNER TO postgres; 555 556 -- 557 -- Name: stack_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 558 -- 559 560 -- CREATE FUNCTION public.stack_delete_audit() RETURNS trigger 561 -- LANGUAGE plpgsql 562 -- AS $$ 563 -- BEGIN 564 -- INSERT INTO stack_audit ("stackId", "userId") 565 -- SELECT "id", "ownerId" 566 -- FROM OLD; 567 -- RETURN NULL; 568 -- END 569 -- $$; 570 571 572 -- ALTER FUNCTION public.stack_delete_audit() OWNER TO postgres; 573 574 -- 575 -- Name: updated_at(); Type: FUNCTION; Schema: public; Owner: postgres 576 -- 577 578 -- CREATE FUNCTION public.updated_at() RETURNS trigger 579 -- LANGUAGE plpgsql 580 -- AS $$ 581 -- DECLARE 582 -- clock_timestamp TIMESTAMP := clock_timestamp(); 583 -- BEGIN 584 -- new."updatedAt" = clock_timestamp; 585 -- new."updateId" = immich_uuid_v7(clock_timestamp); 586 -- return new; 587 -- END; 588 -- $$; 589 590 591 -- ALTER FUNCTION public.updated_at() OWNER TO postgres; 592 593 -- 594 -- Name: user_delete_audit(); Type: FUNCTION; Schema: public; Owner: postgres 595 -- 596 597 -- CREATE FUNCTION public.user_delete_audit() RETURNS trigger 598 -- LANGUAGE plpgsql 599 -- AS $$ 600 -- BEGIN 601 -- INSERT INTO user_audit ("userId") 602 -- SELECT "id" 603 -- FROM OLD; 604 -- RETURN NULL; 605 -- END 606 -- $$; 607 608 609 -- ALTER FUNCTION public.user_delete_audit() OWNER TO postgres; 610 611 -- 612 -- Name: user_metadata_audit(); Type: FUNCTION; Schema: public; Owner: postgres 613 -- 614 615 -- CREATE FUNCTION public.user_metadata_audit() RETURNS trigger 616 -- LANGUAGE plpgsql 617 -- AS $$ 618 -- BEGIN 619 -- INSERT INTO user_metadata_audit ("userId", "key") 620 -- SELECT "userId", "key" 621 -- FROM OLD; 622 -- RETURN NULL; 623 -- END 624 -- $$; 625 626 627 -- ALTER FUNCTION public.user_metadata_audit() OWNER TO postgres; 628 629 -- SET default_tablespace = ''; 630 631 -- SET default_table_access_method = heap; 632 633 -- 634 -- Name: activity; Type: TABLE; Schema: public; Owner: postgres 635 -- 636 637 CREATE TABLE activity ( 638 id uuid NOT NULL, -- DEFAULT uuid_generate_v4() 639 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 640 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 641 "albumId" uuid NOT NULL, 642 "userId" uuid NOT NULL, 643 "assetId" uuid, 644 comment text, 645 "isLiked" boolean DEFAULT false NOT NULL, 646 "updateId" uuid NOT NULL, -- DEFAULT immich_uuid_v7() 647 CONSTRAINT activity_like_check CHECK ((((comment IS NULL) AND ("isLiked" = true)) OR ((comment IS NOT NULL) AND ("isLiked" = false)))) 648 ); 649 650 651 -- ALTER TABLE public.activity OWNER TO postgres; 652 653 -- 654 -- Name: album; Type: TABLE; Schema: public; Owner: postgres 655 -- 656 657 CREATE TABLE album ( 658 id uuid NOT NULL, --DEFAULT public.uuid_generate_v4() 659 "albumName" text DEFAULT 'Untitled Album' NOT NULL, 660 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 661 "albumThumbnailAssetId" uuid, 662 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 663 description text, 664 "deletedAt" timestamp with time zone, 665 "isActivityEnabled" boolean DEFAULT true NOT NULL, 666 "order" text DEFAULT 'desc' NOT NULL, 667 "updateId" uuid NOT NULL -- DEFAULT public.immich_uuid_v7() 668 ); 669 670 671 -- ALTER TABLE public.album OWNER TO postgres; 672 673 -- 674 -- Name: COLUMN album."albumThumbnailAssetId"; Type: COMMENT; Schema: public; Owner: postgres 675 -- 676 677 -- COMMENT ON COLUMN album."albumThumbnailAssetId" IS 'Asset ID to be used as thumbnail'; 678 679 680 -- 681 -- Name: album_asset; Type: TABLE; Schema: public; Owner: postgres 682 -- 683 684 CREATE TABLE album_asset ( 685 "albumId" uuid NOT NULL, 686 "assetId" uuid NOT NULL, 687 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 688 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 689 "updateId" uuid NOT NULL -- DEFAULT public.immich_uuid_v7() 690 ); 691 692 693 -- ALTER TABLE public.album_asset OWNER TO postgres; 694 695 -- 696 -- Name: album_asset_audit; Type: TABLE; Schema: public; Owner: postgres 697 -- 698 699 CREATE TABLE album_asset_audit ( 700 id uuid NOT NULL, -- DEFAULT public.immich_uuid_v7() 701 "albumId" uuid NOT NULL, 702 "assetId" uuid NOT NULL, 703 "deletedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL 704 ); 705 706 707 -- ALTER TABLE public.album_asset_audit OWNER TO postgres; 708 709 -- 710 -- Name: album_audit; Type: TABLE; Schema: public; Owner: postgres 711 -- 712 713 CREATE TABLE album_audit ( 714 id uuid NOT NULL, -- DEFAULT immich_uuid_v7() 715 "albumId" uuid NOT NULL, 716 "userId" uuid NOT NULL, 717 "deletedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL 718 ); 719 720 721 -- ALTER TABLE public.album_audit OWNER TO postgres; 722 723 -- 724 -- Name: album_user; Type: TABLE; Schema: public; Owner: postgres 725 -- 726 727 CREATE TABLE album_user ( 728 "albumId" uuid NOT NULL, 729 "userId" uuid NOT NULL, 730 role text DEFAULT 'editor' NOT NULL, 731 "updateId" uuid NOT NULL, -- DEFAULT public.immich_uuid_v7() 732 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 733 "createId" uuid NOT NULL, -- DEFAULT public.immich_uuid_v7() 734 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 735 CONSTRAINT role_check CHECK (role = "editor" OR role = "owner" OR role = "viewer") 736 ); 737 738 739 -- ALTER TABLE public.album_user OWNER TO postgres; 740 741 -- 742 -- Name: album_user_audit; Type: TABLE; Schema: public; Owner: postgres 743 -- 744 745 CREATE TABLE album_user_audit ( 746 id uuid NOT NULL, -- DEFAULT public.immich_uuid_v7() 747 "albumId" uuid NOT NULL, 748 "userId" uuid NOT NULL, 749 "deletedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL 750 ); 751 752 753 -- ALTER TABLE public.album_user_audit OWNER TO postgres; 754 755 -- 756 -- Name: api_key; Type: TABLE; Schema: public; Owner: postgres 757 -- 758 759 CREATE TABLE api_key ( 760 name text NOT NULL, 761 key bytea NOT NULL, 762 "userId" uuid NOT NULL, 763 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 764 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 765 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 766 permissions character varying[] NOT NULL, 767 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 768 ); 769 770 771 ALTER TABLE public.api_key OWNER TO postgres; 772 773 -- 774 -- Name: asset; Type: TABLE; Schema: public; Owner: postgres 775 -- 776 777 CREATE TABLE public.asset ( 778 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 779 "ownerId" uuid NOT NULL, 780 type character varying NOT NULL, 781 "originalPath" character varying NOT NULL, 782 "fileCreatedAt" timestamp with time zone NOT NULL, 783 "fileModifiedAt" timestamp with time zone NOT NULL, 784 "isFavorite" boolean DEFAULT false NOT NULL, 785 duration integer, 786 checksum bytea NOT NULL, 787 "livePhotoVideoId" uuid, 788 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 789 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 790 "originalFileName" character varying NOT NULL, 791 thumbhash bytea, 792 "isOffline" boolean DEFAULT false NOT NULL, 793 "libraryId" uuid, 794 "isExternal" boolean DEFAULT false NOT NULL, 795 "deletedAt" timestamp with time zone, 796 "localDateTime" timestamp with time zone NOT NULL, 797 "stackId" uuid, 798 "duplicateId" uuid, 799 status public.assets_status_enum DEFAULT 'active'::public.assets_status_enum NOT NULL, 800 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 801 visibility public.asset_visibility_enum DEFAULT 'timeline'::public.asset_visibility_enum NOT NULL, 802 width integer, 803 height integer, 804 "isEdited" boolean DEFAULT false NOT NULL, 805 "checksumAlgorithm" public.asset_checksum_algorithm_enum NOT NULL 806 ); 807 808 809 ALTER TABLE public.asset OWNER TO postgres; 810 811 -- 812 -- Name: asset_audio; Type: TABLE; Schema: public; Owner: postgres 813 -- 814 815 CREATE TABLE public.asset_audio ( 816 "assetId" uuid NOT NULL, 817 bitrate integer NOT NULL, 818 index smallint NOT NULL, 819 profile smallint, 820 "codecName" text NOT NULL 821 ); 822 823 824 ALTER TABLE public.asset_audio OWNER TO postgres; 825 826 -- 827 -- Name: asset_audit; Type: TABLE; Schema: public; Owner: postgres 828 -- 829 830 CREATE TABLE public.asset_audit ( 831 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 832 "assetId" uuid NOT NULL, 833 "ownerId" uuid NOT NULL, 834 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 835 ); 836 837 838 ALTER TABLE public.asset_audit OWNER TO postgres; 839 840 -- 841 -- Name: asset_edit; Type: TABLE; Schema: public; Owner: postgres 842 -- 843 844 CREATE TABLE public.asset_edit ( 845 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 846 "assetId" uuid NOT NULL, 847 action character varying NOT NULL, 848 parameters jsonb NOT NULL, 849 sequence integer NOT NULL, 850 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 851 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 852 ); 853 854 855 ALTER TABLE public.asset_edit OWNER TO postgres; 856 857 -- 858 -- Name: asset_edit_audit; Type: TABLE; Schema: public; Owner: postgres 859 -- 860 861 CREATE TABLE public.asset_edit_audit ( 862 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 863 "editId" uuid NOT NULL, 864 "assetId" uuid NOT NULL, 865 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 866 ); 867 868 869 ALTER TABLE public.asset_edit_audit OWNER TO postgres; 870 871 -- 872 -- Name: asset_exif; Type: TABLE; Schema: public; Owner: postgres 873 -- 874 875 CREATE TABLE public.asset_exif ( 876 "assetId" uuid NOT NULL, 877 make character varying, 878 model character varying, 879 "exifImageWidth" integer, 880 "exifImageHeight" integer, 881 "fileSizeInByte" bigint, 882 orientation character varying, 883 "dateTimeOriginal" timestamp with time zone, 884 "modifyDate" timestamp with time zone, 885 "lensModel" character varying, 886 "fNumber" double precision, 887 "focalLength" double precision, 888 iso integer, 889 latitude double precision, 890 longitude double precision, 891 city character varying, 892 state character varying, 893 country character varying, 894 description text DEFAULT ''::text NOT NULL, 895 fps double precision, 896 "exposureTime" character varying, 897 "livePhotoCID" character varying, 898 "timeZone" character varying, 899 "projectionType" character varying, 900 "profileDescription" character varying, 901 colorspace character varying, 902 "bitsPerSample" integer, 903 "autoStackId" character varying, 904 rating integer, 905 "updatedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL, 906 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 907 "lockedProperties" character varying[], 908 tags character varying[] 909 ); 910 911 912 ALTER TABLE public.asset_exif OWNER TO postgres; 913 914 -- 915 -- Name: asset_face; Type: TABLE; Schema: public; Owner: postgres 916 -- 917 918 CREATE TABLE public.asset_face ( 919 "assetId" uuid NOT NULL, 920 "personGroupId" uuid, 921 "imageWidth" integer DEFAULT 0 NOT NULL, 922 "imageHeight" integer DEFAULT 0 NOT NULL, 923 "boundingBoxX1" integer DEFAULT 0 NOT NULL, 924 "boundingBoxY1" integer DEFAULT 0 NOT NULL, 925 "boundingBoxX2" integer DEFAULT 0 NOT NULL, 926 "boundingBoxY2" integer DEFAULT 0 NOT NULL, 927 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 928 "sourceType" public.sourcetype DEFAULT 'machine-learning'::public.sourcetype NOT NULL, 929 "deletedAt" timestamp with time zone, 930 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 931 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 932 "isVisible" boolean DEFAULT true NOT NULL 933 ); 934 935 936 ALTER TABLE public.asset_face OWNER TO postgres; 937 938 -- 939 -- Name: asset_face_audit; Type: TABLE; Schema: public; Owner: postgres 940 -- 941 942 CREATE TABLE public.asset_face_audit ( 943 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 944 "assetFaceId" uuid NOT NULL, 945 "assetId" uuid NOT NULL, 946 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 947 ); 948 949 950 ALTER TABLE public.asset_face_audit OWNER TO postgres; 951 952 -- 953 -- Name: asset_file; Type: TABLE; Schema: public; Owner: postgres 954 -- 955 956 CREATE TABLE public.asset_file ( 957 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 958 "assetId" uuid NOT NULL, 959 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 960 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 961 type character varying NOT NULL, 962 path character varying NOT NULL, 963 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 964 "isEdited" boolean DEFAULT false NOT NULL, 965 "isProgressive" boolean DEFAULT false NOT NULL, 966 "isTransparent" boolean DEFAULT false NOT NULL 967 ); 968 969 970 ALTER TABLE public.asset_file OWNER TO postgres; 971 972 -- 973 -- Name: asset_job_status; Type: TABLE; Schema: public; Owner: postgres 974 -- 975 976 CREATE TABLE public.asset_job_status ( 977 "assetId" uuid NOT NULL, 978 "facesRecognizedAt" timestamp with time zone, 979 "metadataExtractedAt" timestamp with time zone, 980 "duplicatesDetectedAt" timestamp with time zone, 981 "ocrAt" timestamp with time zone 982 ); 983 984 985 ALTER TABLE public.asset_job_status OWNER TO postgres; 986 987 -- 988 -- Name: asset_keyframe; Type: TABLE; Schema: public; Owner: postgres 989 -- 990 991 CREATE TABLE public.asset_keyframe ( 992 "assetId" uuid NOT NULL, 993 pts integer[] NOT NULL, 994 "accDuration" integer[] NOT NULL, 995 "ownDuration" integer[] NOT NULL, 996 "totalDuration" integer NOT NULL, 997 "packetCount" integer NOT NULL, 998 "outputFrames" integer NOT NULL 999 ); 1000 1001 1002 ALTER TABLE public.asset_keyframe OWNER TO postgres; 1003 1004 -- 1005 -- Name: asset_metadata; Type: TABLE; Schema: public; Owner: postgres 1006 -- 1007 1008 CREATE TABLE public.asset_metadata ( 1009 "assetId" uuid NOT NULL, 1010 key character varying NOT NULL, 1011 value jsonb NOT NULL, 1012 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1013 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL 1014 ); 1015 1016 1017 ALTER TABLE public.asset_metadata OWNER TO postgres; 1018 1019 -- 1020 -- Name: asset_metadata_audit; Type: TABLE; Schema: public; Owner: postgres 1021 -- 1022 1023 CREATE TABLE public.asset_metadata_audit ( 1024 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1025 "assetId" uuid NOT NULL, 1026 key character varying NOT NULL, 1027 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 1028 ); 1029 1030 1031 ALTER TABLE public.asset_metadata_audit OWNER TO postgres; 1032 1033 -- 1034 -- Name: asset_ocr; Type: TABLE; Schema: public; Owner: postgres 1035 -- 1036 1037 CREATE TABLE public.asset_ocr ( 1038 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1039 "assetId" uuid NOT NULL, 1040 x1 real NOT NULL, 1041 y1 real NOT NULL, 1042 x2 real NOT NULL, 1043 y2 real NOT NULL, 1044 x3 real NOT NULL, 1045 y3 real NOT NULL, 1046 x4 real NOT NULL, 1047 y4 real NOT NULL, 1048 "boxScore" real NOT NULL, 1049 "textScore" real NOT NULL, 1050 text text NOT NULL, 1051 "isVisible" boolean DEFAULT true NOT NULL, 1052 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1053 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL 1054 ); 1055 1056 1057 ALTER TABLE public.asset_ocr OWNER TO postgres; 1058 1059 -- 1060 -- Name: asset_ocr_audit; Type: TABLE; Schema: public; Owner: postgres 1061 -- 1062 1063 CREATE TABLE public.asset_ocr_audit ( 1064 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1065 "assetId" uuid NOT NULL, 1066 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 1067 ); 1068 1069 1070 ALTER TABLE public.asset_ocr_audit OWNER TO postgres; 1071 1072 -- 1073 -- Name: asset_video; Type: TABLE; Schema: public; Owner: postgres 1074 -- 1075 1076 CREATE TABLE public.asset_video ( 1077 "assetId" uuid NOT NULL, 1078 bitrate integer NOT NULL, 1079 "frameCount" integer NOT NULL, 1080 "timeBase" integer NOT NULL, 1081 index smallint NOT NULL, 1082 profile smallint, 1083 level smallint, 1084 "colorPrimaries" smallint NOT NULL, 1085 "colorTransfer" smallint NOT NULL, 1086 "colorMatrix" smallint NOT NULL, 1087 "dvProfile" smallint, 1088 "dvLevel" smallint, 1089 "dvBlSignalCompatibilityId" smallint, 1090 "codecName" text NOT NULL, 1091 "formatName" text NOT NULL, 1092 "formatLongName" text NOT NULL, 1093 "pixelFormat" text NOT NULL 1094 ); 1095 1096 1097 ALTER TABLE public.asset_video OWNER TO postgres; 1098 1099 -- 1100 -- Name: cluster_group; Type: TABLE; Schema: public; Owner: postgres 1101 -- 1102 1103 CREATE TABLE public.cluster_group ( 1104 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1105 name character varying, 1106 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1107 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1108 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 1109 ); 1110 1111 1112 ALTER TABLE public.cluster_group OWNER TO postgres; 1113 1114 -- 1115 -- Name: cluster_group_request; Type: TABLE; Schema: public; Owner: postgres 1116 -- 1117 1118 CREATE TABLE public.cluster_group_request ( 1119 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1120 "clusterGroupId" uuid NOT NULL, 1121 "userId" uuid NOT NULL, 1122 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL 1123 ); 1124 1125 1126 ALTER TABLE public.cluster_group_request OWNER TO postgres; 1127 1128 -- 1129 -- Name: face_search; Type: TABLE; Schema: public; Owner: postgres 1130 -- 1131 1132 CREATE TABLE public.face_search ( 1133 "faceId" uuid NOT NULL, 1134 embedding public.vector(512) NOT NULL 1135 ); 1136 1137 1138 ALTER TABLE public.face_search OWNER TO postgres; 1139 1140 -- 1141 -- Name: geodata_places; Type: TABLE; Schema: public; Owner: postgres 1142 -- 1143 1144 CREATE TABLE public.geodata_places ( 1145 id integer NOT NULL, 1146 name character varying(200) NOT NULL, 1147 longitude double precision NOT NULL, 1148 latitude double precision NOT NULL, 1149 "countryCode" character(2) NOT NULL, 1150 "admin1Code" character varying(20), 1151 "admin2Code" character varying(80), 1152 "modificationDate" date NOT NULL, 1153 "admin1Name" character varying, 1154 "admin2Name" character varying, 1155 "alternateNames" character varying 1156 ); 1157 1158 1159 ALTER TABLE public.geodata_places OWNER TO postgres; 1160 1161 -- 1162 -- Name: integrity_report; Type: TABLE; Schema: public; Owner: postgres 1163 -- 1164 1165 CREATE TABLE public.integrity_report ( 1166 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1167 type character varying NOT NULL, 1168 path character varying NOT NULL, 1169 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1170 "assetId" uuid, 1171 "fileAssetId" uuid 1172 ); 1173 1174 1175 ALTER TABLE public.integrity_report OWNER TO postgres; 1176 1177 -- 1178 -- Name: kysely_migrations; Type: TABLE; Schema: public; Owner: postgres 1179 -- 1180 1181 CREATE TABLE public.kysely_migrations ( 1182 name character varying(255) NOT NULL, 1183 "timestamp" character varying(255) NOT NULL 1184 ); 1185 1186 1187 ALTER TABLE public.kysely_migrations OWNER TO postgres; 1188 1189 -- 1190 -- Name: kysely_migrations_lock; Type: TABLE; Schema: public; Owner: postgres 1191 -- 1192 1193 CREATE TABLE public.kysely_migrations_lock ( 1194 id character varying(255) NOT NULL, 1195 is_locked integer DEFAULT 0 NOT NULL 1196 ); 1197 1198 1199 ALTER TABLE public.kysely_migrations_lock OWNER TO postgres; 1200 1201 -- 1202 -- Name: library; Type: TABLE; Schema: public; Owner: postgres 1203 -- 1204 1205 CREATE TABLE public.library ( 1206 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1207 name character varying NOT NULL, 1208 "ownerId" uuid NOT NULL, 1209 "importPaths" text[] NOT NULL, 1210 "exclusionPatterns" text[] NOT NULL, 1211 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1212 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1213 "deletedAt" timestamp with time zone, 1214 "refreshedAt" timestamp with time zone, 1215 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 1216 ); 1217 1218 1219 ALTER TABLE public.library OWNER TO postgres; 1220 1221 -- 1222 -- Name: memory; Type: TABLE; Schema: public; Owner: postgres 1223 -- 1224 1225 CREATE TABLE public.memory ( 1226 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1227 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1228 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1229 "deletedAt" timestamp with time zone, 1230 "ownerId" uuid NOT NULL, 1231 type character varying NOT NULL, 1232 data jsonb NOT NULL, 1233 "isSaved" boolean DEFAULT false NOT NULL, 1234 "memoryAt" timestamp with time zone NOT NULL, 1235 "seenAt" timestamp with time zone, 1236 "showAt" timestamp with time zone, 1237 "hideAt" timestamp with time zone, 1238 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 1239 ); 1240 1241 1242 ALTER TABLE public.memory OWNER TO postgres; 1243 1244 -- 1245 -- Name: memory_asset; Type: TABLE; Schema: public; Owner: postgres 1246 -- 1247 1248 CREATE TABLE public.memory_asset ( 1249 "memoriesId" uuid NOT NULL, 1250 "assetId" uuid NOT NULL, 1251 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1252 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1253 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 1254 ); 1255 1256 1257 ALTER TABLE public.memory_asset OWNER TO postgres; 1258 1259 -- 1260 -- Name: memory_asset_audit; Type: TABLE; Schema: public; Owner: postgres 1261 -- 1262 1263 CREATE TABLE public.memory_asset_audit ( 1264 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1265 "memoryId" uuid NOT NULL, 1266 "assetId" uuid NOT NULL, 1267 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 1268 ); 1269 1270 1271 ALTER TABLE public.memory_asset_audit OWNER TO postgres; 1272 1273 -- 1274 -- Name: memory_audit; Type: TABLE; Schema: public; Owner: postgres 1275 -- 1276 1277 CREATE TABLE public.memory_audit ( 1278 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1279 "memoryId" uuid NOT NULL, 1280 "userId" uuid NOT NULL, 1281 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 1282 ); 1283 1284 1285 ALTER TABLE public.memory_audit OWNER TO postgres; 1286 1287 -- 1288 -- Name: migration_overrides; Type: TABLE; Schema: public; Owner: postgres 1289 -- 1290 1291 CREATE TABLE public.migration_overrides ( 1292 name character varying NOT NULL, 1293 value jsonb NOT NULL 1294 ); 1295 1296 1297 ALTER TABLE public.migration_overrides OWNER TO postgres; 1298 1299 -- 1300 -- Name: move_history; Type: TABLE; Schema: public; Owner: postgres 1301 -- 1302 1303 CREATE TABLE public.move_history ( 1304 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1305 "entityId" uuid NOT NULL, 1306 "pathType" character varying NOT NULL, 1307 "oldPath" character varying NOT NULL, 1308 "newPath" character varying NOT NULL 1309 ); 1310 1311 1312 ALTER TABLE public.move_history OWNER TO postgres; 1313 1314 -- 1315 -- Name: naturalearth_countries; Type: TABLE; Schema: public; Owner: postgres 1316 -- 1317 1318 CREATE TABLE public.naturalearth_countries ( 1319 id integer NOT NULL, 1320 admin character varying(50) NOT NULL, 1321 admin_a3 character varying(3) NOT NULL, 1322 type character varying(50) NOT NULL, 1323 coordinates polygon NOT NULL 1324 ); 1325 1326 1327 ALTER TABLE public.naturalearth_countries OWNER TO postgres; 1328 1329 -- 1330 -- Name: naturalearth_countries_tmp_id_seq; Type: SEQUENCE; Schema: public; Owner: postgres 1331 -- 1332 1333 ALTER TABLE public.naturalearth_countries ALTER COLUMN id ADD GENERATED ALWAYS AS IDENTITY ( 1334 SEQUENCE NAME public.naturalearth_countries_tmp_id_seq 1335 START WITH 1 1336 INCREMENT BY 1 1337 NO MINVALUE 1338 MAXVALUE 2147483647 1339 CACHE 1 1340 ); 1341 1342 1343 -- 1344 -- Name: notification; Type: TABLE; Schema: public; Owner: postgres 1345 -- 1346 1347 CREATE TABLE public.notification ( 1348 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1349 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1350 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1351 "deletedAt" timestamp with time zone, 1352 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1353 "userId" uuid, 1354 level character varying DEFAULT 'info'::character varying NOT NULL, 1355 type character varying DEFAULT 'info'::character varying NOT NULL, 1356 data jsonb, 1357 title character varying NOT NULL, 1358 description text, 1359 "readAt" timestamp with time zone 1360 ); 1361 1362 1363 ALTER TABLE public.notification OWNER TO postgres; 1364 1365 -- 1366 -- Name: ocr_search; Type: TABLE; Schema: public; Owner: postgres 1367 -- 1368 1369 CREATE TABLE public.ocr_search ( 1370 "assetId" uuid NOT NULL, 1371 text text NOT NULL 1372 ); 1373 1374 1375 ALTER TABLE public.ocr_search OWNER TO postgres; 1376 1377 -- 1378 -- Name: partner; Type: TABLE; Schema: public; Owner: postgres 1379 -- 1380 1381 CREATE TABLE public.partner ( 1382 "sharedById" uuid NOT NULL, 1383 "sharedWithId" uuid NOT NULL, 1384 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1385 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1386 "inTimeline" boolean DEFAULT false NOT NULL, 1387 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1388 "createId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 1389 ); 1390 1391 1392 ALTER TABLE public.partner OWNER TO postgres; 1393 1394 -- 1395 -- Name: partner_audit; Type: TABLE; Schema: public; Owner: postgres 1396 -- 1397 1398 CREATE TABLE public.partner_audit ( 1399 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1400 "sharedById" uuid NOT NULL, 1401 "sharedWithId" uuid NOT NULL, 1402 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 1403 ); 1404 1405 1406 ALTER TABLE public.partner_audit OWNER TO postgres; 1407 1408 -- 1409 -- Name: person; Type: TABLE; Schema: public; Owner: postgres 1410 -- 1411 1412 CREATE TABLE public.person ( 1413 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1414 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1415 "ownerId" uuid NOT NULL, 1416 name character varying DEFAULT ''::character varying NOT NULL, 1417 "thumbnailPath" character varying DEFAULT ''::character varying NOT NULL, 1418 "isHidden" boolean DEFAULT false NOT NULL, 1419 "birthDate" date, 1420 "faceAssetId" uuid, 1421 "isFavorite" boolean DEFAULT false NOT NULL, 1422 color character varying, 1423 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1424 "personGroupId" uuid NOT NULL, 1425 CONSTRAINT "person_birthDate_chk" CHECK (("birthDate" <= CURRENT_DATE)) 1426 ); 1427 1428 1429 ALTER TABLE public.person OWNER TO postgres; 1430 1431 -- 1432 -- Name: person_audit; Type: TABLE; Schema: public; Owner: postgres 1433 -- 1434 1435 CREATE TABLE public.person_audit ( 1436 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1437 "ownerId" uuid NOT NULL, 1438 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL, 1439 "personGroupId" uuid NOT NULL 1440 ); 1441 1442 1443 ALTER TABLE public.person_audit OWNER TO postgres; 1444 1445 -- 1446 -- Name: person_group; Type: TABLE; Schema: public; Owner: postgres 1447 -- 1448 1449 CREATE TABLE public.person_group ( 1450 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1451 "clusterGroupId" uuid NOT NULL, 1452 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1453 "createId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1454 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1455 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 1456 ); 1457 1458 1459 ALTER TABLE public.person_group OWNER TO postgres; 1460 1461 -- 1462 -- Name: person_group_audit; Type: TABLE; Schema: public; Owner: postgres 1463 -- 1464 1465 CREATE TABLE public.person_group_audit ( 1466 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1467 "personGroupId" uuid NOT NULL, 1468 "clusterGroupId" uuid NOT NULL, 1469 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 1470 ); 1471 1472 1473 ALTER TABLE public.person_group_audit OWNER TO postgres; 1474 1475 -- 1476 -- Name: plugin; Type: TABLE; Schema: public; Owner: postgres 1477 -- 1478 1479 CREATE TABLE public.plugin ( 1480 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1481 enabled boolean DEFAULT true NOT NULL, 1482 name character varying NOT NULL, 1483 version character varying NOT NULL, 1484 title character varying NOT NULL, 1485 description character varying NOT NULL, 1486 author character varying NOT NULL, 1487 "wasmBytes" bytea NOT NULL, 1488 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1489 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1490 templates jsonb NOT NULL, 1491 sha256hash bytea NOT NULL 1492 ); 1493 1494 1495 ALTER TABLE public.plugin OWNER TO postgres; 1496 1497 -- 1498 -- Name: plugin_method; Type: TABLE; Schema: public; Owner: postgres 1499 -- 1500 1501 CREATE TABLE public.plugin_method ( 1502 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1503 "pluginId" uuid NOT NULL, 1504 name character varying NOT NULL, 1505 title character varying NOT NULL, 1506 description character varying NOT NULL, 1507 types character varying[] NOT NULL, 1508 "hostFunctions" boolean DEFAULT false NOT NULL, 1509 "uiHints" character varying[] DEFAULT '{}'::character varying[] NOT NULL, 1510 schema jsonb, 1511 "allowedHosts" character varying[] DEFAULT '{}'::character varying[] NOT NULL 1512 ); 1513 1514 1515 ALTER TABLE public.plugin_method OWNER TO postgres; 1516 1517 -- 1518 -- Name: session; Type: TABLE; Schema: public; Owner: postgres 1519 -- 1520 1521 CREATE TABLE public.session ( 1522 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1523 token bytea NOT NULL, 1524 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1525 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1526 "userId" uuid NOT NULL, 1527 "deviceType" character varying DEFAULT ''::character varying NOT NULL, 1528 "deviceOS" character varying DEFAULT ''::character varying NOT NULL, 1529 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1530 "pinExpiresAt" timestamp with time zone, 1531 "expiresAt" timestamp with time zone, 1532 "parentId" uuid, 1533 "isPendingSyncReset" boolean DEFAULT false NOT NULL, 1534 "appVersion" character varying, 1535 "oauthSid" character varying, 1536 "oauthBearerToken" character varying 1537 ); 1538 1539 1540 ALTER TABLE public.session OWNER TO postgres; 1541 1542 -- 1543 -- Name: session_sync_checkpoint; Type: TABLE; Schema: public; Owner: postgres 1544 -- 1545 1546 CREATE TABLE public.session_sync_checkpoint ( 1547 "sessionId" uuid NOT NULL, 1548 type character varying NOT NULL, 1549 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1550 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1551 ack character varying NOT NULL, 1552 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 1553 ); 1554 1555 1556 ALTER TABLE public.session_sync_checkpoint OWNER TO postgres; 1557 1558 -- 1559 -- Name: shared_link; Type: TABLE; Schema: public; Owner: postgres 1560 -- 1561 1562 CREATE TABLE public.shared_link ( 1563 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1564 description character varying, 1565 "userId" uuid NOT NULL, 1566 key bytea NOT NULL, 1567 type character varying NOT NULL, 1568 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1569 "expiresAt" timestamp with time zone, 1570 "allowUpload" boolean DEFAULT false NOT NULL, 1571 "albumId" uuid, 1572 "allowDownload" boolean DEFAULT true NOT NULL, 1573 "showExif" boolean DEFAULT true NOT NULL, 1574 password character varying, 1575 slug character varying 1576 ); 1577 1578 1579 ALTER TABLE public.shared_link OWNER TO postgres; 1580 1581 -- 1582 -- Name: shared_link_asset; Type: TABLE; Schema: public; Owner: postgres 1583 -- 1584 1585 CREATE TABLE public.shared_link_asset ( 1586 "assetId" uuid NOT NULL, 1587 "sharedLinkId" uuid NOT NULL 1588 ); 1589 1590 1591 ALTER TABLE public.shared_link_asset OWNER TO postgres; 1592 1593 -- 1594 -- Name: smart_search; Type: TABLE; Schema: public; Owner: postgres 1595 -- 1596 1597 CREATE TABLE public.smart_search ( 1598 "assetId" uuid NOT NULL, 1599 embedding public.vector(512) NOT NULL 1600 ); 1601 1602 1603 ALTER TABLE public.smart_search OWNER TO postgres; 1604 1605 -- 1606 -- Name: stack; Type: TABLE; Schema: public; Owner: postgres 1607 -- 1608 1609 CREATE TABLE public.stack ( 1610 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1611 "primaryAssetId" uuid NOT NULL, 1612 "ownerId" uuid NOT NULL, 1613 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1614 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1615 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 1616 ); 1617 1618 1619 ALTER TABLE public.stack OWNER TO postgres; 1620 1621 -- 1622 -- Name: stack_audit; Type: TABLE; Schema: public; Owner: postgres 1623 -- 1624 1625 CREATE TABLE public.stack_audit ( 1626 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1627 "stackId" uuid NOT NULL, 1628 "userId" uuid NOT NULL, 1629 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 1630 ); 1631 1632 1633 ALTER TABLE public.stack_audit OWNER TO postgres; 1634 1635 -- 1636 -- Name: system_metadata; Type: TABLE; Schema: public; Owner: postgres 1637 -- 1638 1639 CREATE TABLE public.system_metadata ( 1640 key character varying NOT NULL, 1641 value jsonb NOT NULL 1642 ); 1643 1644 1645 ALTER TABLE public.system_metadata OWNER TO postgres; 1646 1647 -- 1648 -- Name: tag; Type: TABLE; Schema: public; Owner: postgres 1649 -- 1650 1651 CREATE TABLE public.tag ( 1652 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1653 "userId" uuid NOT NULL, 1654 value character varying NOT NULL, 1655 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1656 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1657 color character varying, 1658 "parentId" uuid, 1659 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL 1660 ); 1661 1662 1663 ALTER TABLE public.tag OWNER TO postgres; 1664 1665 -- 1666 -- Name: tag_asset; Type: TABLE; Schema: public; Owner: postgres 1667 -- 1668 1669 CREATE TABLE public.tag_asset ( 1670 "assetId" uuid NOT NULL, 1671 "tagId" uuid NOT NULL 1672 ); 1673 1674 1675 ALTER TABLE public.tag_asset OWNER TO postgres; 1676 1677 -- 1678 -- Name: tag_closure; Type: TABLE; Schema: public; Owner: postgres 1679 -- 1680 1681 CREATE TABLE public.tag_closure ( 1682 id_ancestor uuid NOT NULL, 1683 id_descendant uuid NOT NULL 1684 ); 1685 1686 1687 ALTER TABLE public.tag_closure OWNER TO postgres; 1688 1689 -- 1690 -- Name: user; Type: TABLE; Schema: public; Owner: postgres 1691 -- 1692 1693 CREATE TABLE public."user" ( 1694 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1695 email character varying NOT NULL, 1696 password character varying, 1697 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1698 "profileImagePath" character varying DEFAULT ''::character varying NOT NULL, 1699 "isAdmin" boolean DEFAULT false NOT NULL, 1700 "shouldChangePassword" boolean DEFAULT true NOT NULL, 1701 "deletedAt" timestamp with time zone, 1702 "oauthId" character varying DEFAULT ''::character varying NOT NULL, 1703 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1704 "storageLabel" character varying, 1705 name character varying DEFAULT ''::character varying NOT NULL, 1706 "quotaSizeInBytes" bigint, 1707 "quotaUsageInBytes" bigint DEFAULT 0 NOT NULL, 1708 status character varying DEFAULT 'active'::character varying NOT NULL, 1709 "profileChangedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1710 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1711 "avatarColor" character varying, 1712 "pinCode" character varying, 1713 "clusterGroupId" uuid NOT NULL 1714 ); 1715 1716 1717 ALTER TABLE public."user" OWNER TO postgres; 1718 1719 -- 1720 -- Name: user_audit; Type: TABLE; Schema: public; Owner: postgres 1721 -- 1722 1723 CREATE TABLE public.user_audit ( 1724 "userId" uuid NOT NULL, 1725 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL, 1726 id uuid DEFAULT public.immich_uuid_v7() NOT NULL 1727 ); 1728 1729 1730 ALTER TABLE public.user_audit OWNER TO postgres; 1731 1732 -- 1733 -- Name: user_metadata; Type: TABLE; Schema: public; Owner: postgres 1734 -- 1735 1736 CREATE TABLE public.user_metadata ( 1737 "userId" uuid NOT NULL, 1738 key character varying NOT NULL, 1739 value jsonb NOT NULL, 1740 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1741 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL 1742 ); 1743 1744 1745 ALTER TABLE public.user_metadata OWNER TO postgres; 1746 1747 -- 1748 -- Name: user_metadata_audit; Type: TABLE; Schema: public; Owner: postgres 1749 -- 1750 1751 CREATE TABLE public.user_metadata_audit ( 1752 id uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1753 "userId" uuid NOT NULL, 1754 key character varying NOT NULL, 1755 "deletedAt" timestamp with time zone DEFAULT clock_timestamp() NOT NULL 1756 ); 1757 1758 1759 ALTER TABLE public.user_metadata_audit OWNER TO postgres; 1760 1761 -- 1762 -- Name: version_history; Type: TABLE; Schema: public; Owner: postgres 1763 -- 1764 1765 CREATE TABLE public.version_history ( 1766 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1767 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1768 version character varying NOT NULL 1769 ); 1770 1771 1772 ALTER TABLE public.version_history OWNER TO postgres; 1773 1774 -- 1775 -- Name: video_stream_segment; Type: TABLE; Schema: public; Owner: postgres 1776 -- 1777 1778 CREATE TABLE public.video_stream_segment ( 1779 "variantId" uuid NOT NULL, 1780 index integer NOT NULL, 1781 "durationUs" integer NOT NULL 1782 ); 1783 1784 1785 ALTER TABLE public.video_stream_segment OWNER TO postgres; 1786 1787 -- 1788 -- Name: video_stream_session; Type: TABLE; Schema: public; Owner: postgres 1789 -- 1790 1791 CREATE TABLE public.video_stream_session ( 1792 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1793 "assetId" uuid NOT NULL, 1794 "expiresAt" timestamp with time zone NOT NULL, 1795 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL 1796 ); 1797 1798 1799 ALTER TABLE public.video_stream_session OWNER TO postgres; 1800 1801 -- 1802 -- Name: video_stream_variant; Type: TABLE; Schema: public; Owner: postgres 1803 -- 1804 1805 CREATE TABLE public.video_stream_variant ( 1806 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1807 "sessionId" uuid NOT NULL, 1808 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1809 bitrate integer NOT NULL, 1810 codec public.video_stream_variant_codec_enum NOT NULL, 1811 resolution smallint NOT NULL 1812 ); 1813 1814 1815 ALTER TABLE public.video_stream_variant OWNER TO postgres; 1816 1817 -- 1818 -- Name: workflow; Type: TABLE; Schema: public; Owner: postgres 1819 -- 1820 1821 CREATE TABLE public.workflow ( 1822 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1823 "ownerId" uuid NOT NULL, 1824 trigger character varying NOT NULL, 1825 name character varying, 1826 description character varying, 1827 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1828 "updatedAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1829 "updateId" uuid DEFAULT public.immich_uuid_v7() NOT NULL, 1830 enabled boolean DEFAULT true NOT NULL, 1831 logging boolean DEFAULT false NOT NULL 1832 ); 1833 1834 1835 ALTER TABLE public.workflow OWNER TO postgres; 1836 1837 -- 1838 -- Name: workflow_log; Type: TABLE; Schema: public; Owner: postgres 1839 -- 1840 1841 CREATE TABLE public.workflow_log ( 1842 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1843 "createdAt" timestamp with time zone DEFAULT current_timestamp NOT NULL, 1844 "workflowId" uuid NOT NULL, 1845 result character varying NOT NULL, 1846 "workflowStepId" uuid, 1847 "triggerDataId" uuid, 1848 "runId" uuid NOT NULL 1849 ); 1850 1851 1852 ALTER TABLE public.workflow_log OWNER TO postgres; 1853 1854 -- 1855 -- Name: workflow_step; Type: TABLE; Schema: public; Owner: postgres 1856 -- 1857 1858 CREATE TABLE public.workflow_step ( 1859 id uuid DEFAULT public.uuid_generate_v4() NOT NULL, 1860 enabled boolean DEFAULT true NOT NULL, 1861 "workflowId" uuid NOT NULL, 1862 "pluginMethodId" uuid NOT NULL, 1863 config jsonb, 1864 "order" integer NOT NULL 1865 ); 1866 1867 1868 ALTER TABLE public.workflow_step OWNER TO postgres; 1869 1870 -- 1871 -- Name: move_history UQ_entityId_pathType; Type: CONSTRAINT; Schema: public; Owner: postgres 1872 -- 1873 1874 ALTER TABLE ONLY public.move_history 1875 ADD CONSTRAINT "UQ_entityId_pathType" UNIQUE ("entityId", "pathType"); 1876 1877 1878 -- 1879 -- Name: move_history UQ_newPath; Type: CONSTRAINT; Schema: public; Owner: postgres 1880 -- 1881 1882 ALTER TABLE ONLY public.move_history 1883 ADD CONSTRAINT "UQ_newPath" UNIQUE ("newPath"); 1884 1885 1886 -- 1887 -- Name: activity activity_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1888 -- 1889 1890 ALTER TABLE ONLY public.activity 1891 ADD CONSTRAINT activity_pkey PRIMARY KEY (id); 1892 1893 1894 -- 1895 -- Name: album_asset_audit album_asset_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1896 -- 1897 1898 ALTER TABLE ONLY public.album_asset_audit 1899 ADD CONSTRAINT album_asset_audit_pkey PRIMARY KEY (id); 1900 1901 1902 -- 1903 -- Name: album_asset album_asset_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1904 -- 1905 1906 ALTER TABLE ONLY public.album_asset 1907 ADD CONSTRAINT album_asset_pkey PRIMARY KEY ("albumId", "assetId"); 1908 1909 1910 -- 1911 -- Name: album_audit album_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1912 -- 1913 1914 ALTER TABLE ONLY public.album_audit 1915 ADD CONSTRAINT album_audit_pkey PRIMARY KEY (id); 1916 1917 1918 -- 1919 -- Name: album album_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1920 -- 1921 1922 ALTER TABLE ONLY public.album 1923 ADD CONSTRAINT album_pkey PRIMARY KEY (id); 1924 1925 1926 -- 1927 -- Name: album_user_audit album_user_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1928 -- 1929 1930 ALTER TABLE ONLY public.album_user_audit 1931 ADD CONSTRAINT album_user_audit_pkey PRIMARY KEY (id); 1932 1933 1934 -- 1935 -- Name: album_user album_user_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1936 -- 1937 1938 ALTER TABLE ONLY public.album_user 1939 ADD CONSTRAINT album_user_pkey PRIMARY KEY ("albumId", "userId"); 1940 1941 1942 -- 1943 -- Name: api_key api_key_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1944 -- 1945 1946 ALTER TABLE ONLY public.api_key 1947 ADD CONSTRAINT api_key_pkey PRIMARY KEY (id); 1948 1949 1950 -- 1951 -- Name: asset_audio asset_audio_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1952 -- 1953 1954 ALTER TABLE ONLY public.asset_audio 1955 ADD CONSTRAINT asset_audio_pkey PRIMARY KEY ("assetId"); 1956 1957 1958 -- 1959 -- Name: asset_audit asset_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1960 -- 1961 1962 ALTER TABLE ONLY public.asset_audit 1963 ADD CONSTRAINT asset_audit_pkey PRIMARY KEY (id); 1964 1965 1966 -- 1967 -- Name: asset_edit asset_edit_assetId_sequence_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 1968 -- 1969 1970 ALTER TABLE ONLY public.asset_edit 1971 ADD CONSTRAINT "asset_edit_assetId_sequence_uq" UNIQUE ("assetId", sequence); 1972 1973 1974 -- 1975 -- Name: asset_edit_audit asset_edit_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1976 -- 1977 1978 ALTER TABLE ONLY public.asset_edit_audit 1979 ADD CONSTRAINT asset_edit_audit_pkey PRIMARY KEY (id); 1980 1981 1982 -- 1983 -- Name: asset_edit asset_edit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1984 -- 1985 1986 ALTER TABLE ONLY public.asset_edit 1987 ADD CONSTRAINT asset_edit_pkey PRIMARY KEY (id); 1988 1989 1990 -- 1991 -- Name: asset_exif asset_exif_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 1992 -- 1993 1994 ALTER TABLE ONLY public.asset_exif 1995 ADD CONSTRAINT asset_exif_pkey PRIMARY KEY ("assetId"); 1996 1997 1998 -- 1999 -- Name: asset_face_audit asset_face_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2000 -- 2001 2002 ALTER TABLE ONLY public.asset_face_audit 2003 ADD CONSTRAINT asset_face_audit_pkey PRIMARY KEY (id); 2004 2005 2006 -- 2007 -- Name: asset_face asset_face_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2008 -- 2009 2010 ALTER TABLE ONLY public.asset_face 2011 ADD CONSTRAINT asset_face_pkey PRIMARY KEY (id); 2012 2013 2014 -- 2015 -- Name: asset_file asset_file_assetId_type_isEdited_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2016 -- 2017 2018 ALTER TABLE ONLY public.asset_file 2019 ADD CONSTRAINT "asset_file_assetId_type_isEdited_uq" UNIQUE ("assetId", type, "isEdited"); 2020 2021 2022 -- 2023 -- Name: asset_file asset_file_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2024 -- 2025 2026 ALTER TABLE ONLY public.asset_file 2027 ADD CONSTRAINT asset_file_pkey PRIMARY KEY (id); 2028 2029 2030 -- 2031 -- Name: asset_job_status asset_job_status_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2032 -- 2033 2034 ALTER TABLE ONLY public.asset_job_status 2035 ADD CONSTRAINT asset_job_status_pkey PRIMARY KEY ("assetId"); 2036 2037 2038 -- 2039 -- Name: asset_keyframe asset_keyframe_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2040 -- 2041 2042 ALTER TABLE ONLY public.asset_keyframe 2043 ADD CONSTRAINT asset_keyframe_pkey PRIMARY KEY ("assetId"); 2044 2045 2046 -- 2047 -- Name: asset_metadata_audit asset_metadata_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2048 -- 2049 2050 ALTER TABLE ONLY public.asset_metadata_audit 2051 ADD CONSTRAINT asset_metadata_audit_pkey PRIMARY KEY (id); 2052 2053 2054 -- 2055 -- Name: asset_metadata asset_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2056 -- 2057 2058 ALTER TABLE ONLY public.asset_metadata 2059 ADD CONSTRAINT asset_metadata_pkey PRIMARY KEY ("assetId", key); 2060 2061 2062 -- 2063 -- Name: asset_ocr_audit asset_ocr_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2064 -- 2065 2066 ALTER TABLE ONLY public.asset_ocr_audit 2067 ADD CONSTRAINT asset_ocr_audit_pkey PRIMARY KEY (id); 2068 2069 2070 -- 2071 -- Name: asset_ocr asset_ocr_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2072 -- 2073 2074 ALTER TABLE ONLY public.asset_ocr 2075 ADD CONSTRAINT asset_ocr_pkey PRIMARY KEY (id); 2076 2077 2078 -- 2079 -- Name: asset asset_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2080 -- 2081 2082 ALTER TABLE ONLY public.asset 2083 ADD CONSTRAINT asset_pkey PRIMARY KEY (id); 2084 2085 2086 -- 2087 -- Name: asset_video asset_video_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2088 -- 2089 2090 ALTER TABLE ONLY public.asset_video 2091 ADD CONSTRAINT asset_video_pkey PRIMARY KEY ("assetId"); 2092 2093 2094 -- 2095 -- Name: cluster_group cluster_group_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2096 -- 2097 2098 ALTER TABLE ONLY public.cluster_group 2099 ADD CONSTRAINT cluster_group_pkey PRIMARY KEY (id); 2100 2101 2102 -- 2103 -- Name: cluster_group_request cluster_group_request_clusterGroupId_userId_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2104 -- 2105 2106 ALTER TABLE ONLY public.cluster_group_request 2107 ADD CONSTRAINT "cluster_group_request_clusterGroupId_userId_uq" UNIQUE ("clusterGroupId", "userId"); 2108 2109 2110 -- 2111 -- Name: cluster_group_request cluster_group_request_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2112 -- 2113 2114 ALTER TABLE ONLY public.cluster_group_request 2115 ADD CONSTRAINT cluster_group_request_pkey PRIMARY KEY (id); 2116 2117 2118 -- 2119 -- Name: face_search face_search_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2120 -- 2121 2122 ALTER TABLE ONLY public.face_search 2123 ADD CONSTRAINT face_search_pkey PRIMARY KEY ("faceId"); 2124 2125 2126 -- 2127 -- Name: geodata_places geodata_places_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2128 -- 2129 2130 ALTER TABLE ONLY public.geodata_places 2131 ADD CONSTRAINT geodata_places_pkey PRIMARY KEY (id) WITH (fillfactor='100'); 2132 2133 2134 -- 2135 -- Name: integrity_report integrity_report_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2136 -- 2137 2138 ALTER TABLE ONLY public.integrity_report 2139 ADD CONSTRAINT integrity_report_pkey PRIMARY KEY (id); 2140 2141 2142 -- 2143 -- Name: integrity_report integrity_report_type_path_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2144 -- 2145 2146 ALTER TABLE ONLY public.integrity_report 2147 ADD CONSTRAINT integrity_report_type_path_uq UNIQUE (type, path); 2148 2149 2150 -- 2151 -- Name: kysely_migrations_lock kysely_migrations_lock_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2152 -- 2153 2154 ALTER TABLE ONLY public.kysely_migrations_lock 2155 ADD CONSTRAINT kysely_migrations_lock_pkey PRIMARY KEY (id); 2156 2157 2158 -- 2159 -- Name: kysely_migrations kysely_migrations_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2160 -- 2161 2162 ALTER TABLE ONLY public.kysely_migrations 2163 ADD CONSTRAINT kysely_migrations_pkey PRIMARY KEY (name); 2164 2165 2166 -- 2167 -- Name: library library_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2168 -- 2169 2170 ALTER TABLE ONLY public.library 2171 ADD CONSTRAINT library_pkey PRIMARY KEY (id); 2172 2173 2174 -- 2175 -- Name: memory_asset_audit memory_asset_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2176 -- 2177 2178 ALTER TABLE ONLY public.memory_asset_audit 2179 ADD CONSTRAINT memory_asset_audit_pkey PRIMARY KEY (id); 2180 2181 2182 -- 2183 -- Name: memory_asset memory_asset_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2184 -- 2185 2186 ALTER TABLE ONLY public.memory_asset 2187 ADD CONSTRAINT memory_asset_pkey PRIMARY KEY ("memoriesId", "assetId"); 2188 2189 2190 -- 2191 -- Name: memory_audit memory_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2192 -- 2193 2194 ALTER TABLE ONLY public.memory_audit 2195 ADD CONSTRAINT memory_audit_pkey PRIMARY KEY (id); 2196 2197 2198 -- 2199 -- Name: memory memory_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2200 -- 2201 2202 ALTER TABLE ONLY public.memory 2203 ADD CONSTRAINT memory_pkey PRIMARY KEY (id); 2204 2205 2206 -- 2207 -- Name: migration_overrides migration_overrides_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2208 -- 2209 2210 ALTER TABLE ONLY public.migration_overrides 2211 ADD CONSTRAINT migration_overrides_pkey PRIMARY KEY (name); 2212 2213 2214 -- 2215 -- Name: move_history move_history_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2216 -- 2217 2218 ALTER TABLE ONLY public.move_history 2219 ADD CONSTRAINT move_history_pkey PRIMARY KEY (id); 2220 2221 2222 -- 2223 -- Name: naturalearth_countries naturalearth_countries_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2224 -- 2225 2226 ALTER TABLE ONLY public.naturalearth_countries 2227 ADD CONSTRAINT naturalearth_countries_pkey PRIMARY KEY (id) WITH (fillfactor='100'); 2228 2229 2230 -- 2231 -- Name: notification notification_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2232 -- 2233 2234 ALTER TABLE ONLY public.notification 2235 ADD CONSTRAINT notification_pkey PRIMARY KEY (id); 2236 2237 2238 -- 2239 -- Name: ocr_search ocr_search_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2240 -- 2241 2242 ALTER TABLE ONLY public.ocr_search 2243 ADD CONSTRAINT ocr_search_pkey PRIMARY KEY ("assetId"); 2244 2245 2246 -- 2247 -- Name: partner_audit partner_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2248 -- 2249 2250 ALTER TABLE ONLY public.partner_audit 2251 ADD CONSTRAINT partner_audit_pkey PRIMARY KEY (id); 2252 2253 2254 -- 2255 -- Name: partner partner_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2256 -- 2257 2258 ALTER TABLE ONLY public.partner 2259 ADD CONSTRAINT partner_pkey PRIMARY KEY ("sharedById", "sharedWithId"); 2260 2261 2262 -- 2263 -- Name: person_audit person_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2264 -- 2265 2266 ALTER TABLE ONLY public.person_audit 2267 ADD CONSTRAINT person_audit_pkey PRIMARY KEY (id); 2268 2269 2270 -- 2271 -- Name: person_group_audit person_group_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2272 -- 2273 2274 ALTER TABLE ONLY public.person_group_audit 2275 ADD CONSTRAINT person_group_audit_pkey PRIMARY KEY (id); 2276 2277 2278 -- 2279 -- Name: person_group person_group_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2280 -- 2281 2282 ALTER TABLE ONLY public.person_group 2283 ADD CONSTRAINT person_group_pkey PRIMARY KEY (id); 2284 2285 2286 -- 2287 -- Name: person person_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2288 -- 2289 2290 ALTER TABLE ONLY public.person 2291 ADD CONSTRAINT person_pkey PRIMARY KEY ("ownerId", "personGroupId"); 2292 2293 2294 -- 2295 -- Name: plugin_method plugin_method_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2296 -- 2297 2298 ALTER TABLE ONLY public.plugin_method 2299 ADD CONSTRAINT plugin_method_pkey PRIMARY KEY (id); 2300 2301 2302 -- 2303 -- Name: plugin_method plugin_method_pluginId_name_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2304 -- 2305 2306 ALTER TABLE ONLY public.plugin_method 2307 ADD CONSTRAINT "plugin_method_pluginId_name_uq" UNIQUE ("pluginId", name); 2308 2309 2310 -- 2311 -- Name: plugin plugin_name_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2312 -- 2313 2314 ALTER TABLE ONLY public.plugin 2315 ADD CONSTRAINT plugin_name_uq UNIQUE (name); 2316 2317 2318 -- 2319 -- Name: plugin plugin_name_version_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2320 -- 2321 2322 ALTER TABLE ONLY public.plugin 2323 ADD CONSTRAINT plugin_name_version_uq UNIQUE (name, version); 2324 2325 2326 -- 2327 -- Name: plugin plugin_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2328 -- 2329 2330 ALTER TABLE ONLY public.plugin 2331 ADD CONSTRAINT plugin_pkey PRIMARY KEY (id); 2332 2333 2334 -- 2335 -- Name: session session_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2336 -- 2337 2338 ALTER TABLE ONLY public.session 2339 ADD CONSTRAINT session_pkey PRIMARY KEY (id); 2340 2341 2342 -- 2343 -- Name: session_sync_checkpoint session_sync_checkpoint_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2344 -- 2345 2346 ALTER TABLE ONLY public.session_sync_checkpoint 2347 ADD CONSTRAINT session_sync_checkpoint_pkey PRIMARY KEY ("sessionId", type); 2348 2349 2350 -- 2351 -- Name: shared_link_asset shared_link_asset_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2352 -- 2353 2354 ALTER TABLE ONLY public.shared_link_asset 2355 ADD CONSTRAINT shared_link_asset_pkey PRIMARY KEY ("assetId", "sharedLinkId"); 2356 2357 2358 -- 2359 -- Name: shared_link shared_link_key_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2360 -- 2361 2362 ALTER TABLE ONLY public.shared_link 2363 ADD CONSTRAINT shared_link_key_uq UNIQUE (key); 2364 2365 2366 -- 2367 -- Name: shared_link shared_link_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2368 -- 2369 2370 ALTER TABLE ONLY public.shared_link 2371 ADD CONSTRAINT shared_link_pkey PRIMARY KEY (id); 2372 2373 2374 -- 2375 -- Name: shared_link shared_link_slug_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2376 -- 2377 2378 ALTER TABLE ONLY public.shared_link 2379 ADD CONSTRAINT shared_link_slug_uq UNIQUE (slug); 2380 2381 2382 -- 2383 -- Name: smart_search smart_search_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2384 -- 2385 2386 ALTER TABLE ONLY public.smart_search 2387 ADD CONSTRAINT smart_search_pkey PRIMARY KEY ("assetId"); 2388 2389 2390 -- 2391 -- Name: stack_audit stack_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2392 -- 2393 2394 ALTER TABLE ONLY public.stack_audit 2395 ADD CONSTRAINT stack_audit_pkey PRIMARY KEY (id); 2396 2397 2398 -- 2399 -- Name: stack stack_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2400 -- 2401 2402 ALTER TABLE ONLY public.stack 2403 ADD CONSTRAINT stack_pkey PRIMARY KEY (id); 2404 2405 2406 -- 2407 -- Name: stack stack_primaryAssetId_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2408 -- 2409 2410 ALTER TABLE ONLY public.stack 2411 ADD CONSTRAINT "stack_primaryAssetId_uq" UNIQUE ("primaryAssetId"); 2412 2413 2414 -- 2415 -- Name: system_metadata system_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2416 -- 2417 2418 ALTER TABLE ONLY public.system_metadata 2419 ADD CONSTRAINT system_metadata_pkey PRIMARY KEY (key); 2420 2421 2422 -- 2423 -- Name: tag_asset tag_asset_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2424 -- 2425 2426 ALTER TABLE ONLY public.tag_asset 2427 ADD CONSTRAINT tag_asset_pkey PRIMARY KEY ("assetId", "tagId"); 2428 2429 2430 -- 2431 -- Name: tag_closure tag_closure_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2432 -- 2433 2434 ALTER TABLE ONLY public.tag_closure 2435 ADD CONSTRAINT tag_closure_pkey PRIMARY KEY (id_ancestor, id_descendant); 2436 2437 2438 -- 2439 -- Name: tag tag_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2440 -- 2441 2442 ALTER TABLE ONLY public.tag 2443 ADD CONSTRAINT tag_pkey PRIMARY KEY (id); 2444 2445 2446 -- 2447 -- Name: tag tag_userId_value_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2448 -- 2449 2450 ALTER TABLE ONLY public.tag 2451 ADD CONSTRAINT "tag_userId_value_uq" UNIQUE ("userId", value); 2452 2453 2454 -- 2455 -- Name: user_audit user_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2456 -- 2457 2458 ALTER TABLE ONLY public.user_audit 2459 ADD CONSTRAINT user_audit_pkey PRIMARY KEY (id); 2460 2461 2462 -- 2463 -- Name: user user_email_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2464 -- 2465 2466 ALTER TABLE ONLY public."user" 2467 ADD CONSTRAINT user_email_uq UNIQUE (email); 2468 2469 2470 -- 2471 -- Name: user_metadata_audit user_metadata_audit_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2472 -- 2473 2474 ALTER TABLE ONLY public.user_metadata_audit 2475 ADD CONSTRAINT user_metadata_audit_pkey PRIMARY KEY (id); 2476 2477 2478 -- 2479 -- Name: user_metadata user_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2480 -- 2481 2482 ALTER TABLE ONLY public.user_metadata 2483 ADD CONSTRAINT user_metadata_pkey PRIMARY KEY ("userId", key); 2484 2485 2486 -- 2487 -- Name: user user_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2488 -- 2489 2490 ALTER TABLE ONLY public."user" 2491 ADD CONSTRAINT user_pkey PRIMARY KEY (id); 2492 2493 2494 -- 2495 -- Name: user user_storageLabel_uq; Type: CONSTRAINT; Schema: public; Owner: postgres 2496 -- 2497 2498 ALTER TABLE ONLY public."user" 2499 ADD CONSTRAINT "user_storageLabel_uq" UNIQUE ("storageLabel"); 2500 2501 2502 -- 2503 -- Name: version_history version_history_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2504 -- 2505 2506 ALTER TABLE ONLY public.version_history 2507 ADD CONSTRAINT version_history_pkey PRIMARY KEY (id); 2508 2509 2510 -- 2511 -- Name: video_stream_segment video_stream_segment_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2512 -- 2513 2514 ALTER TABLE ONLY public.video_stream_segment 2515 ADD CONSTRAINT video_stream_segment_pkey PRIMARY KEY ("variantId", index); 2516 2517 2518 -- 2519 -- Name: video_stream_session video_stream_session_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2520 -- 2521 2522 ALTER TABLE ONLY public.video_stream_session 2523 ADD CONSTRAINT video_stream_session_pkey PRIMARY KEY (id); 2524 2525 2526 -- 2527 -- Name: video_stream_variant video_stream_variant_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2528 -- 2529 2530 ALTER TABLE ONLY public.video_stream_variant 2531 ADD CONSTRAINT video_stream_variant_pkey PRIMARY KEY (id); 2532 2533 2534 -- 2535 -- Name: workflow_log workflow_log_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2536 -- 2537 2538 ALTER TABLE ONLY public.workflow_log 2539 ADD CONSTRAINT workflow_log_pkey PRIMARY KEY (id); 2540 2541 2542 -- 2543 -- Name: workflow workflow_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2544 -- 2545 2546 ALTER TABLE ONLY public.workflow 2547 ADD CONSTRAINT workflow_pkey PRIMARY KEY (id); 2548 2549 2550 -- 2551 -- Name: workflow_step workflow_step_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres 2552 -- 2553 2554 ALTER TABLE ONLY public.workflow_step 2555 ADD CONSTRAINT workflow_step_pkey PRIMARY KEY (id); 2556 2557 2558 -- 2559 -- Name: IDX_asset_exif_gist_earthcoord; Type: INDEX; Schema: public; Owner: postgres 2560 -- 2561 2562 CREATE INDEX "IDX_asset_exif_gist_earthcoord" ON public.asset_exif USING gist (public.ll_to_earth_public(latitude, longitude)); 2563 2564 2565 -- 2566 -- Name: IDX_geodata_gist_earthcoord; Type: INDEX; Schema: public; Owner: postgres 2567 -- 2568 2569 CREATE INDEX "IDX_geodata_gist_earthcoord" ON public.geodata_places USING gist (public.ll_to_earth_public(latitude, longitude)); 2570 2571 2572 -- 2573 -- Name: IDX_user_metadata_audit_deleted_at; Type: INDEX; Schema: public; Owner: postgres 2574 -- 2575 2576 CREATE INDEX "IDX_user_metadata_audit_deleted_at" ON public.user_metadata_audit USING btree ("deletedAt"); 2577 2578 2579 -- 2580 -- Name: IDX_user_metadata_audit_key; Type: INDEX; Schema: public; Owner: postgres 2581 -- 2582 2583 CREATE INDEX "IDX_user_metadata_audit_key" ON public.user_metadata_audit USING btree (key); 2584 2585 2586 -- 2587 -- Name: IDX_user_metadata_audit_user_id; Type: INDEX; Schema: public; Owner: postgres 2588 -- 2589 2590 CREATE INDEX "IDX_user_metadata_audit_user_id" ON public.user_metadata_audit USING btree ("userId"); 2591 2592 2593 -- 2594 -- Name: IDX_user_metadata_update_id; Type: INDEX; Schema: public; Owner: postgres 2595 -- 2596 2597 CREATE INDEX "IDX_user_metadata_update_id" ON public.user_metadata USING btree ("updateId"); 2598 2599 2600 -- 2601 -- Name: IDX_user_metadata_updated_at; Type: INDEX; Schema: public; Owner: postgres 2602 -- 2603 2604 CREATE INDEX "IDX_user_metadata_updated_at" ON public.user_metadata USING btree ("updatedAt"); 2605 2606 2607 -- 2608 -- Name: UQ_assets_owner_checksum; Type: INDEX; Schema: public; Owner: postgres 2609 -- 2610 2611 CREATE UNIQUE INDEX "UQ_assets_owner_checksum" ON public.asset USING btree ("ownerId", checksum) WHERE ("libraryId" IS NULL); 2612 2613 2614 -- 2615 -- Name: activity_albumId_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 2616 -- 2617 2618 CREATE INDEX "activity_albumId_assetId_idx" ON public.activity USING btree ("albumId", "assetId"); 2619 2620 2621 -- 2622 -- Name: activity_albumId_idx; Type: INDEX; Schema: public; Owner: postgres 2623 -- 2624 2625 CREATE INDEX "activity_albumId_idx" ON public.activity USING btree ("albumId"); 2626 2627 2628 -- 2629 -- Name: activity_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 2630 -- 2631 2632 CREATE INDEX "activity_assetId_idx" ON public.activity USING btree ("assetId"); 2633 2634 2635 -- 2636 -- Name: activity_like_idx; Type: INDEX; Schema: public; Owner: postgres 2637 -- 2638 2639 CREATE UNIQUE INDEX activity_like_idx ON public.activity USING btree ("assetId", "userId", "albumId") WHERE ("isLiked" = true); 2640 2641 2642 -- 2643 -- Name: activity_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 2644 -- 2645 2646 CREATE INDEX "activity_updateId_idx" ON public.activity USING btree ("updateId"); 2647 2648 2649 -- 2650 -- Name: activity_userId_idx; Type: INDEX; Schema: public; Owner: postgres 2651 -- 2652 2653 CREATE INDEX "activity_userId_idx" ON public.activity USING btree ("userId"); 2654 2655 2656 -- 2657 -- Name: album_albumThumbnailAssetId_idx; Type: INDEX; Schema: public; Owner: postgres 2658 -- 2659 2660 CREATE INDEX "album_albumThumbnailAssetId_idx" ON public.album USING btree ("albumThumbnailAssetId"); 2661 2662 2663 -- 2664 -- Name: album_asset_albumId_idx; Type: INDEX; Schema: public; Owner: postgres 2665 -- 2666 2667 CREATE INDEX "album_asset_albumId_idx" ON public.album_asset USING btree ("albumId"); 2668 2669 2670 -- 2671 -- Name: album_asset_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 2672 -- 2673 2674 CREATE INDEX "album_asset_assetId_idx" ON public.album_asset USING btree ("assetId"); 2675 2676 2677 -- 2678 -- Name: album_asset_audit_albumId_idx; Type: INDEX; Schema: public; Owner: postgres 2679 -- 2680 2681 CREATE INDEX "album_asset_audit_albumId_idx" ON public.album_asset_audit USING btree ("albumId"); 2682 2683 2684 -- 2685 -- Name: album_asset_audit_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 2686 -- 2687 2688 CREATE INDEX "album_asset_audit_assetId_idx" ON public.album_asset_audit USING btree ("assetId"); 2689 2690 2691 -- 2692 -- Name: album_asset_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 2693 -- 2694 2695 CREATE INDEX "album_asset_audit_deletedAt_idx" ON public.album_asset_audit USING btree ("deletedAt"); 2696 2697 2698 -- 2699 -- Name: album_asset_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 2700 -- 2701 2702 CREATE INDEX "album_asset_updateId_idx" ON public.album_asset USING btree ("updateId"); 2703 2704 2705 -- 2706 -- Name: album_audit_albumId_idx; Type: INDEX; Schema: public; Owner: postgres 2707 -- 2708 2709 CREATE INDEX "album_audit_albumId_idx" ON public.album_audit USING btree ("albumId"); 2710 2711 2712 -- 2713 -- Name: album_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 2714 -- 2715 2716 CREATE INDEX "album_audit_deletedAt_idx" ON public.album_audit USING btree ("deletedAt"); 2717 2718 2719 -- 2720 -- Name: album_audit_userId_idx; Type: INDEX; Schema: public; Owner: postgres 2721 -- 2722 2723 CREATE INDEX "album_audit_userId_idx" ON public.album_audit USING btree ("userId"); 2724 2725 2726 -- 2727 -- Name: album_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 2728 -- 2729 2730 CREATE INDEX "album_updateId_idx" ON public.album USING btree ("updateId"); 2731 2732 2733 -- 2734 -- Name: album_user_albumId_idx; Type: INDEX; Schema: public; Owner: postgres 2735 -- 2736 2737 CREATE INDEX "album_user_albumId_idx" ON public.album_user USING btree ("albumId"); 2738 2739 2740 -- 2741 -- Name: album_user_audit_albumId_idx; Type: INDEX; Schema: public; Owner: postgres 2742 -- 2743 2744 CREATE INDEX "album_user_audit_albumId_idx" ON public.album_user_audit USING btree ("albumId"); 2745 2746 2747 -- 2748 -- Name: album_user_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 2749 -- 2750 2751 CREATE INDEX "album_user_audit_deletedAt_idx" ON public.album_user_audit USING btree ("deletedAt"); 2752 2753 2754 -- 2755 -- Name: album_user_audit_userId_idx; Type: INDEX; Schema: public; Owner: postgres 2756 -- 2757 2758 CREATE INDEX "album_user_audit_userId_idx" ON public.album_user_audit USING btree ("userId"); 2759 2760 2761 -- 2762 -- Name: album_user_createId_idx; Type: INDEX; Schema: public; Owner: postgres 2763 -- 2764 2765 CREATE INDEX "album_user_createId_idx" ON public.album_user USING btree ("createId"); 2766 2767 2768 -- 2769 -- Name: album_user_unique_owner; Type: INDEX; Schema: public; Owner: postgres 2770 -- 2771 2772 CREATE UNIQUE INDEX album_user_unique_owner ON public.album_user USING btree ("albumId") WHERE (role = 'owner'::public.album_user_role_enum); 2773 2774 2775 -- 2776 -- Name: album_user_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 2777 -- 2778 2779 CREATE INDEX "album_user_updateId_idx" ON public.album_user USING btree ("updateId"); 2780 2781 2782 -- 2783 -- Name: album_user_userId_idx; Type: INDEX; Schema: public; Owner: postgres 2784 -- 2785 2786 CREATE INDEX "album_user_userId_idx" ON public.album_user USING btree ("userId"); 2787 2788 2789 -- 2790 -- Name: api_key_key_idx; Type: INDEX; Schema: public; Owner: postgres 2791 -- 2792 2793 CREATE INDEX api_key_key_idx ON public.api_key USING btree (key); 2794 2795 2796 -- 2797 -- Name: api_key_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 2798 -- 2799 2800 CREATE INDEX "api_key_updateId_idx" ON public.api_key USING btree ("updateId"); 2801 2802 2803 -- 2804 -- Name: api_key_userId_idx; Type: INDEX; Schema: public; Owner: postgres 2805 -- 2806 2807 CREATE INDEX "api_key_userId_idx" ON public.api_key USING btree ("userId"); 2808 2809 2810 -- 2811 -- Name: asset_audit_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 2812 -- 2813 2814 CREATE INDEX "asset_audit_assetId_idx" ON public.asset_audit USING btree ("assetId"); 2815 2816 2817 -- 2818 -- Name: asset_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 2819 -- 2820 2821 CREATE INDEX "asset_audit_deletedAt_idx" ON public.asset_audit USING btree ("deletedAt"); 2822 2823 2824 -- 2825 -- Name: asset_audit_ownerId_idx; Type: INDEX; Schema: public; Owner: postgres 2826 -- 2827 2828 CREATE INDEX "asset_audit_ownerId_idx" ON public.asset_audit USING btree ("ownerId"); 2829 2830 2831 -- 2832 -- Name: asset_checksum_idx; Type: INDEX; Schema: public; Owner: postgres 2833 -- 2834 2835 CREATE INDEX asset_checksum_idx ON public.asset USING btree (checksum); 2836 2837 2838 -- 2839 -- Name: asset_createdAt_idx; Type: INDEX; Schema: public; Owner: postgres 2840 -- 2841 2842 CREATE INDEX "asset_createdAt_idx" ON public.asset USING btree ("createdAt"); 2843 2844 2845 -- 2846 -- Name: asset_duplicateId_idx; Type: INDEX; Schema: public; Owner: postgres 2847 -- 2848 2849 CREATE INDEX "asset_duplicateId_idx" ON public.asset USING btree ("duplicateId"); 2850 2851 2852 -- 2853 -- Name: asset_edit_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 2854 -- 2855 2856 CREATE INDEX "asset_edit_assetId_idx" ON public.asset_edit USING btree ("assetId"); 2857 2858 2859 -- 2860 -- Name: asset_edit_audit_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 2861 -- 2862 2863 CREATE INDEX "asset_edit_audit_assetId_idx" ON public.asset_edit_audit USING btree ("assetId"); 2864 2865 2866 -- 2867 -- Name: asset_edit_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 2868 -- 2869 2870 CREATE INDEX "asset_edit_audit_deletedAt_idx" ON public.asset_edit_audit USING btree ("deletedAt"); 2871 2872 2873 -- 2874 -- Name: asset_edit_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 2875 -- 2876 2877 CREATE INDEX "asset_edit_updateId_idx" ON public.asset_edit USING btree ("updateId"); 2878 2879 2880 -- 2881 -- Name: asset_exif_autoStackId_idx; Type: INDEX; Schema: public; Owner: postgres 2882 -- 2883 2884 CREATE INDEX "asset_exif_autoStackId_idx" ON public.asset_exif USING btree ("autoStackId"); 2885 2886 2887 -- 2888 -- Name: asset_exif_city_idx; Type: INDEX; Schema: public; Owner: postgres 2889 -- 2890 2891 CREATE INDEX asset_exif_city_idx ON public.asset_exif USING btree (city); 2892 2893 2894 -- 2895 -- Name: asset_exif_livePhotoCID_idx; Type: INDEX; Schema: public; Owner: postgres 2896 -- 2897 2898 CREATE INDEX "asset_exif_livePhotoCID_idx" ON public.asset_exif USING btree ("livePhotoCID"); 2899 2900 2901 -- 2902 -- Name: asset_exif_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 2903 -- 2904 2905 CREATE INDEX "asset_exif_updateId_idx" ON public.asset_exif USING btree ("updateId"); 2906 2907 2908 -- 2909 -- Name: asset_face_assetId_personGroupId_idx; Type: INDEX; Schema: public; Owner: postgres 2910 -- 2911 2912 CREATE INDEX "asset_face_assetId_personGroupId_idx" ON public.asset_face USING btree ("assetId", "personGroupId"); 2913 2914 2915 -- 2916 -- Name: asset_face_audit_assetFaceId_idx; Type: INDEX; Schema: public; Owner: postgres 2917 -- 2918 2919 CREATE INDEX "asset_face_audit_assetFaceId_idx" ON public.asset_face_audit USING btree ("assetFaceId"); 2920 2921 2922 -- 2923 -- Name: asset_face_audit_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 2924 -- 2925 2926 CREATE INDEX "asset_face_audit_assetId_idx" ON public.asset_face_audit USING btree ("assetId"); 2927 2928 2929 -- 2930 -- Name: asset_face_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 2931 -- 2932 2933 CREATE INDEX "asset_face_audit_deletedAt_idx" ON public.asset_face_audit USING btree ("deletedAt"); 2934 2935 2936 -- 2937 -- Name: asset_face_personGroupId_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 2938 -- 2939 2940 CREATE INDEX "asset_face_personGroupId_assetId_idx" ON public.asset_face USING btree ("personGroupId", "assetId"); 2941 2942 2943 -- 2944 -- Name: asset_face_personGroupId_assetId_notDeleted_isVisible_idx; Type: INDEX; Schema: public; Owner: postgres 2945 -- 2946 2947 CREATE INDEX "asset_face_personGroupId_assetId_notDeleted_isVisible_idx" ON public.asset_face USING btree ("personGroupId", "assetId") WHERE (("deletedAt" IS NULL) AND ("isVisible" IS TRUE)); 2948 2949 2950 -- 2951 -- Name: asset_fileCreatedAt_idx; Type: INDEX; Schema: public; Owner: postgres 2952 -- 2953 2954 CREATE INDEX "asset_fileCreatedAt_idx" ON public.asset USING btree ("fileCreatedAt"); 2955 2956 2957 -- 2958 -- Name: asset_file_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 2959 -- 2960 2961 CREATE INDEX "asset_file_assetId_idx" ON public.asset_file USING btree ("assetId"); 2962 2963 2964 -- 2965 -- Name: asset_file_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 2966 -- 2967 2968 CREATE INDEX "asset_file_updateId_idx" ON public.asset_file USING btree ("updateId"); 2969 2970 2971 -- 2972 -- Name: asset_id_stackId_idx; Type: INDEX; Schema: public; Owner: postgres 2973 -- 2974 2975 CREATE INDEX "asset_id_stackId_idx" ON public.asset USING btree (id, "stackId"); 2976 2977 2978 -- 2979 -- Name: asset_id_timeline_notDeleted_idx; Type: INDEX; Schema: public; Owner: postgres 2980 -- 2981 2982 CREATE INDEX "asset_id_timeline_notDeleted_idx" ON public.asset USING btree (id) WHERE ((visibility = 'timeline'::public.asset_visibility_enum) AND ("deletedAt" IS NULL)); 2983 2984 2985 -- 2986 -- Name: asset_libraryId_idx; Type: INDEX; Schema: public; Owner: postgres 2987 -- 2988 2989 CREATE INDEX "asset_libraryId_idx" ON public.asset USING btree ("libraryId"); 2990 2991 2992 -- 2993 -- Name: asset_livePhotoVideoId_idx; Type: INDEX; Schema: public; Owner: postgres 2994 -- 2995 2996 CREATE INDEX "asset_livePhotoVideoId_idx" ON public.asset USING btree ("livePhotoVideoId"); 2997 2998 2999 -- 3000 -- Name: asset_localDateTime_idx; Type: INDEX; Schema: public; Owner: postgres 3001 -- 3002 3003 CREATE INDEX "asset_localDateTime_idx" ON public.asset USING btree (((("localDateTime" AT TIME ZONE 'UTC'::text))::date)); 3004 3005 3006 -- 3007 -- Name: asset_localDateTime_month_idx; Type: INDEX; Schema: public; Owner: postgres 3008 -- 3009 3010 CREATE INDEX "asset_localDateTime_month_idx" ON public.asset USING btree ((date_trunc('MONTH'::text, ("localDateTime" AT TIME ZONE 'UTC'::text)) AT TIME ZONE 'UTC'::text)); 3011 3012 3013 -- 3014 -- Name: asset_metadata_audit_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 3015 -- 3016 3017 CREATE INDEX "asset_metadata_audit_assetId_idx" ON public.asset_metadata_audit USING btree ("assetId"); 3018 3019 3020 -- 3021 -- Name: asset_metadata_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 3022 -- 3023 3024 CREATE INDEX "asset_metadata_audit_deletedAt_idx" ON public.asset_metadata_audit USING btree ("deletedAt"); 3025 3026 3027 -- 3028 -- Name: asset_metadata_audit_key_idx; Type: INDEX; Schema: public; Owner: postgres 3029 -- 3030 3031 CREATE INDEX asset_metadata_audit_key_idx ON public.asset_metadata_audit USING btree (key); 3032 3033 3034 -- 3035 -- Name: asset_metadata_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3036 -- 3037 3038 CREATE INDEX "asset_metadata_updateId_idx" ON public.asset_metadata USING btree ("updateId"); 3039 3040 3041 -- 3042 -- Name: asset_metadata_updatedAt_idx; Type: INDEX; Schema: public; Owner: postgres 3043 -- 3044 3045 CREATE INDEX "asset_metadata_updatedAt_idx" ON public.asset_metadata USING btree ("updatedAt"); 3046 3047 3048 -- 3049 -- Name: asset_ocr_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 3050 -- 3051 3052 CREATE INDEX "asset_ocr_assetId_idx" ON public.asset_ocr USING btree ("assetId"); 3053 3054 3055 -- 3056 -- Name: asset_ocr_audit_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 3057 -- 3058 3059 CREATE INDEX "asset_ocr_audit_assetId_idx" ON public.asset_ocr_audit USING btree ("assetId"); 3060 3061 3062 -- 3063 -- Name: asset_ocr_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 3064 -- 3065 3066 CREATE INDEX "asset_ocr_audit_deletedAt_idx" ON public.asset_ocr_audit USING btree ("deletedAt"); 3067 3068 3069 -- 3070 -- Name: asset_ocr_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3071 -- 3072 3073 CREATE INDEX "asset_ocr_updateId_idx" ON public.asset_ocr USING btree ("updateId"); 3074 3075 3076 -- 3077 -- Name: asset_originalFileName_idx; Type: INDEX; Schema: public; Owner: postgres 3078 -- 3079 3080 CREATE INDEX "asset_originalFileName_idx" ON public.asset USING btree ("originalFileName"); 3081 3082 3083 -- 3084 -- Name: asset_originalFilename_trigram_idx; Type: INDEX; Schema: public; Owner: postgres 3085 -- 3086 3087 CREATE INDEX "asset_originalFilename_trigram_idx" ON public.asset USING gin (public.f_unaccent(("originalFileName")::text) public.gin_trgm_ops); 3088 3089 3090 -- 3091 -- Name: asset_originalPath_libraryId_idx; Type: INDEX; Schema: public; Owner: postgres 3092 -- 3093 3094 CREATE INDEX "asset_originalPath_libraryId_idx" ON public.asset USING btree ("originalPath", "libraryId"); 3095 3096 3097 -- 3098 -- Name: asset_ownerId_idx; Type: INDEX; Schema: public; Owner: postgres 3099 -- 3100 3101 CREATE INDEX "asset_ownerId_idx" ON public.asset USING btree ("ownerId"); 3102 3103 3104 -- 3105 -- Name: asset_ownerId_libraryId_checksum_idx; Type: INDEX; Schema: public; Owner: postgres 3106 -- 3107 3108 CREATE UNIQUE INDEX "asset_ownerId_libraryId_checksum_idx" ON public.asset USING btree ("ownerId", "libraryId", checksum) WHERE ("libraryId" IS NOT NULL); 3109 3110 3111 -- 3112 -- Name: asset_stackId_idx; Type: INDEX; Schema: public; Owner: postgres 3113 -- 3114 3115 CREATE INDEX "asset_stackId_idx" ON public.asset USING btree ("stackId"); 3116 3117 3118 -- 3119 -- Name: asset_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3120 -- 3121 3122 CREATE INDEX "asset_updateId_idx" ON public.asset USING btree ("updateId"); 3123 3124 3125 -- 3126 -- Name: clip_index; Type: INDEX; Schema: public; Owner: postgres 3127 -- 3128 3129 CREATE INDEX clip_index ON public.smart_search USING vchordrq (embedding public.vector_cosine_ops) WITH (options=' 3130 residual_quantization = false 3131 [build.internal] 3132 lists = [1] 3133 spherical_centroids = true 3134 build_threads = 4 3135 sampling_factor = 1024 3136 '); 3137 3138 3139 -- 3140 -- Name: cluster_group_request_clusterGroupId_idx; Type: INDEX; Schema: public; Owner: postgres 3141 -- 3142 3143 CREATE INDEX "cluster_group_request_clusterGroupId_idx" ON public.cluster_group_request USING btree ("clusterGroupId"); 3144 3145 3146 -- 3147 -- Name: cluster_group_request_userId_idx; Type: INDEX; Schema: public; Owner: postgres 3148 -- 3149 3150 CREATE INDEX "cluster_group_request_userId_idx" ON public.cluster_group_request USING btree ("userId"); 3151 3152 3153 -- 3154 -- Name: cluster_group_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3155 -- 3156 3157 CREATE INDEX "cluster_group_updateId_idx" ON public.cluster_group USING btree ("updateId"); 3158 3159 3160 -- 3161 -- Name: face_index; Type: INDEX; Schema: public; Owner: postgres 3162 -- 3163 3164 CREATE INDEX face_index ON public.face_search USING vchordrq (embedding public.vector_cosine_ops) WITH (options=' 3165 residual_quantization = false 3166 [build.internal] 3167 lists = [1] 3168 spherical_centroids = true 3169 build_threads = 4 3170 sampling_factor = 1024 3171 '); 3172 3173 3174 -- 3175 -- Name: idx_geodata_places_admin1_name; Type: INDEX; Schema: public; Owner: postgres 3176 -- 3177 3178 CREATE INDEX idx_geodata_places_admin1_name ON public.geodata_places USING gin (public.f_unaccent(("admin1Name")::text) public.gin_trgm_ops); 3179 3180 3181 -- 3182 -- Name: idx_geodata_places_admin2_name; Type: INDEX; Schema: public; Owner: postgres 3183 -- 3184 3185 CREATE INDEX idx_geodata_places_admin2_name ON public.geodata_places USING gin (public.f_unaccent(("admin2Name")::text) public.gin_trgm_ops); 3186 3187 3188 -- 3189 -- Name: idx_geodata_places_alternate_names; Type: INDEX; Schema: public; Owner: postgres 3190 -- 3191 3192 CREATE INDEX idx_geodata_places_alternate_names ON public.geodata_places USING gin (public.f_unaccent(("alternateNames")::text) public.gin_trgm_ops); 3193 3194 3195 -- 3196 -- Name: idx_geodata_places_name; Type: INDEX; Schema: public; Owner: postgres 3197 -- 3198 3199 CREATE INDEX idx_geodata_places_name ON public.geodata_places USING gin (public.f_unaccent((name)::text) public.gin_trgm_ops); 3200 3201 3202 -- 3203 -- Name: idx_ocr_search_text; Type: INDEX; Schema: public; Owner: postgres 3204 -- 3205 3206 CREATE INDEX idx_ocr_search_text ON public.ocr_search USING gin (public.f_unaccent(text) public.gin_trgm_ops); 3207 3208 3209 -- 3210 -- Name: idx_person_name_trigram; Type: INDEX; Schema: public; Owner: postgres 3211 -- 3212 3213 CREATE INDEX idx_person_name_trigram ON public.person USING gin (public.f_unaccent((name)::text) public.gin_trgm_ops); 3214 3215 3216 -- 3217 -- Name: integrity_report_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 3218 -- 3219 3220 CREATE INDEX "integrity_report_assetId_idx" ON public.integrity_report USING btree ("assetId"); 3221 3222 3223 -- 3224 -- Name: integrity_report_fileAssetId_idx; Type: INDEX; Schema: public; Owner: postgres 3225 -- 3226 3227 CREATE INDEX "integrity_report_fileAssetId_idx" ON public.integrity_report USING btree ("fileAssetId"); 3228 3229 3230 -- 3231 -- Name: library_ownerId_idx; Type: INDEX; Schema: public; Owner: postgres 3232 -- 3233 3234 CREATE INDEX "library_ownerId_idx" ON public.library USING btree ("ownerId"); 3235 3236 3237 -- 3238 -- Name: library_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3239 -- 3240 3241 CREATE INDEX "library_updateId_idx" ON public.library USING btree ("updateId"); 3242 3243 3244 -- 3245 -- Name: memory_asset_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 3246 -- 3247 3248 CREATE INDEX "memory_asset_assetId_idx" ON public.memory_asset USING btree ("assetId"); 3249 3250 3251 -- 3252 -- Name: memory_asset_audit_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 3253 -- 3254 3255 CREATE INDEX "memory_asset_audit_assetId_idx" ON public.memory_asset_audit USING btree ("assetId"); 3256 3257 3258 -- 3259 -- Name: memory_asset_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 3260 -- 3261 3262 CREATE INDEX "memory_asset_audit_deletedAt_idx" ON public.memory_asset_audit USING btree ("deletedAt"); 3263 3264 3265 -- 3266 -- Name: memory_asset_audit_memoryId_idx; Type: INDEX; Schema: public; Owner: postgres 3267 -- 3268 3269 CREATE INDEX "memory_asset_audit_memoryId_idx" ON public.memory_asset_audit USING btree ("memoryId"); 3270 3271 3272 -- 3273 -- Name: memory_asset_memoriesId_idx; Type: INDEX; Schema: public; Owner: postgres 3274 -- 3275 3276 CREATE INDEX "memory_asset_memoriesId_idx" ON public.memory_asset USING btree ("memoriesId"); 3277 3278 3279 -- 3280 -- Name: memory_asset_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3281 -- 3282 3283 CREATE INDEX "memory_asset_updateId_idx" ON public.memory_asset USING btree ("updateId"); 3284 3285 3286 -- 3287 -- Name: memory_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 3288 -- 3289 3290 CREATE INDEX "memory_audit_deletedAt_idx" ON public.memory_audit USING btree ("deletedAt"); 3291 3292 3293 -- 3294 -- Name: memory_audit_memoryId_idx; Type: INDEX; Schema: public; Owner: postgres 3295 -- 3296 3297 CREATE INDEX "memory_audit_memoryId_idx" ON public.memory_audit USING btree ("memoryId"); 3298 3299 3300 -- 3301 -- Name: memory_audit_userId_idx; Type: INDEX; Schema: public; Owner: postgres 3302 -- 3303 3304 CREATE INDEX "memory_audit_userId_idx" ON public.memory_audit USING btree ("userId"); 3305 3306 3307 -- 3308 -- Name: memory_ownerId_idx; Type: INDEX; Schema: public; Owner: postgres 3309 -- 3310 3311 CREATE INDEX "memory_ownerId_idx" ON public.memory USING btree ("ownerId"); 3312 3313 3314 -- 3315 -- Name: memory_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3316 -- 3317 3318 CREATE INDEX "memory_updateId_idx" ON public.memory USING btree ("updateId"); 3319 3320 3321 -- 3322 -- Name: notification_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3323 -- 3324 3325 CREATE INDEX "notification_updateId_idx" ON public.notification USING btree ("updateId"); 3326 3327 3328 -- 3329 -- Name: notification_userId_idx; Type: INDEX; Schema: public; Owner: postgres 3330 -- 3331 3332 CREATE INDEX "notification_userId_idx" ON public.notification USING btree ("userId"); 3333 3334 3335 -- 3336 -- Name: partner_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 3337 -- 3338 3339 CREATE INDEX "partner_audit_deletedAt_idx" ON public.partner_audit USING btree ("deletedAt"); 3340 3341 3342 -- 3343 -- Name: partner_audit_sharedById_idx; Type: INDEX; Schema: public; Owner: postgres 3344 -- 3345 3346 CREATE INDEX "partner_audit_sharedById_idx" ON public.partner_audit USING btree ("sharedById"); 3347 3348 3349 -- 3350 -- Name: partner_audit_sharedWithId_idx; Type: INDEX; Schema: public; Owner: postgres 3351 -- 3352 3353 CREATE INDEX "partner_audit_sharedWithId_idx" ON public.partner_audit USING btree ("sharedWithId"); 3354 3355 3356 -- 3357 -- Name: partner_createId_idx; Type: INDEX; Schema: public; Owner: postgres 3358 -- 3359 3360 CREATE INDEX "partner_createId_idx" ON public.partner USING btree ("createId"); 3361 3362 3363 -- 3364 -- Name: partner_sharedWithId_idx; Type: INDEX; Schema: public; Owner: postgres 3365 -- 3366 3367 CREATE INDEX "partner_sharedWithId_idx" ON public.partner USING btree ("sharedWithId"); 3368 3369 3370 -- 3371 -- Name: partner_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3372 -- 3373 3374 CREATE INDEX "partner_updateId_idx" ON public.partner USING btree ("updateId"); 3375 3376 3377 -- 3378 -- Name: person_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 3379 -- 3380 3381 CREATE INDEX "person_audit_deletedAt_idx" ON public.person_audit USING btree ("deletedAt"); 3382 3383 3384 -- 3385 -- Name: person_audit_ownerId_idx; Type: INDEX; Schema: public; Owner: postgres 3386 -- 3387 3388 CREATE INDEX "person_audit_ownerId_idx" ON public.person_audit USING btree ("ownerId"); 3389 3390 3391 -- 3392 -- Name: person_audit_personGroupId_idx; Type: INDEX; Schema: public; Owner: postgres 3393 -- 3394 3395 CREATE INDEX "person_audit_personGroupId_idx" ON public.person_audit USING btree ("personGroupId"); 3396 3397 3398 -- 3399 -- Name: person_faceAssetId_idx; Type: INDEX; Schema: public; Owner: postgres 3400 -- 3401 3402 CREATE INDEX "person_faceAssetId_idx" ON public.person USING btree ("faceAssetId"); 3403 3404 3405 -- 3406 -- Name: person_group_audit_clusterGroupId_idx; Type: INDEX; Schema: public; Owner: postgres 3407 -- 3408 3409 CREATE INDEX "person_group_audit_clusterGroupId_idx" ON public.person_group_audit USING btree ("clusterGroupId"); 3410 3411 3412 -- 3413 -- Name: person_group_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 3414 -- 3415 3416 CREATE INDEX "person_group_audit_deletedAt_idx" ON public.person_group_audit USING btree ("deletedAt"); 3417 3418 3419 -- 3420 -- Name: person_group_audit_personGroupId_idx; Type: INDEX; Schema: public; Owner: postgres 3421 -- 3422 3423 CREATE INDEX "person_group_audit_personGroupId_idx" ON public.person_group_audit USING btree ("personGroupId"); 3424 3425 3426 -- 3427 -- Name: person_group_clusterGroupId_idx; Type: INDEX; Schema: public; Owner: postgres 3428 -- 3429 3430 CREATE INDEX "person_group_clusterGroupId_idx" ON public.person_group USING btree ("clusterGroupId"); 3431 3432 3433 -- 3434 -- Name: person_group_createId_idx; Type: INDEX; Schema: public; Owner: postgres 3435 -- 3436 3437 CREATE INDEX "person_group_createId_idx" ON public.person_group USING btree ("createId"); 3438 3439 3440 -- 3441 -- Name: person_group_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3442 -- 3443 3444 CREATE INDEX "person_group_updateId_idx" ON public.person_group USING btree ("updateId"); 3445 3446 3447 -- 3448 -- Name: person_personGroupId_idx; Type: INDEX; Schema: public; Owner: postgres 3449 -- 3450 3451 CREATE INDEX "person_personGroupId_idx" ON public.person USING btree ("personGroupId"); 3452 3453 3454 -- 3455 -- Name: person_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3456 -- 3457 3458 CREATE INDEX "person_updateId_idx" ON public.person USING btree ("updateId"); 3459 3460 3461 -- 3462 -- Name: plugin_method_pluginId_idx; Type: INDEX; Schema: public; Owner: postgres 3463 -- 3464 3465 CREATE INDEX "plugin_method_pluginId_idx" ON public.plugin_method USING btree ("pluginId"); 3466 3467 3468 -- 3469 -- Name: plugin_name_idx; Type: INDEX; Schema: public; Owner: postgres 3470 -- 3471 3472 CREATE INDEX plugin_name_idx ON public.plugin USING btree (name); 3473 3474 3475 -- 3476 -- Name: session_oauthSid_idx; Type: INDEX; Schema: public; Owner: postgres 3477 -- 3478 3479 CREATE INDEX "session_oauthSid_idx" ON public.session USING btree ("oauthSid"); 3480 3481 3482 -- 3483 -- Name: session_parentId_idx; Type: INDEX; Schema: public; Owner: postgres 3484 -- 3485 3486 CREATE INDEX "session_parentId_idx" ON public.session USING btree ("parentId"); 3487 3488 3489 -- 3490 -- Name: session_sync_checkpoint_sessionId_idx; Type: INDEX; Schema: public; Owner: postgres 3491 -- 3492 3493 CREATE INDEX "session_sync_checkpoint_sessionId_idx" ON public.session_sync_checkpoint USING btree ("sessionId"); 3494 3495 3496 -- 3497 -- Name: session_sync_checkpoint_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3498 -- 3499 3500 CREATE INDEX "session_sync_checkpoint_updateId_idx" ON public.session_sync_checkpoint USING btree ("updateId"); 3501 3502 3503 -- 3504 -- Name: session_token_idx; Type: INDEX; Schema: public; Owner: postgres 3505 -- 3506 3507 CREATE INDEX session_token_idx ON public.session USING btree (token); 3508 3509 3510 -- 3511 -- Name: session_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3512 -- 3513 3514 CREATE INDEX "session_updateId_idx" ON public.session USING btree ("updateId"); 3515 3516 3517 -- 3518 -- Name: session_userId_idx; Type: INDEX; Schema: public; Owner: postgres 3519 -- 3520 3521 CREATE INDEX "session_userId_idx" ON public.session USING btree ("userId"); 3522 3523 3524 -- 3525 -- Name: shared_link_albumId_idx; Type: INDEX; Schema: public; Owner: postgres 3526 -- 3527 3528 CREATE INDEX "shared_link_albumId_idx" ON public.shared_link USING btree ("albumId"); 3529 3530 3531 -- 3532 -- Name: shared_link_asset_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 3533 -- 3534 3535 CREATE INDEX "shared_link_asset_assetId_idx" ON public.shared_link_asset USING btree ("assetId"); 3536 3537 3538 -- 3539 -- Name: shared_link_asset_sharedLinkId_idx; Type: INDEX; Schema: public; Owner: postgres 3540 -- 3541 3542 CREATE INDEX "shared_link_asset_sharedLinkId_idx" ON public.shared_link_asset USING btree ("sharedLinkId"); 3543 3544 3545 -- 3546 -- Name: shared_link_key_idx; Type: INDEX; Schema: public; Owner: postgres 3547 -- 3548 3549 CREATE INDEX shared_link_key_idx ON public.shared_link USING btree (key); 3550 3551 3552 -- 3553 -- Name: shared_link_userId_idx; Type: INDEX; Schema: public; Owner: postgres 3554 -- 3555 3556 CREATE INDEX "shared_link_userId_idx" ON public.shared_link USING btree ("userId"); 3557 3558 3559 -- 3560 -- Name: stack_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 3561 -- 3562 3563 CREATE INDEX "stack_audit_deletedAt_idx" ON public.stack_audit USING btree ("deletedAt"); 3564 3565 3566 -- 3567 -- Name: stack_ownerId_idx; Type: INDEX; Schema: public; Owner: postgres 3568 -- 3569 3570 CREATE INDEX "stack_ownerId_idx" ON public.stack USING btree ("ownerId"); 3571 3572 3573 -- 3574 -- Name: stack_primaryAssetId_idx; Type: INDEX; Schema: public; Owner: postgres 3575 -- 3576 3577 CREATE INDEX "stack_primaryAssetId_idx" ON public.stack USING btree ("primaryAssetId"); 3578 3579 3580 -- 3581 -- Name: tag_asset_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 3582 -- 3583 3584 CREATE INDEX "tag_asset_assetId_idx" ON public.tag_asset USING btree ("assetId"); 3585 3586 3587 -- 3588 -- Name: tag_asset_assetId_tagId_idx; Type: INDEX; Schema: public; Owner: postgres 3589 -- 3590 3591 CREATE INDEX "tag_asset_assetId_tagId_idx" ON public.tag_asset USING btree ("assetId", "tagId"); 3592 3593 3594 -- 3595 -- Name: tag_asset_tagId_idx; Type: INDEX; Schema: public; Owner: postgres 3596 -- 3597 3598 CREATE INDEX "tag_asset_tagId_idx" ON public.tag_asset USING btree ("tagId"); 3599 3600 3601 -- 3602 -- Name: tag_closure_id_ancestor_idx; Type: INDEX; Schema: public; Owner: postgres 3603 -- 3604 3605 CREATE INDEX tag_closure_id_ancestor_idx ON public.tag_closure USING btree (id_ancestor); 3606 3607 3608 -- 3609 -- Name: tag_closure_id_descendant_idx; Type: INDEX; Schema: public; Owner: postgres 3610 -- 3611 3612 CREATE INDEX tag_closure_id_descendant_idx ON public.tag_closure USING btree (id_descendant); 3613 3614 3615 -- 3616 -- Name: tag_parentId_idx; Type: INDEX; Schema: public; Owner: postgres 3617 -- 3618 3619 CREATE INDEX "tag_parentId_idx" ON public.tag USING btree ("parentId"); 3620 3621 3622 -- 3623 -- Name: tag_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3624 -- 3625 3626 CREATE INDEX "tag_updateId_idx" ON public.tag USING btree ("updateId"); 3627 3628 3629 -- 3630 -- Name: user_audit_deletedAt_idx; Type: INDEX; Schema: public; Owner: postgres 3631 -- 3632 3633 CREATE INDEX "user_audit_deletedAt_idx" ON public.user_audit USING btree ("deletedAt"); 3634 3635 3636 -- 3637 -- Name: user_clusterGroupId_idx; Type: INDEX; Schema: public; Owner: postgres 3638 -- 3639 3640 CREATE INDEX "user_clusterGroupId_idx" ON public."user" USING btree ("clusterGroupId"); 3641 3642 3643 -- 3644 -- Name: user_updateId_idx; Type: INDEX; Schema: public; Owner: postgres 3645 -- 3646 3647 CREATE INDEX "user_updateId_idx" ON public."user" USING btree ("updateId"); 3648 3649 3650 -- 3651 -- Name: user_updatedAt_id_idx; Type: INDEX; Schema: public; Owner: postgres 3652 -- 3653 3654 CREATE INDEX "user_updatedAt_id_idx" ON public."user" USING btree ("updatedAt", id); 3655 3656 3657 -- 3658 -- Name: video_stream_session_assetId_idx; Type: INDEX; Schema: public; Owner: postgres 3659 -- 3660 3661 CREATE INDEX "video_stream_session_assetId_idx" ON public.video_stream_session USING btree ("assetId"); 3662 3663 3664 -- 3665 -- Name: video_stream_session_expiresAt_idx; Type: INDEX; Schema: public; Owner: postgres 3666 -- 3667 3668 CREATE INDEX "video_stream_session_expiresAt_idx" ON public.video_stream_session USING btree ("expiresAt"); 3669 3670 3671 -- 3672 -- Name: video_stream_variant_sessionId_bitrate_resolution_codec_idx; Type: INDEX; Schema: public; Owner: postgres 3673 -- 3674 3675 CREATE UNIQUE INDEX "video_stream_variant_sessionId_bitrate_resolution_codec_idx" ON public.video_stream_variant USING btree ("sessionId", bitrate, resolution, codec); 3676 3677 3678 -- 3679 -- Name: workflow_log_workflowId_idx; Type: INDEX; Schema: public; Owner: postgres 3680 -- 3681 3682 CREATE INDEX "workflow_log_workflowId_idx" ON public.workflow_log USING btree ("workflowId"); 3683 3684 3685 -- 3686 -- Name: workflow_log_workflowStepId_idx; Type: INDEX; Schema: public; Owner: postgres 3687 -- 3688 3689 CREATE INDEX "workflow_log_workflowStepId_idx" ON public.workflow_log USING btree ("workflowStepId"); 3690 3691 3692 -- 3693 -- Name: workflow_ownerId_idx; Type: INDEX; Schema: public; Owner: postgres 3694 -- 3695 3696 CREATE INDEX "workflow_ownerId_idx" ON public.workflow USING btree ("ownerId"); 3697 3698 3699 -- 3700 -- Name: workflow_step_pluginMethodId_idx; Type: INDEX; Schema: public; Owner: postgres 3701 -- 3702 3703 CREATE INDEX "workflow_step_pluginMethodId_idx" ON public.workflow_step USING btree ("pluginMethodId"); 3704 3705 3706 -- 3707 -- Name: workflow_step_workflowId_idx; Type: INDEX; Schema: public; Owner: postgres 3708 -- 3709 3710 CREATE INDEX "workflow_step_workflowId_idx" ON public.workflow_step USING btree ("workflowId"); 3711 3712 3713 -- 3714 -- Name: activity activity_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3715 -- 3716 3717 CREATE TRIGGER "activity_updatedAt" BEFORE UPDATE ON public.activity FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3718 3719 3720 -- 3721 -- Name: album_asset album_asset_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 3722 -- 3723 3724 CREATE TRIGGER album_asset_delete_audit AFTER DELETE ON public.album_asset REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() <= 1)) EXECUTE FUNCTION public.album_asset_delete_audit(); 3725 3726 3727 -- 3728 -- Name: album_asset album_asset_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3729 -- 3730 3731 CREATE TRIGGER "album_asset_updatedAt" BEFORE UPDATE ON public.album_asset FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3732 3733 3734 -- 3735 -- Name: album album_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3736 -- 3737 3738 CREATE TRIGGER "album_updatedAt" BEFORE UPDATE ON public.album FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3739 3740 3741 -- 3742 -- Name: album_user album_user_after_insert; Type: TRIGGER; Schema: public; Owner: postgres 3743 -- 3744 3745 CREATE TRIGGER album_user_after_insert AFTER INSERT ON public.album_user REFERENCING NEW TABLE AS inserted_rows FOR EACH STATEMENT EXECUTE FUNCTION public.album_user_after_insert(); 3746 3747 3748 -- 3749 -- Name: album_user album_user_delete; Type: TRIGGER; Schema: public; Owner: postgres 3750 -- 3751 3752 CREATE TRIGGER album_user_delete AFTER DELETE ON public.album_user REFERENCING OLD TABLE AS old FOR EACH ROW EXECUTE FUNCTION public.album_user_delete(); 3753 3754 3755 -- 3756 -- Name: album_user album_user_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 3757 -- 3758 3759 CREATE TRIGGER album_user_delete_audit AFTER DELETE ON public.album_user REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() <= 1)) EXECUTE FUNCTION public.album_user_delete_audit(); 3760 3761 3762 -- 3763 -- Name: album_user album_user_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3764 -- 3765 3766 CREATE TRIGGER "album_user_updatedAt" BEFORE UPDATE ON public.album_user FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3767 3768 3769 -- 3770 -- Name: api_key api_key_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3771 -- 3772 3773 CREATE TRIGGER "api_key_updatedAt" BEFORE UPDATE ON public.api_key FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3774 3775 3776 -- 3777 -- Name: asset asset_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 3778 -- 3779 3780 CREATE TRIGGER asset_delete_audit AFTER DELETE ON public.asset REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.asset_delete_audit(); 3781 3782 3783 -- 3784 -- Name: asset_edit asset_edit_audit; Type: TRIGGER; Schema: public; Owner: postgres 3785 -- 3786 3787 CREATE TRIGGER asset_edit_audit AFTER DELETE ON public.asset_edit REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.asset_edit_audit(); 3788 3789 3790 -- 3791 -- Name: asset_edit asset_edit_delete; Type: TRIGGER; Schema: public; Owner: postgres 3792 -- 3793 3794 CREATE TRIGGER asset_edit_delete AFTER DELETE ON public.asset_edit REFERENCING OLD TABLE AS deleted_edit FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.asset_edit_delete(); 3795 3796 3797 -- 3798 -- Name: asset_edit asset_edit_insert; Type: TRIGGER; Schema: public; Owner: postgres 3799 -- 3800 3801 CREATE TRIGGER asset_edit_insert AFTER INSERT ON public.asset_edit REFERENCING NEW TABLE AS inserted_edit FOR EACH STATEMENT EXECUTE FUNCTION public.asset_edit_insert(); 3802 3803 3804 -- 3805 -- Name: asset_edit asset_edit_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3806 -- 3807 3808 CREATE TRIGGER "asset_edit_updatedAt" BEFORE UPDATE ON public.asset_edit FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3809 3810 3811 -- 3812 -- Name: asset_exif asset_exif_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3813 -- 3814 3815 CREATE TRIGGER "asset_exif_updatedAt" BEFORE UPDATE ON public.asset_exif FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3816 3817 3818 -- 3819 -- Name: asset_face asset_face_audit; Type: TRIGGER; Schema: public; Owner: postgres 3820 -- 3821 3822 CREATE TRIGGER asset_face_audit AFTER DELETE ON public.asset_face REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.asset_face_audit(); 3823 3824 3825 -- 3826 -- Name: asset_face asset_face_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3827 -- 3828 3829 CREATE TRIGGER "asset_face_updatedAt" BEFORE UPDATE ON public.asset_face FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3830 3831 3832 -- 3833 -- Name: asset_file asset_file_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3834 -- 3835 3836 CREATE TRIGGER "asset_file_updatedAt" BEFORE UPDATE ON public.asset_file FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3837 3838 3839 -- 3840 -- Name: asset_metadata asset_metadata_audit; Type: TRIGGER; Schema: public; Owner: postgres 3841 -- 3842 3843 CREATE TRIGGER asset_metadata_audit AFTER DELETE ON public.asset_metadata REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.asset_metadata_audit(); 3844 3845 3846 -- 3847 -- Name: asset_metadata asset_metadata_updated_at; Type: TRIGGER; Schema: public; Owner: postgres 3848 -- 3849 3850 CREATE TRIGGER asset_metadata_updated_at BEFORE UPDATE ON public.asset_metadata FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3851 3852 3853 -- 3854 -- Name: asset_ocr asset_ocr_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 3855 -- 3856 3857 CREATE TRIGGER asset_ocr_delete_audit AFTER DELETE ON public.asset_ocr REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.asset_ocr_delete_audit(); 3858 3859 3860 -- 3861 -- Name: asset_ocr asset_ocr_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3862 -- 3863 3864 CREATE TRIGGER "asset_ocr_updatedAt" BEFORE UPDATE ON public.asset_ocr FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3865 3866 3867 -- 3868 -- Name: asset asset_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3869 -- 3870 3871 CREATE TRIGGER "asset_updatedAt" BEFORE UPDATE ON public.asset FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3872 3873 3874 -- 3875 -- Name: cluster_group cluster_group_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3876 -- 3877 3878 CREATE TRIGGER "cluster_group_updatedAt" BEFORE UPDATE ON public.cluster_group FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3879 3880 3881 -- 3882 -- Name: library library_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3883 -- 3884 3885 CREATE TRIGGER "library_updatedAt" BEFORE UPDATE ON public.library FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3886 3887 3888 -- 3889 -- Name: memory_asset memory_asset_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 3890 -- 3891 3892 CREATE TRIGGER memory_asset_delete_audit AFTER DELETE ON public.memory_asset REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() <= 1)) EXECUTE FUNCTION public.memory_asset_delete_audit(); 3893 3894 3895 -- 3896 -- Name: memory_asset memory_asset_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3897 -- 3898 3899 CREATE TRIGGER "memory_asset_updatedAt" BEFORE UPDATE ON public.memory_asset FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3900 3901 3902 -- 3903 -- Name: memory memory_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 3904 -- 3905 3906 CREATE TRIGGER memory_delete_audit AFTER DELETE ON public.memory REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.memory_delete_audit(); 3907 3908 3909 -- 3910 -- Name: memory memory_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3911 -- 3912 3913 CREATE TRIGGER "memory_updatedAt" BEFORE UPDATE ON public.memory FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3914 3915 3916 -- 3917 -- Name: notification notification_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3918 -- 3919 3920 CREATE TRIGGER "notification_updatedAt" BEFORE UPDATE ON public.notification FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3921 3922 3923 -- 3924 -- Name: partner partner_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 3925 -- 3926 3927 CREATE TRIGGER partner_delete_audit AFTER DELETE ON public.partner REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.partner_delete_audit(); 3928 3929 3930 -- 3931 -- Name: partner partner_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3932 -- 3933 3934 CREATE TRIGGER "partner_updatedAt" BEFORE UPDATE ON public.partner FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3935 3936 3937 -- 3938 -- Name: person person_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 3939 -- 3940 3941 CREATE TRIGGER person_delete_audit AFTER DELETE ON public.person REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() <= 1)) EXECUTE FUNCTION public.person_delete_audit(); 3942 3943 3944 -- 3945 -- Name: person_group person_group_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 3946 -- 3947 3948 CREATE TRIGGER person_group_delete_audit AFTER DELETE ON public.person_group REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.person_group_delete_audit(); 3949 3950 3951 -- 3952 -- Name: person_group person_group_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3953 -- 3954 3955 CREATE TRIGGER "person_group_updatedAt" BEFORE UPDATE ON public.person_group FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3956 3957 3958 -- 3959 -- Name: person person_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3960 -- 3961 3962 CREATE TRIGGER "person_updatedAt" BEFORE UPDATE ON public.person FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3963 3964 3965 -- 3966 -- Name: session_sync_checkpoint session_sync_checkpoint_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3967 -- 3968 3969 CREATE TRIGGER "session_sync_checkpoint_updatedAt" BEFORE UPDATE ON public.session_sync_checkpoint FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3970 3971 3972 -- 3973 -- Name: session session_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3974 -- 3975 3976 CREATE TRIGGER "session_updatedAt" BEFORE UPDATE ON public.session FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3977 3978 3979 -- 3980 -- Name: stack stack_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 3981 -- 3982 3983 CREATE TRIGGER stack_delete_audit AFTER DELETE ON public.stack REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.stack_delete_audit(); 3984 3985 3986 -- 3987 -- Name: stack stack_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3988 -- 3989 3990 CREATE TRIGGER "stack_updatedAt" BEFORE UPDATE ON public.stack FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3991 3992 3993 -- 3994 -- Name: tag tag_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 3995 -- 3996 3997 CREATE TRIGGER "tag_updatedAt" BEFORE UPDATE ON public.tag FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 3998 3999 4000 -- 4001 -- Name: user user_delete_audit; Type: TRIGGER; Schema: public; Owner: postgres 4002 -- 4003 4004 CREATE TRIGGER user_delete_audit AFTER DELETE ON public."user" REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.user_delete_audit(); 4005 4006 4007 -- 4008 -- Name: user_metadata user_metadata_audit; Type: TRIGGER; Schema: public; Owner: postgres 4009 -- 4010 4011 CREATE TRIGGER user_metadata_audit AFTER DELETE ON public.user_metadata REFERENCING OLD TABLE AS old FOR EACH STATEMENT WHEN ((pg_trigger_depth() = 0)) EXECUTE FUNCTION public.user_metadata_audit(); 4012 4013 4014 -- 4015 -- Name: user_metadata user_metadata_updated_at; Type: TRIGGER; Schema: public; Owner: postgres 4016 -- 4017 4018 CREATE TRIGGER user_metadata_updated_at BEFORE UPDATE ON public.user_metadata FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 4019 4020 4021 -- 4022 -- Name: user user_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 4023 -- 4024 4025 CREATE TRIGGER "user_updatedAt" BEFORE UPDATE ON public."user" FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 4026 4027 4028 -- 4029 -- Name: workflow workflow_updatedAt; Type: TRIGGER; Schema: public; Owner: postgres 4030 -- 4031 4032 CREATE TRIGGER "workflow_updatedAt" BEFORE UPDATE ON public.workflow FOR EACH ROW EXECUTE FUNCTION public.updated_at(); 4033 4034 4035 -- 4036 -- Name: activity activity_albumId_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4037 -- 4038 4039 ALTER TABLE ONLY public.activity 4040 ADD CONSTRAINT "activity_albumId_assetId_fkey" FOREIGN KEY ("albumId", "assetId") REFERENCES public.album_asset("albumId", "assetId") ON DELETE CASCADE; 4041 4042 4043 -- 4044 -- Name: activity activity_albumId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4045 -- 4046 4047 ALTER TABLE ONLY public.activity 4048 ADD CONSTRAINT "activity_albumId_fkey" FOREIGN KEY ("albumId") REFERENCES public.album(id) ON UPDATE CASCADE ON DELETE CASCADE; 4049 4050 4051 -- 4052 -- Name: activity activity_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4053 -- 4054 4055 ALTER TABLE ONLY public.activity 4056 ADD CONSTRAINT "activity_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4057 4058 4059 -- 4060 -- Name: activity activity_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4061 -- 4062 4063 ALTER TABLE ONLY public.activity 4064 ADD CONSTRAINT "activity_userId_fkey" FOREIGN KEY ("userId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4065 4066 4067 -- 4068 -- Name: album album_albumThumbnailAssetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4069 -- 4070 4071 ALTER TABLE ONLY public.album 4072 ADD CONSTRAINT "album_albumThumbnailAssetId_fkey" FOREIGN KEY ("albumThumbnailAssetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE SET NULL; 4073 4074 4075 -- 4076 -- Name: album_asset album_asset_albumId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4077 -- 4078 4079 ALTER TABLE ONLY public.album_asset 4080 ADD CONSTRAINT "album_asset_albumId_fkey" FOREIGN KEY ("albumId") REFERENCES public.album(id) ON UPDATE CASCADE ON DELETE CASCADE; 4081 4082 4083 -- 4084 -- Name: album_asset album_asset_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4085 -- 4086 4087 ALTER TABLE ONLY public.album_asset 4088 ADD CONSTRAINT "album_asset_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4089 4090 4091 -- 4092 -- Name: album_asset_audit album_asset_audit_albumId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4093 -- 4094 4095 ALTER TABLE ONLY public.album_asset_audit 4096 ADD CONSTRAINT "album_asset_audit_albumId_fkey" FOREIGN KEY ("albumId") REFERENCES public.album(id) ON UPDATE CASCADE ON DELETE CASCADE; 4097 4098 4099 -- 4100 -- Name: album_user album_user_albumId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4101 -- 4102 4103 ALTER TABLE ONLY public.album_user 4104 ADD CONSTRAINT "album_user_albumId_fkey" FOREIGN KEY ("albumId") REFERENCES public.album(id) ON UPDATE CASCADE ON DELETE CASCADE; 4105 4106 4107 -- 4108 -- Name: album_user album_user_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4109 -- 4110 4111 ALTER TABLE ONLY public.album_user 4112 ADD CONSTRAINT "album_user_userId_fkey" FOREIGN KEY ("userId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4113 4114 4115 -- 4116 -- Name: api_key api_key_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4117 -- 4118 4119 ALTER TABLE ONLY public.api_key 4120 ADD CONSTRAINT "api_key_userId_fkey" FOREIGN KEY ("userId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4121 4122 4123 -- 4124 -- Name: asset_audio asset_audio_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4125 -- 4126 4127 ALTER TABLE ONLY public.asset_audio 4128 ADD CONSTRAINT "asset_audio_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON DELETE CASCADE; 4129 4130 4131 -- 4132 -- Name: asset_edit asset_edit_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4133 -- 4134 4135 ALTER TABLE ONLY public.asset_edit 4136 ADD CONSTRAINT "asset_edit_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4137 4138 4139 -- 4140 -- Name: asset_exif asset_exif_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4141 -- 4142 4143 ALTER TABLE ONLY public.asset_exif 4144 ADD CONSTRAINT "asset_exif_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON DELETE CASCADE; 4145 4146 4147 -- 4148 -- Name: asset_face asset_face_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4149 -- 4150 4151 ALTER TABLE ONLY public.asset_face 4152 ADD CONSTRAINT "asset_face_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4153 4154 4155 -- 4156 -- Name: asset_face asset_face_personGroupId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4157 -- 4158 4159 ALTER TABLE ONLY public.asset_face 4160 ADD CONSTRAINT "asset_face_personGroupId_fkey" FOREIGN KEY ("personGroupId") REFERENCES public.person_group(id) ON UPDATE CASCADE ON DELETE SET NULL; 4161 4162 4163 -- 4164 -- Name: asset_file asset_file_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4165 -- 4166 4167 ALTER TABLE ONLY public.asset_file 4168 ADD CONSTRAINT "asset_file_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4169 4170 4171 -- 4172 -- Name: asset_job_status asset_job_status_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4173 -- 4174 4175 ALTER TABLE ONLY public.asset_job_status 4176 ADD CONSTRAINT "asset_job_status_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4177 4178 4179 -- 4180 -- Name: asset_keyframe asset_keyframe_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4181 -- 4182 4183 ALTER TABLE ONLY public.asset_keyframe 4184 ADD CONSTRAINT "asset_keyframe_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON DELETE CASCADE; 4185 4186 4187 -- 4188 -- Name: asset asset_libraryId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4189 -- 4190 4191 ALTER TABLE ONLY public.asset 4192 ADD CONSTRAINT "asset_libraryId_fkey" FOREIGN KEY ("libraryId") REFERENCES public.library(id) ON UPDATE CASCADE ON DELETE CASCADE; 4193 4194 4195 -- 4196 -- Name: asset asset_livePhotoVideoId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4197 -- 4198 4199 ALTER TABLE ONLY public.asset 4200 ADD CONSTRAINT "asset_livePhotoVideoId_fkey" FOREIGN KEY ("livePhotoVideoId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE SET NULL; 4201 4202 4203 -- 4204 -- Name: asset_metadata asset_metadata_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4205 -- 4206 4207 ALTER TABLE ONLY public.asset_metadata 4208 ADD CONSTRAINT "asset_metadata_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4209 4210 4211 -- 4212 -- Name: asset_ocr asset_ocr_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4213 -- 4214 4215 ALTER TABLE ONLY public.asset_ocr 4216 ADD CONSTRAINT "asset_ocr_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4217 4218 4219 -- 4220 -- Name: asset asset_ownerId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4221 -- 4222 4223 ALTER TABLE ONLY public.asset 4224 ADD CONSTRAINT "asset_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4225 4226 4227 -- 4228 -- Name: asset asset_stackId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4229 -- 4230 4231 ALTER TABLE ONLY public.asset 4232 ADD CONSTRAINT "asset_stackId_fkey" FOREIGN KEY ("stackId") REFERENCES public.stack(id) ON UPDATE CASCADE ON DELETE SET NULL; 4233 4234 4235 -- 4236 -- Name: asset_video asset_video_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4237 -- 4238 4239 ALTER TABLE ONLY public.asset_video 4240 ADD CONSTRAINT "asset_video_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON DELETE CASCADE; 4241 4242 4243 -- 4244 -- Name: cluster_group_request cluster_group_request_clusterGroupId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4245 -- 4246 4247 ALTER TABLE ONLY public.cluster_group_request 4248 ADD CONSTRAINT "cluster_group_request_clusterGroupId_fkey" FOREIGN KEY ("clusterGroupId") REFERENCES public.cluster_group(id) ON UPDATE CASCADE ON DELETE CASCADE; 4249 4250 4251 -- 4252 -- Name: cluster_group_request cluster_group_request_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4253 -- 4254 4255 ALTER TABLE ONLY public.cluster_group_request 4256 ADD CONSTRAINT "cluster_group_request_userId_fkey" FOREIGN KEY ("userId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4257 4258 4259 -- 4260 -- Name: face_search face_search_faceId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4261 -- 4262 4263 ALTER TABLE ONLY public.face_search 4264 ADD CONSTRAINT "face_search_faceId_fkey" FOREIGN KEY ("faceId") REFERENCES public.asset_face(id) ON DELETE CASCADE; 4265 4266 4267 -- 4268 -- Name: integrity_report integrity_report_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4269 -- 4270 4271 ALTER TABLE ONLY public.integrity_report 4272 ADD CONSTRAINT "integrity_report_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4273 4274 4275 -- 4276 -- Name: integrity_report integrity_report_fileAssetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4277 -- 4278 4279 ALTER TABLE ONLY public.integrity_report 4280 ADD CONSTRAINT "integrity_report_fileAssetId_fkey" FOREIGN KEY ("fileAssetId") REFERENCES public.asset_file(id) ON UPDATE CASCADE ON DELETE CASCADE; 4281 4282 4283 -- 4284 -- Name: library library_ownerId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4285 -- 4286 4287 ALTER TABLE ONLY public.library 4288 ADD CONSTRAINT "library_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4289 4290 4291 -- 4292 -- Name: memory_asset memory_asset_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4293 -- 4294 4295 ALTER TABLE ONLY public.memory_asset 4296 ADD CONSTRAINT "memory_asset_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4297 4298 4299 -- 4300 -- Name: memory_asset_audit memory_asset_audit_memoryId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4301 -- 4302 4303 ALTER TABLE ONLY public.memory_asset_audit 4304 ADD CONSTRAINT "memory_asset_audit_memoryId_fkey" FOREIGN KEY ("memoryId") REFERENCES public.memory(id) ON UPDATE CASCADE ON DELETE CASCADE; 4305 4306 4307 -- 4308 -- Name: memory_asset memory_asset_memoriesId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4309 -- 4310 4311 ALTER TABLE ONLY public.memory_asset 4312 ADD CONSTRAINT "memory_asset_memoriesId_fkey" FOREIGN KEY ("memoriesId") REFERENCES public.memory(id) ON UPDATE CASCADE ON DELETE CASCADE; 4313 4314 4315 -- 4316 -- Name: memory memory_ownerId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4317 -- 4318 4319 ALTER TABLE ONLY public.memory 4320 ADD CONSTRAINT "memory_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4321 4322 4323 -- 4324 -- Name: notification notification_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4325 -- 4326 4327 ALTER TABLE ONLY public.notification 4328 ADD CONSTRAINT "notification_userId_fkey" FOREIGN KEY ("userId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4329 4330 4331 -- 4332 -- Name: ocr_search ocr_search_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4333 -- 4334 4335 ALTER TABLE ONLY public.ocr_search 4336 ADD CONSTRAINT "ocr_search_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4337 4338 4339 -- 4340 -- Name: partner partner_sharedById_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4341 -- 4342 4343 ALTER TABLE ONLY public.partner 4344 ADD CONSTRAINT "partner_sharedById_fkey" FOREIGN KEY ("sharedById") REFERENCES public."user"(id) ON DELETE CASCADE; 4345 4346 4347 -- 4348 -- Name: partner partner_sharedWithId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4349 -- 4350 4351 ALTER TABLE ONLY public.partner 4352 ADD CONSTRAINT "partner_sharedWithId_fkey" FOREIGN KEY ("sharedWithId") REFERENCES public."user"(id) ON DELETE CASCADE; 4353 4354 4355 -- 4356 -- Name: person person_faceAssetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4357 -- 4358 4359 ALTER TABLE ONLY public.person 4360 ADD CONSTRAINT "person_faceAssetId_fkey" FOREIGN KEY ("faceAssetId") REFERENCES public.asset_face(id) ON DELETE SET NULL; 4361 4362 4363 -- 4364 -- Name: person_group person_group_clusterGroupId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4365 -- 4366 4367 ALTER TABLE ONLY public.person_group 4368 ADD CONSTRAINT "person_group_clusterGroupId_fkey" FOREIGN KEY ("clusterGroupId") REFERENCES public.cluster_group(id) ON UPDATE CASCADE ON DELETE CASCADE; 4369 4370 4371 -- 4372 -- Name: person person_ownerId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4373 -- 4374 4375 ALTER TABLE ONLY public.person 4376 ADD CONSTRAINT "person_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4377 4378 4379 -- 4380 -- Name: person person_personGroupId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4381 -- 4382 4383 ALTER TABLE ONLY public.person 4384 ADD CONSTRAINT "person_personGroupId_fkey" FOREIGN KEY ("personGroupId") REFERENCES public.person_group(id) ON UPDATE CASCADE ON DELETE CASCADE; 4385 4386 4387 -- 4388 -- Name: plugin_method plugin_method_pluginId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4389 -- 4390 4391 ALTER TABLE ONLY public.plugin_method 4392 ADD CONSTRAINT "plugin_method_pluginId_fkey" FOREIGN KEY ("pluginId") REFERENCES public.plugin(id) ON UPDATE CASCADE ON DELETE CASCADE; 4393 4394 4395 -- 4396 -- Name: session session_parentId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4397 -- 4398 4399 ALTER TABLE ONLY public.session 4400 ADD CONSTRAINT "session_parentId_fkey" FOREIGN KEY ("parentId") REFERENCES public.session(id) ON UPDATE CASCADE ON DELETE CASCADE; 4401 4402 4403 -- 4404 -- Name: session_sync_checkpoint session_sync_checkpoint_sessionId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4405 -- 4406 4407 ALTER TABLE ONLY public.session_sync_checkpoint 4408 ADD CONSTRAINT "session_sync_checkpoint_sessionId_fkey" FOREIGN KEY ("sessionId") REFERENCES public.session(id) ON UPDATE CASCADE ON DELETE CASCADE; 4409 4410 4411 -- 4412 -- Name: session session_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4413 -- 4414 4415 ALTER TABLE ONLY public.session 4416 ADD CONSTRAINT "session_userId_fkey" FOREIGN KEY ("userId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4417 4418 4419 -- 4420 -- Name: shared_link shared_link_albumId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4421 -- 4422 4423 ALTER TABLE ONLY public.shared_link 4424 ADD CONSTRAINT "shared_link_albumId_fkey" FOREIGN KEY ("albumId") REFERENCES public.album(id) ON UPDATE CASCADE ON DELETE CASCADE; 4425 4426 4427 -- 4428 -- Name: shared_link_asset shared_link_asset_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4429 -- 4430 4431 ALTER TABLE ONLY public.shared_link_asset 4432 ADD CONSTRAINT "shared_link_asset_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4433 4434 4435 -- 4436 -- Name: shared_link_asset shared_link_asset_sharedLinkId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4437 -- 4438 4439 ALTER TABLE ONLY public.shared_link_asset 4440 ADD CONSTRAINT "shared_link_asset_sharedLinkId_fkey" FOREIGN KEY ("sharedLinkId") REFERENCES public.shared_link(id) ON UPDATE CASCADE ON DELETE CASCADE; 4441 4442 4443 -- 4444 -- Name: shared_link shared_link_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4445 -- 4446 4447 ALTER TABLE ONLY public.shared_link 4448 ADD CONSTRAINT "shared_link_userId_fkey" FOREIGN KEY ("userId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4449 4450 4451 -- 4452 -- Name: smart_search smart_search_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4453 -- 4454 4455 ALTER TABLE ONLY public.smart_search 4456 ADD CONSTRAINT "smart_search_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON DELETE CASCADE; 4457 4458 4459 -- 4460 -- Name: stack stack_ownerId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4461 -- 4462 4463 ALTER TABLE ONLY public.stack 4464 ADD CONSTRAINT "stack_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4465 4466 4467 -- 4468 -- Name: stack stack_primaryAssetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4469 -- 4470 4471 ALTER TABLE ONLY public.stack 4472 ADD CONSTRAINT "stack_primaryAssetId_fkey" FOREIGN KEY ("primaryAssetId") REFERENCES public.asset(id); 4473 4474 4475 -- 4476 -- Name: tag_asset tag_asset_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4477 -- 4478 4479 ALTER TABLE ONLY public.tag_asset 4480 ADD CONSTRAINT "tag_asset_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON UPDATE CASCADE ON DELETE CASCADE; 4481 4482 4483 -- 4484 -- Name: tag_asset tag_asset_tagId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4485 -- 4486 4487 ALTER TABLE ONLY public.tag_asset 4488 ADD CONSTRAINT "tag_asset_tagId_fkey" FOREIGN KEY ("tagId") REFERENCES public.tag(id) ON UPDATE CASCADE ON DELETE CASCADE; 4489 4490 4491 -- 4492 -- Name: tag_closure tag_closure_id_ancestor_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4493 -- 4494 4495 ALTER TABLE ONLY public.tag_closure 4496 ADD CONSTRAINT tag_closure_id_ancestor_fkey FOREIGN KEY (id_ancestor) REFERENCES public.tag(id) ON DELETE CASCADE; 4497 4498 4499 -- 4500 -- Name: tag_closure tag_closure_id_descendant_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4501 -- 4502 4503 ALTER TABLE ONLY public.tag_closure 4504 ADD CONSTRAINT tag_closure_id_descendant_fkey FOREIGN KEY (id_descendant) REFERENCES public.tag(id) ON DELETE CASCADE; 4505 4506 4507 -- 4508 -- Name: tag tag_parentId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4509 -- 4510 4511 ALTER TABLE ONLY public.tag 4512 ADD CONSTRAINT "tag_parentId_fkey" FOREIGN KEY ("parentId") REFERENCES public.tag(id) ON DELETE CASCADE; 4513 4514 4515 -- 4516 -- Name: tag tag_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4517 -- 4518 4519 ALTER TABLE ONLY public.tag 4520 ADD CONSTRAINT "tag_userId_fkey" FOREIGN KEY ("userId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4521 4522 4523 -- 4524 -- Name: user user_clusterGroupId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4525 -- 4526 4527 ALTER TABLE ONLY public."user" 4528 ADD CONSTRAINT "user_clusterGroupId_fkey" FOREIGN KEY ("clusterGroupId") REFERENCES public.cluster_group(id) ON UPDATE CASCADE; 4529 4530 4531 -- 4532 -- Name: user_metadata user_metadata_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4533 -- 4534 4535 ALTER TABLE ONLY public.user_metadata 4536 ADD CONSTRAINT "user_metadata_userId_fkey" FOREIGN KEY ("userId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4537 4538 4539 -- 4540 -- Name: video_stream_segment video_stream_segment_variantId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4541 -- 4542 4543 ALTER TABLE ONLY public.video_stream_segment 4544 ADD CONSTRAINT "video_stream_segment_variantId_fkey" FOREIGN KEY ("variantId") REFERENCES public.video_stream_variant(id) ON DELETE CASCADE; 4545 4546 4547 -- 4548 -- Name: video_stream_session video_stream_session_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4549 -- 4550 4551 ALTER TABLE ONLY public.video_stream_session 4552 ADD CONSTRAINT "video_stream_session_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.asset(id) ON DELETE CASCADE; 4553 4554 4555 -- 4556 -- Name: video_stream_variant video_stream_variant_sessionId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4557 -- 4558 4559 ALTER TABLE ONLY public.video_stream_variant 4560 ADD CONSTRAINT "video_stream_variant_sessionId_fkey" FOREIGN KEY ("sessionId") REFERENCES public.video_stream_session(id) ON DELETE CASCADE; 4561 4562 4563 -- 4564 -- Name: workflow_log workflow_log_workflowId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4565 -- 4566 4567 ALTER TABLE ONLY public.workflow_log 4568 ADD CONSTRAINT "workflow_log_workflowId_fkey" FOREIGN KEY ("workflowId") REFERENCES public.workflow(id) ON UPDATE CASCADE ON DELETE CASCADE; 4569 4570 4571 -- 4572 -- Name: workflow_log workflow_log_workflowStepId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4573 -- 4574 4575 ALTER TABLE ONLY public.workflow_log 4576 ADD CONSTRAINT "workflow_log_workflowStepId_fkey" FOREIGN KEY ("workflowStepId") REFERENCES public.workflow_step(id) ON UPDATE CASCADE ON DELETE SET NULL; 4577 4578 4579 -- 4580 -- Name: workflow workflow_ownerId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4581 -- 4582 4583 ALTER TABLE ONLY public.workflow 4584 ADD CONSTRAINT "workflow_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES public."user"(id) ON UPDATE CASCADE ON DELETE CASCADE; 4585 4586 4587 -- 4588 -- Name: workflow_step workflow_step_pluginMethodId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4589 -- 4590 4591 ALTER TABLE ONLY public.workflow_step 4592 ADD CONSTRAINT "workflow_step_pluginMethodId_fkey" FOREIGN KEY ("pluginMethodId") REFERENCES public.plugin_method(id) ON UPDATE CASCADE ON DELETE CASCADE; 4593 4594 4595 -- 4596 -- Name: workflow_step workflow_step_workflowId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres 4597 -- 4598 4599 ALTER TABLE ONLY public.workflow_step 4600 ADD CONSTRAINT "workflow_step_workflowId_fkey" FOREIGN KEY ("workflowId") REFERENCES public.workflow(id) ON UPDATE CASCADE ON DELETE CASCADE; 4601 4602 4603 -- 4604 -- PostgreSQL database dump complete 4605 -- 4606 4607 \unrestrict mjMyY2YEVBfWGabnjdRqEcQmimigWbvovifIDg4VxfkA30tCaxYDjnokejkP5XZ 4608