1 -- Copyright (C) The Arvados Authors. All rights reserved.
3 -- SPDX-License-Identifier: AGPL-3.0
5 SET statement_timeout = 0;
6 SET client_encoding = 'UTF8';
7 SET standard_conforming_strings = on;
8 SELECT pg_catalog.set_config('search_path', '', false);
9 SET check_function_bodies = false;
10 SET xmloption = content;
11 SET client_min_messages = warning;
14 -- Name: pg_trgm; Type: EXTENSION; Schema: -; Owner: -
17 CREATE EXTENSION IF NOT EXISTS pg_trgm WITH SCHEMA public;
21 -- Name: EXTENSION pg_trgm; Type: COMMENT; Schema: -; Owner: -
24 -- COMMENT ON EXTENSION pg_trgm IS 'text similarity measurement and index searching based on trigrams';
28 -- Name: compute_permission_subgraph(character varying, character varying, integer, character varying); Type: FUNCTION; Schema: public; Owner: -
31 CREATE FUNCTION public.compute_permission_subgraph(perm_origin_uuid character varying, starting_uuid character varying, starting_perm integer, perm_edge_id character varying) RETURNS TABLE(user_uuid character varying, target_uuid character varying, val integer, traverse_owned boolean)
35 /* The purpose of this function is to compute the permissions for a
36 subgraph of the database, starting from a given edge. The newly
37 computed permissions are used to add and remove rows from the main
40 perm_origin_uuid: The object that 'gets' the permission.
42 starting_uuid: The starting object the permission applies to.
44 starting_perm: The permission that perm_origin_uuid 'has' on
45 starting_uuid One of 1, 2, 3 for can_read,
46 can_write, can_manage respectively, or 0 to revoke
49 perm_edge_id: Identifies the permission edge that is being updated.
50 Changes of ownership, this is starting_uuid.
51 For links, this is the uuid of the link object.
52 This is used to override the edge value in the database
53 with starting_perm. This is necessary when revoking
54 permissions because the update happens before edge is
58 /* Starting from starting_uuid, determine the set of objects that
59 could be affected by this permission change.
61 Note: We don't traverse users unless it is an "identity"
62 permission (permission origin is self).
64 perm_from_start(perm_origin_uuid, target_uuid, val, traverse_owned) as (
67 traverse_graph(origin_uuid, target_uuid, val, traverse_owned, starting_set) as (
69 values (perm_origin_uuid, starting_uuid, starting_perm,
70 should_traverse_owned(starting_uuid, starting_perm),
71 (perm_origin_uuid = starting_uuid or starting_uuid not like '_____-tpzed-_______________'))
74 (select traverse_graph.origin_uuid,
77 case (edges.edge_id = perm_edge_id)
78 when true then starting_perm
83 should_traverse_owned(edges.head_uuid, edges.val),
85 from permission_graph_edges as edges, traverse_graph
86 where traverse_graph.target_uuid = edges.tail_uuid
87 and (edges.tail_uuid like '_____-j7d0g-_______________' or
88 traverse_graph.starting_set)))
89 select traverse_graph.origin_uuid, target_uuid, max(val) as val, bool_or(traverse_owned) as traverse_owned from traverse_graph
90 group by (traverse_graph.origin_uuid, target_uuid)
93 /* Find other inbound edges that grant permissions to 'targets' in
94 perm_from_start, and compute permissions that originate from
97 This is necessary for two reasons:
99 1) Other users may have access to a subset of the objects
100 through other permission links than the one we started from.
101 If we don't recompute them, their permission will get dropped.
103 2) There may be more than one path through which a user gets
104 permission to an object. For example, a user owns a project
105 and also shares it can_read with a group the user belongs
106 to. adding the can_read link must not overwrite the existing
107 can_manage permission granted by ownership.
109 additional_perms(perm_origin_uuid, target_uuid, val, traverse_owned) as (
112 traverse_graph(origin_uuid, target_uuid, val, traverse_owned, starting_set) as (
114 select edges.tail_uuid as origin_uuid, edges.head_uuid as target_uuid, edges.val,
115 should_traverse_owned(edges.head_uuid, edges.val),
116 edges.head_uuid like '_____-j7d0g-_______________'
117 from permission_graph_edges as edges
118 where edges.edge_id != perm_edge_id and
119 edges.tail_uuid not in (select target_uuid from perm_from_start where target_uuid like '_____-j7d0g-_______________') and
120 edges.head_uuid in (select target_uuid from perm_from_start)
123 (select traverse_graph.origin_uuid,
126 case (edges.edge_id = perm_edge_id)
127 when true then starting_perm
132 should_traverse_owned(edges.head_uuid, edges.val),
134 from permission_graph_edges as edges, traverse_graph
135 where traverse_graph.target_uuid = edges.tail_uuid
136 and (edges.tail_uuid like '_____-j7d0g-_______________' or
137 traverse_graph.starting_set)))
138 select traverse_graph.origin_uuid, target_uuid, max(val) as val, bool_or(traverse_owned) as traverse_owned from traverse_graph
139 group by (traverse_graph.origin_uuid, target_uuid)
142 /* Combine the permissions computed in the first two phases. */
143 all_perms(perm_origin_uuid, target_uuid, val, traverse_owned) as (
144 select * from perm_from_start
146 select * from additional_perms
149 /* The actual query that produces rows to be added or removed
150 from the materialized_permissions table. This is the clever
155 * For every group, the materialized_permissions lists all users
156 that can access to that group.
158 * The all_perms subquery has computed permissions on on a set of
159 objects for all inbound "origins", which are users or groups.
161 * Permissions through groups are transitive.
165 1) The materialized_permissions table declares that user X has permission N on group Y
166 2) The all_perms result has determined group Y has permission M on object Z
167 3) Therefore, user X has permission min(N, M) on object Z
169 This allows us to efficiently determine the set of users that
170 have permissions on the subset of objects, without having to
171 follow the chain of permission back up to find those users.
173 In addition, because users always have permission on themselves, this
174 query also makes sure those permission rows are always
177 select v.user_uuid, v.target_uuid, max(v.perm_level), bool_or(v.traverse_owned) from
180 least(u.val, m.perm_level) as perm_level,
182 from all_perms as u, materialized_permissions as m
183 where u.perm_origin_uuid = m.target_uuid AND m.traverse_owned
184 AND (m.user_uuid = m.target_uuid or m.target_uuid not like '_____-tpzed-_______________')
186 select target_uuid as user_uuid, target_uuid, 3, true
188 where all_perms.target_uuid like '_____-tpzed-_______________') as v
189 group by v.user_uuid, v.target_uuid
194 -- Name: project_subtree_with_is_frozen(character varying, boolean); Type: FUNCTION; Schema: public; Owner: -
197 CREATE FUNCTION public.project_subtree_with_is_frozen(starting_uuid character varying, starting_is_frozen boolean) RETURNS TABLE(uuid character varying, is_frozen boolean)
201 project_subtree(uuid, is_frozen) as (
202 values (starting_uuid, starting_is_frozen)
204 select groups.uuid, project_subtree.is_frozen or groups.frozen_by_uuid is not null
205 from groups join project_subtree on (groups.owner_uuid = project_subtree.uuid)
207 select uuid, is_frozen from project_subtree;
212 -- Name: project_subtree_with_trash_at(character varying, timestamp without time zone); Type: FUNCTION; Schema: public; Owner: -
215 CREATE FUNCTION public.project_subtree_with_trash_at(starting_uuid character varying, starting_trash_at timestamp without time zone) RETURNS TABLE(target_uuid character varying, trash_at timestamp without time zone)
218 /* Starting from a project, recursively traverse all the projects
219 underneath it and return a set of project uuids and trash_at times
220 (may be null). The initial trash_at can be a timestamp or null.
221 The trash_at time propagates downward to groups it owns, i.e. when a
222 group is trashed, everything underneath it in the ownership
223 hierarchy is also considered trashed. However, this is fact is
224 recorded in the trashed_groups table, not by updating trash_at field
228 project_subtree(uuid, trash_at) as (
229 values (starting_uuid, starting_trash_at)
231 select groups.uuid, LEAST(project_subtree.trash_at, groups.trash_at)
232 from groups join project_subtree on (groups.owner_uuid = project_subtree.uuid)
234 select uuid, trash_at from project_subtree;
239 -- Name: should_traverse_owned(character varying, integer); Type: FUNCTION; Schema: public; Owner: -
242 CREATE FUNCTION public.should_traverse_owned(starting_uuid character varying, starting_perm integer) RETURNS boolean
243 LANGUAGE sql IMMUTABLE
245 /* Helper function. Determines if permission on an object implies
246 transitive permission to things the object owns. This is always
247 true for groups, but only true for users when the permission level
250 select starting_uuid like '_____-j7d0g-_______________' or
251 (starting_uuid like '_____-tpzed-_______________' and starting_perm >= 3);
255 SET default_tablespace = '';
258 -- Name: api_client_authorizations; Type: TABLE; Schema: public; Owner: -
261 CREATE TABLE public.api_client_authorizations (
263 api_token character varying(255) NOT NULL,
264 api_client_id bigint NOT NULL,
265 user_id bigint NOT NULL,
266 created_by_ip_address character varying(255),
267 last_used_by_ip_address character varying(255),
268 last_used_at timestamp without time zone,
269 expires_at timestamp without time zone,
270 created_at timestamp without time zone NOT NULL,
271 updated_at timestamp without time zone NOT NULL,
272 default_owner_uuid character varying(255),
273 scopes text DEFAULT '["all"]'::text,
274 uuid character varying(255) NOT NULL
279 -- Name: api_client_authorizations_id_seq; Type: SEQUENCE; Schema: public; Owner: -
282 CREATE SEQUENCE public.api_client_authorizations_id_seq
291 -- Name: api_client_authorizations_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
294 ALTER SEQUENCE public.api_client_authorizations_id_seq OWNED BY public.api_client_authorizations.id;
298 -- Name: api_clients; Type: TABLE; Schema: public; Owner: -
301 CREATE TABLE public.api_clients (
303 uuid character varying(255),
304 owner_uuid character varying(255),
305 modified_by_client_uuid character varying(255),
306 modified_by_user_uuid character varying(255),
307 modified_at timestamp without time zone,
308 name character varying(255),
309 url_prefix character varying(255),
310 created_at timestamp without time zone NOT NULL,
311 updated_at timestamp without time zone NOT NULL,
312 is_trusted boolean DEFAULT false
317 -- Name: api_clients_id_seq; Type: SEQUENCE; Schema: public; Owner: -
320 CREATE SEQUENCE public.api_clients_id_seq
329 -- Name: api_clients_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
332 ALTER SEQUENCE public.api_clients_id_seq OWNED BY public.api_clients.id;
336 -- Name: ar_internal_metadata; Type: TABLE; Schema: public; Owner: -
339 CREATE TABLE public.ar_internal_metadata (
340 key character varying NOT NULL,
341 value character varying,
342 created_at timestamp without time zone NOT NULL,
343 updated_at timestamp without time zone NOT NULL
348 -- Name: authorized_keys; Type: TABLE; Schema: public; Owner: -
351 CREATE TABLE public.authorized_keys (
353 uuid character varying(255) NOT NULL,
354 owner_uuid character varying(255) NOT NULL,
355 modified_by_client_uuid character varying(255),
356 modified_by_user_uuid character varying(255),
357 modified_at timestamp without time zone,
358 name character varying(255),
359 key_type character varying(255),
360 authorized_user_uuid character varying(255),
362 expires_at timestamp without time zone,
363 created_at timestamp without time zone NOT NULL,
364 updated_at timestamp without time zone NOT NULL
369 -- Name: authorized_keys_id_seq; Type: SEQUENCE; Schema: public; Owner: -
372 CREATE SEQUENCE public.authorized_keys_id_seq
381 -- Name: authorized_keys_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
384 ALTER SEQUENCE public.authorized_keys_id_seq OWNED BY public.authorized_keys.id;
388 -- Name: collections; Type: TABLE; Schema: public; Owner: -
391 CREATE TABLE public.collections (
393 owner_uuid character varying(255),
394 created_at timestamp without time zone NOT NULL,
395 modified_by_client_uuid character varying(255),
396 modified_by_user_uuid character varying(255),
397 modified_at timestamp without time zone,
398 portable_data_hash character varying(255),
399 replication_desired integer,
400 replication_confirmed_at timestamp without time zone,
401 replication_confirmed integer,
402 updated_at timestamp without time zone NOT NULL,
403 uuid character varying(255),
405 name character varying(255),
406 description character varying(524288),
408 delete_at timestamp without time zone,
410 trash_at timestamp without time zone,
411 is_trashed boolean DEFAULT false NOT NULL,
412 storage_classes_desired jsonb DEFAULT '["default"]'::jsonb,
413 storage_classes_confirmed jsonb DEFAULT '[]'::jsonb,
414 storage_classes_confirmed_at timestamp without time zone,
415 current_version_uuid character varying,
416 version integer DEFAULT 1 NOT NULL,
417 preserve_version boolean DEFAULT false,
418 file_count integer DEFAULT 0 NOT NULL,
419 file_size_total bigint DEFAULT 0 NOT NULL
424 -- Name: collections_id_seq; Type: SEQUENCE; Schema: public; Owner: -
427 CREATE SEQUENCE public.collections_id_seq
436 -- Name: collections_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
439 ALTER SEQUENCE public.collections_id_seq OWNED BY public.collections.id;
443 -- Name: container_requests; Type: TABLE; Schema: public; Owner: -
446 CREATE TABLE public.container_requests (
448 uuid character varying(255),
449 owner_uuid character varying(255),
450 created_at timestamp without time zone NOT NULL,
451 modified_at timestamp without time zone,
452 modified_by_client_uuid character varying(255),
453 modified_by_user_uuid character varying(255),
454 name character varying(255),
457 state character varying(255),
458 requesting_container_uuid character varying(255),
459 container_uuid character varying(255),
460 container_count_max integer,
462 runtime_constraints text,
463 container_image character varying(255),
465 cwd character varying(255),
467 output_path character varying(255),
469 expires_at timestamp without time zone,
471 updated_at timestamp without time zone NOT NULL,
472 container_count integer DEFAULT 0,
473 use_existing boolean DEFAULT true,
474 scheduling_parameters text,
475 output_uuid character varying(255),
476 log_uuid character varying(255),
477 output_name character varying(255) DEFAULT NULL::character varying,
478 output_ttl integer DEFAULT 0 NOT NULL,
479 secret_mounts jsonb DEFAULT '{}'::jsonb,
481 output_storage_classes jsonb DEFAULT '["default"]'::jsonb,
482 output_properties jsonb DEFAULT '{}'::jsonb,
483 cumulative_cost double precision DEFAULT 0.0 NOT NULL
488 -- Name: container_requests_id_seq; Type: SEQUENCE; Schema: public; Owner: -
491 CREATE SEQUENCE public.container_requests_id_seq
500 -- Name: container_requests_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
503 ALTER SEQUENCE public.container_requests_id_seq OWNED BY public.container_requests.id;
507 -- Name: containers; Type: TABLE; Schema: public; Owner: -
510 CREATE TABLE public.containers (
512 uuid character varying(255),
513 owner_uuid character varying(255),
514 created_at timestamp without time zone NOT NULL,
515 modified_at timestamp without time zone,
516 modified_by_client_uuid character varying(255),
517 modified_by_user_uuid character varying(255),
518 state character varying(255),
519 started_at timestamp without time zone,
520 finished_at timestamp without time zone,
521 log character varying(255),
523 cwd character varying(255),
525 output_path character varying(255),
527 runtime_constraints text,
528 output character varying(255),
529 container_image character varying(255),
530 progress double precision,
532 updated_at timestamp without time zone NOT NULL,
534 auth_uuid character varying(255),
535 locked_by_uuid character varying(255),
536 scheduling_parameters text,
537 secret_mounts jsonb DEFAULT '{}'::jsonb,
538 secret_mounts_md5 character varying DEFAULT '99914b932bd37a50b983c5e7c90ae93b'::character varying,
539 runtime_status jsonb DEFAULT '{}'::jsonb,
540 runtime_user_uuid text,
541 runtime_auth_scopes jsonb,
543 lock_count integer DEFAULT 0 NOT NULL,
544 gateway_address character varying,
545 interactive_session_started boolean DEFAULT false NOT NULL,
546 output_storage_classes jsonb DEFAULT '["default"]'::jsonb,
547 output_properties jsonb DEFAULT '{}'::jsonb,
548 cost double precision DEFAULT 0.0 NOT NULL,
549 subrequests_cost double precision DEFAULT 0.0 NOT NULL
554 -- Name: containers_id_seq; Type: SEQUENCE; Schema: public; Owner: -
557 CREATE SEQUENCE public.containers_id_seq
566 -- Name: containers_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
569 ALTER SEQUENCE public.containers_id_seq OWNED BY public.containers.id;
573 -- Name: frozen_groups; Type: TABLE; Schema: public; Owner: -
576 CREATE TABLE public.frozen_groups (
577 uuid character varying
582 -- Name: groups; Type: TABLE; Schema: public; Owner: -
585 CREATE TABLE public.groups (
587 uuid character varying(255),
588 owner_uuid character varying(255),
589 created_at timestamp without time zone NOT NULL,
590 modified_by_client_uuid character varying(255),
591 modified_by_user_uuid character varying(255),
592 modified_at timestamp without time zone,
593 name character varying(255) NOT NULL,
594 description character varying(524288),
595 updated_at timestamp without time zone NOT NULL,
596 group_class character varying(255),
597 trash_at timestamp without time zone,
598 is_trashed boolean DEFAULT false NOT NULL,
599 delete_at timestamp without time zone,
600 properties jsonb DEFAULT '{}'::jsonb,
601 frozen_by_uuid character varying
606 -- Name: groups_id_seq; Type: SEQUENCE; Schema: public; Owner: -
609 CREATE SEQUENCE public.groups_id_seq
618 -- Name: groups_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
621 ALTER SEQUENCE public.groups_id_seq OWNED BY public.groups.id;
625 -- Name: humans; Type: TABLE; Schema: public; Owner: -
628 CREATE TABLE public.humans (
630 uuid character varying(255) NOT NULL,
631 owner_uuid character varying(255) NOT NULL,
632 modified_by_client_uuid character varying(255),
633 modified_by_user_uuid character varying(255),
634 modified_at timestamp without time zone,
636 created_at timestamp without time zone NOT NULL,
637 updated_at timestamp without time zone NOT NULL
642 -- Name: humans_id_seq; Type: SEQUENCE; Schema: public; Owner: -
645 CREATE SEQUENCE public.humans_id_seq
654 -- Name: humans_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
657 ALTER SEQUENCE public.humans_id_seq OWNED BY public.humans.id;
661 -- Name: job_tasks; Type: TABLE; Schema: public; Owner: -
664 CREATE TABLE public.job_tasks (
666 uuid character varying(255),
667 owner_uuid character varying(255),
668 modified_by_client_uuid character varying(255),
669 modified_by_user_uuid character varying(255),
670 modified_at timestamp without time zone,
671 job_uuid character varying(255),
675 progress double precision,
677 created_at timestamp without time zone NOT NULL,
678 updated_at timestamp without time zone NOT NULL,
679 created_by_job_task_uuid character varying(255),
681 started_at timestamp without time zone,
682 finished_at timestamp without time zone
687 -- Name: job_tasks_id_seq; Type: SEQUENCE; Schema: public; Owner: -
690 CREATE SEQUENCE public.job_tasks_id_seq
699 -- Name: job_tasks_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
702 ALTER SEQUENCE public.job_tasks_id_seq OWNED BY public.job_tasks.id;
706 -- Name: job_tasks_qsequence_seq; Type: SEQUENCE; Schema: public; Owner: -
709 CREATE SEQUENCE public.job_tasks_qsequence_seq
718 -- Name: job_tasks_qsequence_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
721 ALTER SEQUENCE public.job_tasks_qsequence_seq OWNED BY public.job_tasks.qsequence;
725 -- Name: jobs; Type: TABLE; Schema: public; Owner: -
728 CREATE TABLE public.jobs (
730 uuid character varying(255),
731 owner_uuid character varying(255),
732 modified_by_client_uuid character varying(255),
733 modified_by_user_uuid character varying(255),
734 modified_at timestamp without time zone,
735 submit_id character varying(255),
736 script character varying(255),
737 script_version character varying(255),
738 script_parameters text,
739 cancelled_by_client_uuid character varying(255),
740 cancelled_by_user_uuid character varying(255),
741 cancelled_at timestamp without time zone,
742 started_at timestamp without time zone,
743 finished_at timestamp without time zone,
746 output character varying(255),
747 created_at timestamp without time zone NOT NULL,
748 updated_at timestamp without time zone NOT NULL,
749 is_locked_by_uuid character varying(255),
750 log character varying(255),
752 runtime_constraints text,
753 nondeterministic boolean,
754 repository character varying(255),
755 supplied_script_version character varying(255),
756 docker_image_locator character varying(255),
757 priority integer DEFAULT 0 NOT NULL,
758 description character varying(524288),
759 state character varying(255),
760 arvados_sdk_version character varying(255),
762 script_parameters_digest character varying(255)
767 -- Name: jobs_id_seq; Type: SEQUENCE; Schema: public; Owner: -
770 CREATE SEQUENCE public.jobs_id_seq
779 -- Name: jobs_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
782 ALTER SEQUENCE public.jobs_id_seq OWNED BY public.jobs.id;
786 -- Name: keep_disks; Type: TABLE; Schema: public; Owner: -
789 CREATE TABLE public.keep_disks (
791 uuid character varying(255) NOT NULL,
792 owner_uuid character varying(255) NOT NULL,
793 modified_by_client_uuid character varying(255),
794 modified_by_user_uuid character varying(255),
795 modified_at timestamp without time zone,
796 ping_secret character varying(255) NOT NULL,
797 node_uuid character varying(255),
798 filesystem_uuid character varying(255),
801 is_readable boolean DEFAULT true NOT NULL,
802 is_writable boolean DEFAULT true NOT NULL,
803 last_read_at timestamp without time zone,
804 last_write_at timestamp without time zone,
805 last_ping_at timestamp without time zone,
806 created_at timestamp without time zone NOT NULL,
807 updated_at timestamp without time zone NOT NULL,
808 keep_service_uuid character varying(255)
813 -- Name: keep_disks_id_seq; Type: SEQUENCE; Schema: public; Owner: -
816 CREATE SEQUENCE public.keep_disks_id_seq
825 -- Name: keep_disks_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
828 ALTER SEQUENCE public.keep_disks_id_seq OWNED BY public.keep_disks.id;
832 -- Name: keep_services; Type: TABLE; Schema: public; Owner: -
835 CREATE TABLE public.keep_services (
837 uuid character varying(255) NOT NULL,
838 owner_uuid character varying(255) NOT NULL,
839 modified_by_client_uuid character varying(255),
840 modified_by_user_uuid character varying(255),
841 modified_at timestamp without time zone,
842 service_host character varying(255),
843 service_port integer,
844 service_ssl_flag boolean,
845 service_type character varying(255),
846 created_at timestamp without time zone NOT NULL,
847 updated_at timestamp without time zone NOT NULL,
848 read_only boolean DEFAULT false NOT NULL
853 -- Name: keep_services_id_seq; Type: SEQUENCE; Schema: public; Owner: -
856 CREATE SEQUENCE public.keep_services_id_seq
865 -- Name: keep_services_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
868 ALTER SEQUENCE public.keep_services_id_seq OWNED BY public.keep_services.id;
872 -- Name: links; Type: TABLE; Schema: public; Owner: -
875 CREATE TABLE public.links (
877 uuid character varying(255),
878 owner_uuid character varying(255),
879 created_at timestamp without time zone NOT NULL,
880 modified_by_client_uuid character varying(255),
881 modified_by_user_uuid character varying(255),
882 modified_at timestamp without time zone,
883 tail_uuid character varying(255),
884 link_class character varying(255),
885 name character varying(255),
886 head_uuid character varying(255),
888 updated_at timestamp without time zone NOT NULL
893 -- Name: links_id_seq; Type: SEQUENCE; Schema: public; Owner: -
896 CREATE SEQUENCE public.links_id_seq
905 -- Name: links_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
908 ALTER SEQUENCE public.links_id_seq OWNED BY public.links.id;
912 -- Name: logs; Type: TABLE; Schema: public; Owner: -
915 CREATE TABLE public.logs (
917 uuid character varying(255),
918 owner_uuid character varying(255),
919 modified_by_client_uuid character varying(255),
920 modified_by_user_uuid character varying(255),
921 object_uuid character varying(255),
922 event_at timestamp without time zone,
923 event_type character varying(255),
926 created_at timestamp without time zone NOT NULL,
927 updated_at timestamp without time zone NOT NULL,
928 modified_at timestamp without time zone,
929 object_owner_uuid character varying(255)
934 -- Name: logs_id_seq; Type: SEQUENCE; Schema: public; Owner: -
937 CREATE SEQUENCE public.logs_id_seq
946 -- Name: logs_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
949 ALTER SEQUENCE public.logs_id_seq OWNED BY public.logs.id;
953 -- Name: materialized_permissions; Type: TABLE; Schema: public; Owner: -
956 CREATE TABLE public.materialized_permissions (
957 user_uuid character varying,
958 target_uuid character varying,
960 traverse_owned boolean
965 -- Name: nodes; Type: TABLE; Schema: public; Owner: -
968 CREATE TABLE public.nodes (
970 uuid character varying(255),
971 owner_uuid character varying(255),
972 created_at timestamp without time zone NOT NULL,
973 modified_by_client_uuid character varying(255),
974 modified_by_user_uuid character varying(255),
975 modified_at timestamp without time zone,
977 hostname character varying(255),
978 domain character varying(255),
979 ip_address character varying(255),
980 first_ping_at timestamp without time zone,
981 last_ping_at timestamp without time zone,
983 updated_at timestamp without time zone NOT NULL,
985 job_uuid character varying(255)
990 -- Name: nodes_id_seq; Type: SEQUENCE; Schema: public; Owner: -
993 CREATE SEQUENCE public.nodes_id_seq
1002 -- Name: nodes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1005 ALTER SEQUENCE public.nodes_id_seq OWNED BY public.nodes.id;
1009 -- Name: users; Type: TABLE; Schema: public; Owner: -
1012 CREATE TABLE public.users (
1014 uuid character varying(255),
1015 owner_uuid character varying(255) NOT NULL,
1016 created_at timestamp without time zone NOT NULL,
1017 modified_by_client_uuid character varying(255),
1018 modified_by_user_uuid character varying(255),
1019 modified_at timestamp without time zone,
1020 email character varying(255),
1021 first_name character varying(255),
1022 last_name character varying(255),
1023 identity_url character varying(255),
1026 updated_at timestamp without time zone NOT NULL,
1027 default_owner_uuid character varying(255),
1028 is_active boolean DEFAULT false,
1029 username character varying(255),
1030 redirect_to_user_uuid character varying
1035 -- Name: permission_graph_edges; Type: VIEW; Schema: public; Owner: -
1038 CREATE VIEW public.permission_graph_edges AS
1039 SELECT groups.owner_uuid AS tail_uuid,
1040 groups.uuid AS head_uuid,
1042 groups.uuid AS edge_id
1045 SELECT users.owner_uuid AS tail_uuid,
1046 users.uuid AS head_uuid,
1048 users.uuid AS edge_id
1051 SELECT users.uuid AS tail_uuid,
1052 users.uuid AS head_uuid,
1054 ''::character varying AS edge_id
1057 SELECT links.tail_uuid,
1060 WHEN ((links.name)::text = 'can_read'::text) THEN 1
1061 WHEN ((links.name)::text = 'can_login'::text) THEN 1
1062 WHEN ((links.name)::text = 'can_write'::text) THEN 2
1063 WHEN ((links.name)::text = 'can_manage'::text) THEN 3
1066 links.uuid AS edge_id
1068 WHERE ((links.link_class)::text = 'permission'::text);
1072 -- Name: pipeline_instances; Type: TABLE; Schema: public; Owner: -
1075 CREATE TABLE public.pipeline_instances (
1077 uuid character varying(255),
1078 owner_uuid character varying(255),
1079 created_at timestamp without time zone NOT NULL,
1080 modified_by_client_uuid character varying(255),
1081 modified_by_user_uuid character varying(255),
1082 modified_at timestamp without time zone,
1083 pipeline_template_uuid character varying(255),
1084 name character varying(255),
1086 updated_at timestamp without time zone NOT NULL,
1088 state character varying(255),
1089 components_summary text,
1090 started_at timestamp without time zone,
1091 finished_at timestamp without time zone,
1092 description character varying(524288)
1097 -- Name: pipeline_instances_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1100 CREATE SEQUENCE public.pipeline_instances_id_seq
1109 -- Name: pipeline_instances_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1112 ALTER SEQUENCE public.pipeline_instances_id_seq OWNED BY public.pipeline_instances.id;
1116 -- Name: pipeline_templates; Type: TABLE; Schema: public; Owner: -
1119 CREATE TABLE public.pipeline_templates (
1121 uuid character varying(255),
1122 owner_uuid character varying(255),
1123 created_at timestamp without time zone NOT NULL,
1124 modified_by_client_uuid character varying(255),
1125 modified_by_user_uuid character varying(255),
1126 modified_at timestamp without time zone,
1127 name character varying(255),
1129 updated_at timestamp without time zone NOT NULL,
1130 description character varying(524288)
1135 -- Name: pipeline_templates_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1138 CREATE SEQUENCE public.pipeline_templates_id_seq
1147 -- Name: pipeline_templates_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1150 ALTER SEQUENCE public.pipeline_templates_id_seq OWNED BY public.pipeline_templates.id;
1154 -- Name: repositories; Type: TABLE; Schema: public; Owner: -
1157 CREATE TABLE public.repositories (
1159 uuid character varying(255) NOT NULL,
1160 owner_uuid character varying(255) NOT NULL,
1161 modified_by_client_uuid character varying(255),
1162 modified_by_user_uuid character varying(255),
1163 modified_at timestamp without time zone,
1164 name character varying(255),
1165 created_at timestamp without time zone NOT NULL,
1166 updated_at timestamp without time zone NOT NULL
1171 -- Name: repositories_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1174 CREATE SEQUENCE public.repositories_id_seq
1183 -- Name: repositories_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1186 ALTER SEQUENCE public.repositories_id_seq OWNED BY public.repositories.id;
1190 -- Name: schema_migrations; Type: TABLE; Schema: public; Owner: -
1193 CREATE TABLE public.schema_migrations (
1194 version character varying(255) NOT NULL
1199 -- Name: specimens; Type: TABLE; Schema: public; Owner: -
1202 CREATE TABLE public.specimens (
1204 uuid character varying(255),
1205 owner_uuid character varying(255),
1206 created_at timestamp without time zone NOT NULL,
1207 modified_by_client_uuid character varying(255),
1208 modified_by_user_uuid character varying(255),
1209 modified_at timestamp without time zone,
1210 material character varying(255),
1211 updated_at timestamp without time zone NOT NULL,
1217 -- Name: specimens_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1220 CREATE SEQUENCE public.specimens_id_seq
1229 -- Name: specimens_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1232 ALTER SEQUENCE public.specimens_id_seq OWNED BY public.specimens.id;
1236 -- Name: traits; Type: TABLE; Schema: public; Owner: -
1239 CREATE TABLE public.traits (
1241 uuid character varying(255) NOT NULL,
1242 owner_uuid character varying(255) NOT NULL,
1243 modified_by_client_uuid character varying(255),
1244 modified_by_user_uuid character varying(255),
1245 modified_at timestamp without time zone,
1246 name character varying(255),
1248 created_at timestamp without time zone NOT NULL,
1249 updated_at timestamp without time zone NOT NULL
1254 -- Name: traits_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1257 CREATE SEQUENCE public.traits_id_seq
1266 -- Name: traits_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1269 ALTER SEQUENCE public.traits_id_seq OWNED BY public.traits.id;
1273 -- Name: trashed_groups; Type: TABLE; Schema: public; Owner: -
1276 CREATE TABLE public.trashed_groups (
1277 group_uuid character varying,
1278 trash_at timestamp without time zone
1283 -- Name: users_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1286 CREATE SEQUENCE public.users_id_seq
1295 -- Name: users_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1298 ALTER SEQUENCE public.users_id_seq OWNED BY public.users.id;
1302 -- Name: virtual_machines; Type: TABLE; Schema: public; Owner: -
1305 CREATE TABLE public.virtual_machines (
1307 uuid character varying(255) NOT NULL,
1308 owner_uuid character varying(255) NOT NULL,
1309 modified_by_client_uuid character varying(255),
1310 modified_by_user_uuid character varying(255),
1311 modified_at timestamp without time zone,
1312 hostname character varying(255),
1313 created_at timestamp without time zone NOT NULL,
1314 updated_at timestamp without time zone NOT NULL
1319 -- Name: virtual_machines_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1322 CREATE SEQUENCE public.virtual_machines_id_seq
1331 -- Name: virtual_machines_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1334 ALTER SEQUENCE public.virtual_machines_id_seq OWNED BY public.virtual_machines.id;
1338 -- Name: workflows; Type: TABLE; Schema: public; Owner: -
1341 CREATE TABLE public.workflows (
1343 uuid character varying(255),
1344 owner_uuid character varying(255),
1345 created_at timestamp without time zone NOT NULL,
1346 modified_at timestamp without time zone,
1347 modified_by_client_uuid character varying(255),
1348 modified_by_user_uuid character varying(255),
1349 name character varying(255),
1352 updated_at timestamp without time zone NOT NULL
1357 -- Name: workflows_id_seq; Type: SEQUENCE; Schema: public; Owner: -
1360 CREATE SEQUENCE public.workflows_id_seq
1369 -- Name: workflows_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
1372 ALTER SEQUENCE public.workflows_id_seq OWNED BY public.workflows.id;
1376 -- Name: api_client_authorizations id; Type: DEFAULT; Schema: public; Owner: -
1379 ALTER TABLE ONLY public.api_client_authorizations ALTER COLUMN id SET DEFAULT nextval('public.api_client_authorizations_id_seq'::regclass);
1383 -- Name: api_clients id; Type: DEFAULT; Schema: public; Owner: -
1386 ALTER TABLE ONLY public.api_clients ALTER COLUMN id SET DEFAULT nextval('public.api_clients_id_seq'::regclass);
1390 -- Name: authorized_keys id; Type: DEFAULT; Schema: public; Owner: -
1393 ALTER TABLE ONLY public.authorized_keys ALTER COLUMN id SET DEFAULT nextval('public.authorized_keys_id_seq'::regclass);
1397 -- Name: collections id; Type: DEFAULT; Schema: public; Owner: -
1400 ALTER TABLE ONLY public.collections ALTER COLUMN id SET DEFAULT nextval('public.collections_id_seq'::regclass);
1404 -- Name: container_requests id; Type: DEFAULT; Schema: public; Owner: -
1407 ALTER TABLE ONLY public.container_requests ALTER COLUMN id SET DEFAULT nextval('public.container_requests_id_seq'::regclass);
1411 -- Name: containers id; Type: DEFAULT; Schema: public; Owner: -
1414 ALTER TABLE ONLY public.containers ALTER COLUMN id SET DEFAULT nextval('public.containers_id_seq'::regclass);
1418 -- Name: groups id; Type: DEFAULT; Schema: public; Owner: -
1421 ALTER TABLE ONLY public.groups ALTER COLUMN id SET DEFAULT nextval('public.groups_id_seq'::regclass);
1425 -- Name: humans id; Type: DEFAULT; Schema: public; Owner: -
1428 ALTER TABLE ONLY public.humans ALTER COLUMN id SET DEFAULT nextval('public.humans_id_seq'::regclass);
1432 -- Name: job_tasks id; Type: DEFAULT; Schema: public; Owner: -
1435 ALTER TABLE ONLY public.job_tasks ALTER COLUMN id SET DEFAULT nextval('public.job_tasks_id_seq'::regclass);
1439 -- Name: jobs id; Type: DEFAULT; Schema: public; Owner: -
1442 ALTER TABLE ONLY public.jobs ALTER COLUMN id SET DEFAULT nextval('public.jobs_id_seq'::regclass);
1446 -- Name: keep_disks id; Type: DEFAULT; Schema: public; Owner: -
1449 ALTER TABLE ONLY public.keep_disks ALTER COLUMN id SET DEFAULT nextval('public.keep_disks_id_seq'::regclass);
1453 -- Name: keep_services id; Type: DEFAULT; Schema: public; Owner: -
1456 ALTER TABLE ONLY public.keep_services ALTER COLUMN id SET DEFAULT nextval('public.keep_services_id_seq'::regclass);
1460 -- Name: links id; Type: DEFAULT; Schema: public; Owner: -
1463 ALTER TABLE ONLY public.links ALTER COLUMN id SET DEFAULT nextval('public.links_id_seq'::regclass);
1467 -- Name: logs id; Type: DEFAULT; Schema: public; Owner: -
1470 ALTER TABLE ONLY public.logs ALTER COLUMN id SET DEFAULT nextval('public.logs_id_seq'::regclass);
1474 -- Name: nodes id; Type: DEFAULT; Schema: public; Owner: -
1477 ALTER TABLE ONLY public.nodes ALTER COLUMN id SET DEFAULT nextval('public.nodes_id_seq'::regclass);
1481 -- Name: pipeline_instances id; Type: DEFAULT; Schema: public; Owner: -
1484 ALTER TABLE ONLY public.pipeline_instances ALTER COLUMN id SET DEFAULT nextval('public.pipeline_instances_id_seq'::regclass);
1488 -- Name: pipeline_templates id; Type: DEFAULT; Schema: public; Owner: -
1491 ALTER TABLE ONLY public.pipeline_templates ALTER COLUMN id SET DEFAULT nextval('public.pipeline_templates_id_seq'::regclass);
1495 -- Name: repositories id; Type: DEFAULT; Schema: public; Owner: -
1498 ALTER TABLE ONLY public.repositories ALTER COLUMN id SET DEFAULT nextval('public.repositories_id_seq'::regclass);
1502 -- Name: specimens id; Type: DEFAULT; Schema: public; Owner: -
1505 ALTER TABLE ONLY public.specimens ALTER COLUMN id SET DEFAULT nextval('public.specimens_id_seq'::regclass);
1509 -- Name: traits id; Type: DEFAULT; Schema: public; Owner: -
1512 ALTER TABLE ONLY public.traits ALTER COLUMN id SET DEFAULT nextval('public.traits_id_seq'::regclass);
1516 -- Name: users id; Type: DEFAULT; Schema: public; Owner: -
1519 ALTER TABLE ONLY public.users ALTER COLUMN id SET DEFAULT nextval('public.users_id_seq'::regclass);
1523 -- Name: virtual_machines id; Type: DEFAULT; Schema: public; Owner: -
1526 ALTER TABLE ONLY public.virtual_machines ALTER COLUMN id SET DEFAULT nextval('public.virtual_machines_id_seq'::regclass);
1530 -- Name: workflows id; Type: DEFAULT; Schema: public; Owner: -
1533 ALTER TABLE ONLY public.workflows ALTER COLUMN id SET DEFAULT nextval('public.workflows_id_seq'::regclass);
1537 -- Name: api_client_authorizations api_client_authorizations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1540 ALTER TABLE ONLY public.api_client_authorizations
1541 ADD CONSTRAINT api_client_authorizations_pkey PRIMARY KEY (id);
1545 -- Name: api_clients api_clients_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1548 ALTER TABLE ONLY public.api_clients
1549 ADD CONSTRAINT api_clients_pkey PRIMARY KEY (id);
1553 -- Name: ar_internal_metadata ar_internal_metadata_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1556 ALTER TABLE ONLY public.ar_internal_metadata
1557 ADD CONSTRAINT ar_internal_metadata_pkey PRIMARY KEY (key);
1561 -- Name: authorized_keys authorized_keys_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1564 ALTER TABLE ONLY public.authorized_keys
1565 ADD CONSTRAINT authorized_keys_pkey PRIMARY KEY (id);
1569 -- Name: collections collections_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1572 ALTER TABLE ONLY public.collections
1573 ADD CONSTRAINT collections_pkey PRIMARY KEY (id);
1577 -- Name: container_requests container_requests_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1580 ALTER TABLE ONLY public.container_requests
1581 ADD CONSTRAINT container_requests_pkey PRIMARY KEY (id);
1585 -- Name: containers containers_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1588 ALTER TABLE ONLY public.containers
1589 ADD CONSTRAINT containers_pkey PRIMARY KEY (id);
1593 -- Name: groups groups_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1596 ALTER TABLE ONLY public.groups
1597 ADD CONSTRAINT groups_pkey PRIMARY KEY (id);
1601 -- Name: humans humans_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1604 ALTER TABLE ONLY public.humans
1605 ADD CONSTRAINT humans_pkey PRIMARY KEY (id);
1609 -- Name: job_tasks job_tasks_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1612 ALTER TABLE ONLY public.job_tasks
1613 ADD CONSTRAINT job_tasks_pkey PRIMARY KEY (id);
1617 -- Name: jobs jobs_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1620 ALTER TABLE ONLY public.jobs
1621 ADD CONSTRAINT jobs_pkey PRIMARY KEY (id);
1625 -- Name: keep_disks keep_disks_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1628 ALTER TABLE ONLY public.keep_disks
1629 ADD CONSTRAINT keep_disks_pkey PRIMARY KEY (id);
1633 -- Name: keep_services keep_services_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1636 ALTER TABLE ONLY public.keep_services
1637 ADD CONSTRAINT keep_services_pkey PRIMARY KEY (id);
1641 -- Name: links links_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1644 ALTER TABLE ONLY public.links
1645 ADD CONSTRAINT links_pkey PRIMARY KEY (id);
1649 -- Name: logs logs_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1652 ALTER TABLE ONLY public.logs
1653 ADD CONSTRAINT logs_pkey PRIMARY KEY (id);
1657 -- Name: nodes nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1660 ALTER TABLE ONLY public.nodes
1661 ADD CONSTRAINT nodes_pkey PRIMARY KEY (id);
1665 -- Name: pipeline_instances pipeline_instances_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1668 ALTER TABLE ONLY public.pipeline_instances
1669 ADD CONSTRAINT pipeline_instances_pkey PRIMARY KEY (id);
1673 -- Name: pipeline_templates pipeline_templates_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1676 ALTER TABLE ONLY public.pipeline_templates
1677 ADD CONSTRAINT pipeline_templates_pkey PRIMARY KEY (id);
1681 -- Name: repositories repositories_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1684 ALTER TABLE ONLY public.repositories
1685 ADD CONSTRAINT repositories_pkey PRIMARY KEY (id);
1689 -- Name: specimens specimens_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1692 ALTER TABLE ONLY public.specimens
1693 ADD CONSTRAINT specimens_pkey PRIMARY KEY (id);
1697 -- Name: traits traits_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1700 ALTER TABLE ONLY public.traits
1701 ADD CONSTRAINT traits_pkey PRIMARY KEY (id);
1705 -- Name: users users_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1708 ALTER TABLE ONLY public.users
1709 ADD CONSTRAINT users_pkey PRIMARY KEY (id);
1713 -- Name: virtual_machines virtual_machines_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1716 ALTER TABLE ONLY public.virtual_machines
1717 ADD CONSTRAINT virtual_machines_pkey PRIMARY KEY (id);
1721 -- Name: workflows workflows_pkey; Type: CONSTRAINT; Schema: public; Owner: -
1724 ALTER TABLE ONLY public.workflows
1725 ADD CONSTRAINT workflows_pkey PRIMARY KEY (id);
1729 -- Name: api_client_authorizations_search_index; Type: INDEX; Schema: public; Owner: -
1732 CREATE INDEX api_client_authorizations_search_index ON public.api_client_authorizations USING btree (api_token, created_by_ip_address, last_used_by_ip_address, default_owner_uuid, uuid);
1736 -- Name: api_clients_search_index; Type: INDEX; Schema: public; Owner: -
1739 CREATE INDEX api_clients_search_index ON public.api_clients USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, name, url_prefix);
1743 -- Name: authorized_keys_search_index; Type: INDEX; Schema: public; Owner: -
1746 CREATE INDEX authorized_keys_search_index ON public.authorized_keys USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, name, key_type, authorized_user_uuid);
1750 -- Name: collection_index_on_properties; Type: INDEX; Schema: public; Owner: -
1753 CREATE INDEX collection_index_on_properties ON public.collections USING gin (properties);
1757 -- Name: collections_search_index; Type: INDEX; Schema: public; Owner: -
1760 CREATE INDEX collections_search_index ON public.collections USING btree (owner_uuid, modified_by_client_uuid, modified_by_user_uuid, portable_data_hash, uuid, name, current_version_uuid);
1764 -- Name: collections_trgm_text_search_idx; Type: INDEX; Schema: public; Owner: -
1767 CREATE INDEX collections_trgm_text_search_idx ON public.collections USING gin (((((((((((((((((((COALESCE(owner_uuid, ''::character varying))::text || ' '::text) || (COALESCE(modified_by_client_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_user_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(portable_data_hash, ''::character varying))::text) || ' '::text) || (COALESCE(uuid, ''::character varying))::text) || ' '::text) || (COALESCE(name, ''::character varying))::text) || ' '::text) || (COALESCE(description, ''::character varying))::text) || ' '::text) || COALESCE((properties)::text, ''::text)) || ' '::text) || COALESCE(file_names, ''::text))) public.gin_trgm_ops);
1771 -- Name: container_requests_index_on_properties; Type: INDEX; Schema: public; Owner: -
1774 CREATE INDEX container_requests_index_on_properties ON public.container_requests USING gin (properties);
1778 -- Name: container_requests_search_index; Type: INDEX; Schema: public; Owner: -
1781 CREATE INDEX container_requests_search_index ON public.container_requests USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, name, state, requesting_container_uuid, container_uuid, container_image, cwd, output_path, output_uuid, log_uuid, output_name);
1785 -- Name: container_requests_trgm_text_search_idx; Type: INDEX; Schema: public; Owner: -
1788 CREATE INDEX container_requests_trgm_text_search_idx ON public.container_requests USING gin (((((((((((((((((((((((((((((((((((((((((((((COALESCE(uuid, ''::character varying))::text || ' '::text) || (COALESCE(owner_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_client_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_user_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(name, ''::character varying))::text) || ' '::text) || COALESCE(description, ''::text)) || ' '::text) || COALESCE((properties)::text, ''::text)) || ' '::text) || (COALESCE(state, ''::character varying))::text) || ' '::text) || (COALESCE(requesting_container_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(container_uuid, ''::character varying))::text) || ' '::text) || COALESCE(runtime_constraints, ''::text)) || ' '::text) || (COALESCE(container_image, ''::character varying))::text) || ' '::text) || COALESCE(environment, ''::text)) || ' '::text) || (COALESCE(cwd, ''::character varying))::text) || ' '::text) || COALESCE(command, ''::text)) || ' '::text) || (COALESCE(output_path, ''::character varying))::text) || ' '::text) || COALESCE(filters, ''::text)) || ' '::text) || COALESCE(scheduling_parameters, ''::text)) || ' '::text) || (COALESCE(output_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(log_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(output_name, ''::character varying))::text) || ' '::text) || COALESCE((output_properties)::text, ''::text))) public.gin_trgm_ops);
1792 -- Name: containers_search_index; Type: INDEX; Schema: public; Owner: -
1795 CREATE INDEX containers_search_index ON public.containers USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, state, log, cwd, output_path, output, container_image, auth_uuid, locked_by_uuid);
1799 -- Name: group_index_on_properties; Type: INDEX; Schema: public; Owner: -
1802 CREATE INDEX group_index_on_properties ON public.groups USING gin (properties);
1806 -- Name: groups_search_index; Type: INDEX; Schema: public; Owner: -
1809 CREATE INDEX groups_search_index ON public.groups USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, name, group_class, frozen_by_uuid);
1813 -- Name: groups_trgm_text_search_idx; Type: INDEX; Schema: public; Owner: -
1816 CREATE INDEX groups_trgm_text_search_idx ON public.groups USING gin (((((((((((((((((COALESCE(uuid, ''::character varying))::text || ' '::text) || (COALESCE(owner_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_client_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_user_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(name, ''::character varying))::text) || ' '::text) || (COALESCE(description, ''::character varying))::text) || ' '::text) || (COALESCE(group_class, ''::character varying))::text) || ' '::text) || COALESCE((properties)::text, ''::text))) public.gin_trgm_ops);
1820 -- Name: humans_search_index; Type: INDEX; Schema: public; Owner: -
1823 CREATE INDEX humans_search_index ON public.humans USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid);
1827 -- Name: index_api_client_authorizations_on_api_client_id; Type: INDEX; Schema: public; Owner: -
1830 CREATE INDEX index_api_client_authorizations_on_api_client_id ON public.api_client_authorizations USING btree (api_client_id);
1834 -- Name: index_api_client_authorizations_on_api_token; Type: INDEX; Schema: public; Owner: -
1837 CREATE UNIQUE INDEX index_api_client_authorizations_on_api_token ON public.api_client_authorizations USING btree (api_token);
1841 -- Name: index_api_client_authorizations_on_expires_at; Type: INDEX; Schema: public; Owner: -
1844 CREATE INDEX index_api_client_authorizations_on_expires_at ON public.api_client_authorizations USING btree (expires_at);
1848 -- Name: index_api_client_authorizations_on_user_id; Type: INDEX; Schema: public; Owner: -
1851 CREATE INDEX index_api_client_authorizations_on_user_id ON public.api_client_authorizations USING btree (user_id);
1855 -- Name: index_api_client_authorizations_on_uuid; Type: INDEX; Schema: public; Owner: -
1858 CREATE UNIQUE INDEX index_api_client_authorizations_on_uuid ON public.api_client_authorizations USING btree (uuid);
1862 -- Name: index_api_clients_on_created_at; Type: INDEX; Schema: public; Owner: -
1865 CREATE INDEX index_api_clients_on_created_at ON public.api_clients USING btree (created_at);
1869 -- Name: index_api_clients_on_modified_at; Type: INDEX; Schema: public; Owner: -
1872 CREATE INDEX index_api_clients_on_modified_at ON public.api_clients USING btree (modified_at);
1876 -- Name: index_api_clients_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
1879 CREATE INDEX index_api_clients_on_owner_uuid ON public.api_clients USING btree (owner_uuid);
1883 -- Name: index_api_clients_on_uuid; Type: INDEX; Schema: public; Owner: -
1886 CREATE UNIQUE INDEX index_api_clients_on_uuid ON public.api_clients USING btree (uuid);
1890 -- Name: index_authkeys_on_user_and_expires_at; Type: INDEX; Schema: public; Owner: -
1893 CREATE INDEX index_authkeys_on_user_and_expires_at ON public.authorized_keys USING btree (authorized_user_uuid, expires_at);
1897 -- Name: index_authorized_keys_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
1900 CREATE INDEX index_authorized_keys_on_owner_uuid ON public.authorized_keys USING btree (owner_uuid);
1904 -- Name: index_authorized_keys_on_uuid; Type: INDEX; Schema: public; Owner: -
1907 CREATE UNIQUE INDEX index_authorized_keys_on_uuid ON public.authorized_keys USING btree (uuid);
1911 -- Name: index_collections_on_created_at_and_uuid; Type: INDEX; Schema: public; Owner: -
1914 CREATE INDEX index_collections_on_created_at_and_uuid ON public.collections USING btree (created_at, uuid);
1918 -- Name: index_collections_on_current_version_uuid_and_version; Type: INDEX; Schema: public; Owner: -
1921 CREATE UNIQUE INDEX index_collections_on_current_version_uuid_and_version ON public.collections USING btree (current_version_uuid, version);
1925 -- Name: index_collections_on_delete_at; Type: INDEX; Schema: public; Owner: -
1928 CREATE INDEX index_collections_on_delete_at ON public.collections USING btree (delete_at);
1932 -- Name: index_collections_on_is_trashed; Type: INDEX; Schema: public; Owner: -
1935 CREATE INDEX index_collections_on_is_trashed ON public.collections USING btree (is_trashed);
1939 -- Name: index_collections_on_modified_at_and_uuid; Type: INDEX; Schema: public; Owner: -
1942 CREATE INDEX index_collections_on_modified_at_and_uuid ON public.collections USING btree (modified_at, uuid);
1946 -- Name: index_collections_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
1949 CREATE INDEX index_collections_on_owner_uuid ON public.collections USING btree (owner_uuid);
1953 -- Name: index_collections_on_owner_uuid_and_name; Type: INDEX; Schema: public; Owner: -
1956 CREATE UNIQUE INDEX index_collections_on_owner_uuid_and_name ON public.collections USING btree (owner_uuid, name) WHERE ((is_trashed = false) AND ((current_version_uuid)::text = (uuid)::text));
1960 -- Name: index_collections_on_portable_data_hash_and_trash_at; Type: INDEX; Schema: public; Owner: -
1963 CREATE INDEX index_collections_on_portable_data_hash_and_trash_at ON public.collections USING btree (portable_data_hash, trash_at);
1967 -- Name: index_collections_on_trash_at; Type: INDEX; Schema: public; Owner: -
1970 CREATE INDEX index_collections_on_trash_at ON public.collections USING btree (trash_at);
1974 -- Name: index_collections_on_uuid; Type: INDEX; Schema: public; Owner: -
1977 CREATE UNIQUE INDEX index_collections_on_uuid ON public.collections USING btree (uuid);
1981 -- Name: index_container_requests_on_container_uuid; Type: INDEX; Schema: public; Owner: -
1984 CREATE INDEX index_container_requests_on_container_uuid ON public.container_requests USING btree (container_uuid);
1988 -- Name: index_container_requests_on_created_at_and_uuid; Type: INDEX; Schema: public; Owner: -
1991 CREATE INDEX index_container_requests_on_created_at_and_uuid ON public.container_requests USING btree (created_at, uuid);
1995 -- Name: index_container_requests_on_modified_at_and_uuid; Type: INDEX; Schema: public; Owner: -
1998 CREATE INDEX index_container_requests_on_modified_at_and_uuid ON public.container_requests USING btree (modified_at, uuid);
2002 -- Name: index_container_requests_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2005 CREATE INDEX index_container_requests_on_owner_uuid ON public.container_requests USING btree (owner_uuid);
2009 -- Name: index_container_requests_on_requesting_container_uuid; Type: INDEX; Schema: public; Owner: -
2012 CREATE INDEX index_container_requests_on_requesting_container_uuid ON public.container_requests USING btree (requesting_container_uuid);
2016 -- Name: index_container_requests_on_uuid; Type: INDEX; Schema: public; Owner: -
2019 CREATE UNIQUE INDEX index_container_requests_on_uuid ON public.container_requests USING btree (uuid);
2023 -- Name: index_containers_on_auth_uuid; Type: INDEX; Schema: public; Owner: -
2026 CREATE INDEX index_containers_on_auth_uuid ON public.containers USING btree (auth_uuid);
2030 -- Name: index_containers_on_locked_by_uuid_and_priority; Type: INDEX; Schema: public; Owner: -
2033 CREATE INDEX index_containers_on_locked_by_uuid_and_priority ON public.containers USING btree (locked_by_uuid, priority);
2037 -- Name: index_containers_on_locked_by_uuid_and_uuid; Type: INDEX; Schema: public; Owner: -
2040 CREATE INDEX index_containers_on_locked_by_uuid_and_uuid ON public.containers USING btree (locked_by_uuid, uuid);
2044 -- Name: index_containers_on_modified_at_uuid; Type: INDEX; Schema: public; Owner: -
2047 CREATE INDEX index_containers_on_modified_at_uuid ON public.containers USING btree (modified_at DESC, uuid);
2051 -- Name: index_containers_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2054 CREATE INDEX index_containers_on_owner_uuid ON public.containers USING btree (owner_uuid);
2058 -- Name: index_containers_on_queued_state; Type: INDEX; Schema: public; Owner: -
2061 CREATE INDEX index_containers_on_queued_state ON public.containers USING btree (state, ((priority > 0)));
2065 -- Name: index_containers_on_reuse_columns; Type: INDEX; Schema: public; Owner: -
2068 CREATE INDEX index_containers_on_reuse_columns ON public.containers USING btree (md5(command), cwd, md5(environment), output_path, container_image, md5(mounts), secret_mounts_md5, md5(runtime_constraints));
2072 -- Name: index_containers_on_runtime_status; Type: INDEX; Schema: public; Owner: -
2075 CREATE INDEX index_containers_on_runtime_status ON public.containers USING gin (runtime_status);
2079 -- Name: index_containers_on_secret_mounts_md5; Type: INDEX; Schema: public; Owner: -
2082 CREATE INDEX index_containers_on_secret_mounts_md5 ON public.containers USING btree (secret_mounts_md5);
2086 -- Name: index_containers_on_uuid; Type: INDEX; Schema: public; Owner: -
2089 CREATE UNIQUE INDEX index_containers_on_uuid ON public.containers USING btree (uuid);
2093 -- Name: index_frozen_groups_on_uuid; Type: INDEX; Schema: public; Owner: -
2096 CREATE UNIQUE INDEX index_frozen_groups_on_uuid ON public.frozen_groups USING btree (uuid);
2100 -- Name: index_groups_on_created_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2103 CREATE INDEX index_groups_on_created_at_and_uuid ON public.groups USING btree (created_at, uuid);
2107 -- Name: index_groups_on_delete_at; Type: INDEX; Schema: public; Owner: -
2110 CREATE INDEX index_groups_on_delete_at ON public.groups USING btree (delete_at);
2114 -- Name: index_groups_on_group_class; Type: INDEX; Schema: public; Owner: -
2117 CREATE INDEX index_groups_on_group_class ON public.groups USING btree (group_class);
2121 -- Name: index_groups_on_is_trashed; Type: INDEX; Schema: public; Owner: -
2124 CREATE INDEX index_groups_on_is_trashed ON public.groups USING btree (is_trashed);
2128 -- Name: index_groups_on_modified_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2131 CREATE INDEX index_groups_on_modified_at_and_uuid ON public.groups USING btree (modified_at, uuid);
2135 -- Name: index_groups_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2138 CREATE INDEX index_groups_on_owner_uuid ON public.groups USING btree (owner_uuid);
2142 -- Name: index_groups_on_owner_uuid_and_name; Type: INDEX; Schema: public; Owner: -
2145 CREATE UNIQUE INDEX index_groups_on_owner_uuid_and_name ON public.groups USING btree (owner_uuid, name) WHERE (is_trashed = false);
2149 -- Name: index_groups_on_trash_at; Type: INDEX; Schema: public; Owner: -
2152 CREATE INDEX index_groups_on_trash_at ON public.groups USING btree (trash_at);
2156 -- Name: index_groups_on_uuid; Type: INDEX; Schema: public; Owner: -
2159 CREATE UNIQUE INDEX index_groups_on_uuid ON public.groups USING btree (uuid);
2163 -- Name: index_humans_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2166 CREATE INDEX index_humans_on_owner_uuid ON public.humans USING btree (owner_uuid);
2170 -- Name: index_humans_on_uuid; Type: INDEX; Schema: public; Owner: -
2173 CREATE UNIQUE INDEX index_humans_on_uuid ON public.humans USING btree (uuid);
2177 -- Name: index_job_tasks_on_created_at; Type: INDEX; Schema: public; Owner: -
2180 CREATE INDEX index_job_tasks_on_created_at ON public.job_tasks USING btree (created_at);
2184 -- Name: index_job_tasks_on_created_by_job_task_uuid; Type: INDEX; Schema: public; Owner: -
2187 CREATE INDEX index_job_tasks_on_created_by_job_task_uuid ON public.job_tasks USING btree (created_by_job_task_uuid);
2191 -- Name: index_job_tasks_on_job_uuid; Type: INDEX; Schema: public; Owner: -
2194 CREATE INDEX index_job_tasks_on_job_uuid ON public.job_tasks USING btree (job_uuid);
2198 -- Name: index_job_tasks_on_modified_at; Type: INDEX; Schema: public; Owner: -
2201 CREATE INDEX index_job_tasks_on_modified_at ON public.job_tasks USING btree (modified_at);
2205 -- Name: index_job_tasks_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2208 CREATE INDEX index_job_tasks_on_owner_uuid ON public.job_tasks USING btree (owner_uuid);
2212 -- Name: index_job_tasks_on_sequence; Type: INDEX; Schema: public; Owner: -
2215 CREATE INDEX index_job_tasks_on_sequence ON public.job_tasks USING btree (sequence);
2219 -- Name: index_job_tasks_on_success; Type: INDEX; Schema: public; Owner: -
2222 CREATE INDEX index_job_tasks_on_success ON public.job_tasks USING btree (success);
2226 -- Name: index_job_tasks_on_uuid; Type: INDEX; Schema: public; Owner: -
2229 CREATE UNIQUE INDEX index_job_tasks_on_uuid ON public.job_tasks USING btree (uuid);
2233 -- Name: index_jobs_on_created_at; Type: INDEX; Schema: public; Owner: -
2236 CREATE INDEX index_jobs_on_created_at ON public.jobs USING btree (created_at);
2240 -- Name: index_jobs_on_finished_at; Type: INDEX; Schema: public; Owner: -
2243 CREATE INDEX index_jobs_on_finished_at ON public.jobs USING btree (finished_at);
2247 -- Name: index_jobs_on_modified_at; Type: INDEX; Schema: public; Owner: -
2250 CREATE INDEX index_jobs_on_modified_at ON public.jobs USING btree (modified_at);
2254 -- Name: index_jobs_on_modified_at_uuid; Type: INDEX; Schema: public; Owner: -
2257 CREATE INDEX index_jobs_on_modified_at_uuid ON public.jobs USING btree (modified_at DESC, uuid);
2261 -- Name: index_jobs_on_output; Type: INDEX; Schema: public; Owner: -
2264 CREATE INDEX index_jobs_on_output ON public.jobs USING btree (output);
2268 -- Name: index_jobs_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2271 CREATE INDEX index_jobs_on_owner_uuid ON public.jobs USING btree (owner_uuid);
2275 -- Name: index_jobs_on_script; Type: INDEX; Schema: public; Owner: -
2278 CREATE INDEX index_jobs_on_script ON public.jobs USING btree (script);
2282 -- Name: index_jobs_on_script_parameters_digest; Type: INDEX; Schema: public; Owner: -
2285 CREATE INDEX index_jobs_on_script_parameters_digest ON public.jobs USING btree (script_parameters_digest);
2289 -- Name: index_jobs_on_started_at; Type: INDEX; Schema: public; Owner: -
2292 CREATE INDEX index_jobs_on_started_at ON public.jobs USING btree (started_at);
2296 -- Name: index_jobs_on_submit_id; Type: INDEX; Schema: public; Owner: -
2299 CREATE UNIQUE INDEX index_jobs_on_submit_id ON public.jobs USING btree (submit_id);
2303 -- Name: index_jobs_on_uuid; Type: INDEX; Schema: public; Owner: -
2306 CREATE UNIQUE INDEX index_jobs_on_uuid ON public.jobs USING btree (uuid);
2310 -- Name: index_keep_disks_on_filesystem_uuid; Type: INDEX; Schema: public; Owner: -
2313 CREATE INDEX index_keep_disks_on_filesystem_uuid ON public.keep_disks USING btree (filesystem_uuid);
2317 -- Name: index_keep_disks_on_last_ping_at; Type: INDEX; Schema: public; Owner: -
2320 CREATE INDEX index_keep_disks_on_last_ping_at ON public.keep_disks USING btree (last_ping_at);
2324 -- Name: index_keep_disks_on_node_uuid; Type: INDEX; Schema: public; Owner: -
2327 CREATE INDEX index_keep_disks_on_node_uuid ON public.keep_disks USING btree (node_uuid);
2331 -- Name: index_keep_disks_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2334 CREATE INDEX index_keep_disks_on_owner_uuid ON public.keep_disks USING btree (owner_uuid);
2338 -- Name: index_keep_disks_on_uuid; Type: INDEX; Schema: public; Owner: -
2341 CREATE UNIQUE INDEX index_keep_disks_on_uuid ON public.keep_disks USING btree (uuid);
2345 -- Name: index_keep_services_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2348 CREATE INDEX index_keep_services_on_owner_uuid ON public.keep_services USING btree (owner_uuid);
2352 -- Name: index_keep_services_on_uuid; Type: INDEX; Schema: public; Owner: -
2355 CREATE UNIQUE INDEX index_keep_services_on_uuid ON public.keep_services USING btree (uuid);
2359 -- Name: index_links_on_created_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2362 CREATE INDEX index_links_on_created_at_and_uuid ON public.links USING btree (created_at, uuid);
2366 -- Name: index_links_on_head_uuid; Type: INDEX; Schema: public; Owner: -
2369 CREATE INDEX index_links_on_head_uuid ON public.links USING btree (head_uuid);
2373 -- Name: index_links_on_modified_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2376 CREATE INDEX index_links_on_modified_at_and_uuid ON public.links USING btree (modified_at, uuid);
2380 -- Name: index_links_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2383 CREATE INDEX index_links_on_owner_uuid ON public.links USING btree (owner_uuid);
2387 -- Name: index_links_on_substring_head_uuid; Type: INDEX; Schema: public; Owner: -
2390 CREATE INDEX index_links_on_substring_head_uuid ON public.links USING btree ("substring"((head_uuid)::text, 7, 5));
2394 -- Name: index_links_on_substring_tail_uuid; Type: INDEX; Schema: public; Owner: -
2397 CREATE INDEX index_links_on_substring_tail_uuid ON public.links USING btree ("substring"((tail_uuid)::text, 7, 5));
2401 -- Name: index_links_on_tail_uuid; Type: INDEX; Schema: public; Owner: -
2404 CREATE INDEX index_links_on_tail_uuid ON public.links USING btree (tail_uuid);
2408 -- Name: index_links_on_uuid; Type: INDEX; Schema: public; Owner: -
2411 CREATE UNIQUE INDEX index_links_on_uuid ON public.links USING btree (uuid);
2415 -- Name: index_logs_on_created_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2418 CREATE INDEX index_logs_on_created_at_and_uuid ON public.logs USING btree (created_at, uuid);
2422 -- Name: index_logs_on_event_at; Type: INDEX; Schema: public; Owner: -
2425 CREATE INDEX index_logs_on_event_at ON public.logs USING btree (event_at);
2429 -- Name: index_logs_on_event_type; Type: INDEX; Schema: public; Owner: -
2432 CREATE INDEX index_logs_on_event_type ON public.logs USING btree (event_type);
2436 -- Name: index_logs_on_modified_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2439 CREATE INDEX index_logs_on_modified_at_and_uuid ON public.logs USING btree (modified_at, uuid);
2443 -- Name: index_logs_on_object_owner_uuid; Type: INDEX; Schema: public; Owner: -
2446 CREATE INDEX index_logs_on_object_owner_uuid ON public.logs USING btree (object_owner_uuid);
2450 -- Name: index_logs_on_object_uuid; Type: INDEX; Schema: public; Owner: -
2453 CREATE INDEX index_logs_on_object_uuid ON public.logs USING btree (object_uuid);
2457 -- Name: index_logs_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2460 CREATE INDEX index_logs_on_owner_uuid ON public.logs USING btree (owner_uuid);
2464 -- Name: index_logs_on_summary; Type: INDEX; Schema: public; Owner: -
2467 CREATE INDEX index_logs_on_summary ON public.logs USING btree (summary);
2471 -- Name: index_logs_on_uuid; Type: INDEX; Schema: public; Owner: -
2474 CREATE UNIQUE INDEX index_logs_on_uuid ON public.logs USING btree (uuid);
2478 -- Name: index_nodes_on_created_at; Type: INDEX; Schema: public; Owner: -
2481 CREATE INDEX index_nodes_on_created_at ON public.nodes USING btree (created_at);
2485 -- Name: index_nodes_on_hostname; Type: INDEX; Schema: public; Owner: -
2488 CREATE INDEX index_nodes_on_hostname ON public.nodes USING btree (hostname);
2492 -- Name: index_nodes_on_modified_at; Type: INDEX; Schema: public; Owner: -
2495 CREATE INDEX index_nodes_on_modified_at ON public.nodes USING btree (modified_at);
2499 -- Name: index_nodes_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2502 CREATE INDEX index_nodes_on_owner_uuid ON public.nodes USING btree (owner_uuid);
2506 -- Name: index_nodes_on_slot_number; Type: INDEX; Schema: public; Owner: -
2509 CREATE UNIQUE INDEX index_nodes_on_slot_number ON public.nodes USING btree (slot_number);
2513 -- Name: index_nodes_on_uuid; Type: INDEX; Schema: public; Owner: -
2516 CREATE UNIQUE INDEX index_nodes_on_uuid ON public.nodes USING btree (uuid);
2520 -- Name: index_pipeline_instances_on_created_at; Type: INDEX; Schema: public; Owner: -
2523 CREATE INDEX index_pipeline_instances_on_created_at ON public.pipeline_instances USING btree (created_at);
2527 -- Name: index_pipeline_instances_on_modified_at; Type: INDEX; Schema: public; Owner: -
2530 CREATE INDEX index_pipeline_instances_on_modified_at ON public.pipeline_instances USING btree (modified_at);
2534 -- Name: index_pipeline_instances_on_modified_at_uuid; Type: INDEX; Schema: public; Owner: -
2537 CREATE INDEX index_pipeline_instances_on_modified_at_uuid ON public.pipeline_instances USING btree (modified_at DESC, uuid);
2541 -- Name: index_pipeline_instances_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2544 CREATE INDEX index_pipeline_instances_on_owner_uuid ON public.pipeline_instances USING btree (owner_uuid);
2548 -- Name: index_pipeline_instances_on_uuid; Type: INDEX; Schema: public; Owner: -
2551 CREATE UNIQUE INDEX index_pipeline_instances_on_uuid ON public.pipeline_instances USING btree (uuid);
2555 -- Name: index_pipeline_templates_on_created_at; Type: INDEX; Schema: public; Owner: -
2558 CREATE INDEX index_pipeline_templates_on_created_at ON public.pipeline_templates USING btree (created_at);
2562 -- Name: index_pipeline_templates_on_modified_at; Type: INDEX; Schema: public; Owner: -
2565 CREATE INDEX index_pipeline_templates_on_modified_at ON public.pipeline_templates USING btree (modified_at);
2569 -- Name: index_pipeline_templates_on_modified_at_uuid; Type: INDEX; Schema: public; Owner: -
2572 CREATE INDEX index_pipeline_templates_on_modified_at_uuid ON public.pipeline_templates USING btree (modified_at DESC, uuid);
2576 -- Name: index_pipeline_templates_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2579 CREATE INDEX index_pipeline_templates_on_owner_uuid ON public.pipeline_templates USING btree (owner_uuid);
2583 -- Name: index_pipeline_templates_on_uuid; Type: INDEX; Schema: public; Owner: -
2586 CREATE UNIQUE INDEX index_pipeline_templates_on_uuid ON public.pipeline_templates USING btree (uuid);
2590 -- Name: index_repositories_on_created_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2593 CREATE INDEX index_repositories_on_created_at_and_uuid ON public.repositories USING btree (created_at, uuid);
2597 -- Name: index_repositories_on_modified_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2600 CREATE INDEX index_repositories_on_modified_at_and_uuid ON public.repositories USING btree (modified_at, uuid);
2604 -- Name: index_repositories_on_name; Type: INDEX; Schema: public; Owner: -
2607 CREATE UNIQUE INDEX index_repositories_on_name ON public.repositories USING btree (name);
2611 -- Name: index_repositories_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2614 CREATE INDEX index_repositories_on_owner_uuid ON public.repositories USING btree (owner_uuid);
2618 -- Name: index_repositories_on_uuid; Type: INDEX; Schema: public; Owner: -
2621 CREATE UNIQUE INDEX index_repositories_on_uuid ON public.repositories USING btree (uuid);
2625 -- Name: index_specimens_on_created_at; Type: INDEX; Schema: public; Owner: -
2628 CREATE INDEX index_specimens_on_created_at ON public.specimens USING btree (created_at);
2632 -- Name: index_specimens_on_modified_at; Type: INDEX; Schema: public; Owner: -
2635 CREATE INDEX index_specimens_on_modified_at ON public.specimens USING btree (modified_at);
2639 -- Name: index_specimens_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2642 CREATE INDEX index_specimens_on_owner_uuid ON public.specimens USING btree (owner_uuid);
2646 -- Name: index_specimens_on_uuid; Type: INDEX; Schema: public; Owner: -
2649 CREATE UNIQUE INDEX index_specimens_on_uuid ON public.specimens USING btree (uuid);
2653 -- Name: index_traits_on_name; Type: INDEX; Schema: public; Owner: -
2656 CREATE INDEX index_traits_on_name ON public.traits USING btree (name);
2660 -- Name: index_traits_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2663 CREATE INDEX index_traits_on_owner_uuid ON public.traits USING btree (owner_uuid);
2667 -- Name: index_traits_on_uuid; Type: INDEX; Schema: public; Owner: -
2670 CREATE UNIQUE INDEX index_traits_on_uuid ON public.traits USING btree (uuid);
2674 -- Name: index_trashed_groups_on_group_uuid; Type: INDEX; Schema: public; Owner: -
2677 CREATE UNIQUE INDEX index_trashed_groups_on_group_uuid ON public.trashed_groups USING btree (group_uuid);
2681 -- Name: index_users_on_created_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2684 CREATE INDEX index_users_on_created_at_and_uuid ON public.users USING btree (created_at, uuid);
2688 -- Name: index_users_on_identity_url; Type: INDEX; Schema: public; Owner: -
2691 CREATE UNIQUE INDEX index_users_on_identity_url ON public.users USING btree (identity_url);
2695 -- Name: index_users_on_modified_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2698 CREATE INDEX index_users_on_modified_at_and_uuid ON public.users USING btree (modified_at, uuid);
2702 -- Name: index_users_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2705 CREATE INDEX index_users_on_owner_uuid ON public.users USING btree (owner_uuid);
2709 -- Name: index_users_on_username; Type: INDEX; Schema: public; Owner: -
2712 CREATE UNIQUE INDEX index_users_on_username ON public.users USING btree (username);
2716 -- Name: index_users_on_uuid; Type: INDEX; Schema: public; Owner: -
2719 CREATE UNIQUE INDEX index_users_on_uuid ON public.users USING btree (uuid);
2723 -- Name: index_virtual_machines_on_created_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2726 CREATE INDEX index_virtual_machines_on_created_at_and_uuid ON public.virtual_machines USING btree (created_at, uuid);
2730 -- Name: index_virtual_machines_on_hostname; Type: INDEX; Schema: public; Owner: -
2733 CREATE INDEX index_virtual_machines_on_hostname ON public.virtual_machines USING btree (hostname);
2737 -- Name: index_virtual_machines_on_modified_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2740 CREATE INDEX index_virtual_machines_on_modified_at_and_uuid ON public.virtual_machines USING btree (modified_at, uuid);
2744 -- Name: index_virtual_machines_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2747 CREATE INDEX index_virtual_machines_on_owner_uuid ON public.virtual_machines USING btree (owner_uuid);
2751 -- Name: index_virtual_machines_on_uuid; Type: INDEX; Schema: public; Owner: -
2754 CREATE UNIQUE INDEX index_virtual_machines_on_uuid ON public.virtual_machines USING btree (uuid);
2758 -- Name: index_workflows_on_created_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2761 CREATE INDEX index_workflows_on_created_at_and_uuid ON public.workflows USING btree (created_at, uuid);
2765 -- Name: index_workflows_on_modified_at_and_uuid; Type: INDEX; Schema: public; Owner: -
2768 CREATE INDEX index_workflows_on_modified_at_and_uuid ON public.workflows USING btree (modified_at, uuid);
2772 -- Name: index_workflows_on_owner_uuid; Type: INDEX; Schema: public; Owner: -
2775 CREATE INDEX index_workflows_on_owner_uuid ON public.workflows USING btree (owner_uuid);
2779 -- Name: index_workflows_on_uuid; Type: INDEX; Schema: public; Owner: -
2782 CREATE UNIQUE INDEX index_workflows_on_uuid ON public.workflows USING btree (uuid);
2786 -- Name: job_tasks_search_index; Type: INDEX; Schema: public; Owner: -
2789 CREATE INDEX job_tasks_search_index ON public.job_tasks USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, job_uuid, created_by_job_task_uuid);
2793 -- Name: jobs_search_index; Type: INDEX; Schema: public; Owner: -
2796 CREATE INDEX jobs_search_index ON public.jobs USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, submit_id, script, script_version, cancelled_by_client_uuid, cancelled_by_user_uuid, output, is_locked_by_uuid, log, repository, supplied_script_version, docker_image_locator, state, arvados_sdk_version);
2800 -- Name: jobs_trgm_text_search_idx; Type: INDEX; Schema: public; Owner: -
2803 CREATE INDEX jobs_trgm_text_search_idx ON public.jobs USING gin (((((((((((((((((((((((((((((((((((((((((((((COALESCE(uuid, ''::character varying))::text || ' '::text) || (COALESCE(owner_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_client_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_user_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(submit_id, ''::character varying))::text) || ' '::text) || (COALESCE(script, ''::character varying))::text) || ' '::text) || (COALESCE(script_version, ''::character varying))::text) || ' '::text) || COALESCE(script_parameters, ''::text)) || ' '::text) || (COALESCE(cancelled_by_client_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(cancelled_by_user_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(output, ''::character varying))::text) || ' '::text) || (COALESCE(is_locked_by_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(log, ''::character varying))::text) || ' '::text) || COALESCE(tasks_summary, ''::text)) || ' '::text) || COALESCE(runtime_constraints, ''::text)) || ' '::text) || (COALESCE(repository, ''::character varying))::text) || ' '::text) || (COALESCE(supplied_script_version, ''::character varying))::text) || ' '::text) || (COALESCE(docker_image_locator, ''::character varying))::text) || ' '::text) || (COALESCE(description, ''::character varying))::text) || ' '::text) || (COALESCE(state, ''::character varying))::text) || ' '::text) || (COALESCE(arvados_sdk_version, ''::character varying))::text) || ' '::text) || COALESCE(components, ''::text))) public.gin_trgm_ops);
2807 -- Name: keep_disks_search_index; Type: INDEX; Schema: public; Owner: -
2810 CREATE INDEX keep_disks_search_index ON public.keep_disks USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, ping_secret, node_uuid, filesystem_uuid, keep_service_uuid);
2814 -- Name: keep_services_search_index; Type: INDEX; Schema: public; Owner: -
2817 CREATE INDEX keep_services_search_index ON public.keep_services USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, service_host, service_type);
2821 -- Name: links_index_on_properties; Type: INDEX; Schema: public; Owner: -
2824 CREATE INDEX links_index_on_properties ON public.links USING gin (properties);
2828 -- Name: links_search_index; Type: INDEX; Schema: public; Owner: -
2831 CREATE INDEX links_search_index ON public.links USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, tail_uuid, link_class, name, head_uuid);
2835 -- Name: links_tail_name_unique_if_link_class_name; Type: INDEX; Schema: public; Owner: -
2838 CREATE UNIQUE INDEX links_tail_name_unique_if_link_class_name ON public.links USING btree (tail_uuid, name) WHERE ((link_class)::text = 'name'::text);
2842 -- Name: logs_search_index; Type: INDEX; Schema: public; Owner: -
2845 CREATE INDEX logs_search_index ON public.logs USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, object_uuid, event_type, object_owner_uuid);
2849 -- Name: nodes_index_on_info; Type: INDEX; Schema: public; Owner: -
2852 CREATE INDEX nodes_index_on_info ON public.nodes USING gin (info);
2856 -- Name: nodes_index_on_properties; Type: INDEX; Schema: public; Owner: -
2859 CREATE INDEX nodes_index_on_properties ON public.nodes USING gin (properties);
2863 -- Name: nodes_search_index; Type: INDEX; Schema: public; Owner: -
2866 CREATE INDEX nodes_search_index ON public.nodes USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, hostname, domain, ip_address, job_uuid);
2870 -- Name: permission_target; Type: INDEX; Schema: public; Owner: -
2873 CREATE INDEX permission_target ON public.materialized_permissions USING btree (target_uuid);
2877 -- Name: permission_user_target; Type: INDEX; Schema: public; Owner: -
2880 CREATE UNIQUE INDEX permission_user_target ON public.materialized_permissions USING btree (user_uuid, target_uuid);
2884 -- Name: pipeline_instances_search_index; Type: INDEX; Schema: public; Owner: -
2887 CREATE INDEX pipeline_instances_search_index ON public.pipeline_instances USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, pipeline_template_uuid, name, state);
2891 -- Name: pipeline_instances_trgm_text_search_idx; Type: INDEX; Schema: public; Owner: -
2894 CREATE INDEX pipeline_instances_trgm_text_search_idx ON public.pipeline_instances USING gin (((((((((((((((((((((((COALESCE(uuid, ''::character varying))::text || ' '::text) || (COALESCE(owner_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_client_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_user_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(pipeline_template_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(name, ''::character varying))::text) || ' '::text) || COALESCE(components, ''::text)) || ' '::text) || COALESCE(properties, ''::text)) || ' '::text) || (COALESCE(state, ''::character varying))::text) || ' '::text) || COALESCE(components_summary, ''::text)) || ' '::text) || (COALESCE(description, ''::character varying))::text)) public.gin_trgm_ops);
2898 -- Name: pipeline_template_owner_uuid_name_unique; Type: INDEX; Schema: public; Owner: -
2901 CREATE UNIQUE INDEX pipeline_template_owner_uuid_name_unique ON public.pipeline_templates USING btree (owner_uuid, name);
2905 -- Name: pipeline_templates_search_index; Type: INDEX; Schema: public; Owner: -
2908 CREATE INDEX pipeline_templates_search_index ON public.pipeline_templates USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, name);
2912 -- Name: pipeline_templates_trgm_text_search_idx; Type: INDEX; Schema: public; Owner: -
2915 CREATE INDEX pipeline_templates_trgm_text_search_idx ON public.pipeline_templates USING gin (((((((((((((((COALESCE(uuid, ''::character varying))::text || ' '::text) || (COALESCE(owner_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_client_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_user_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(name, ''::character varying))::text) || ' '::text) || COALESCE(components, ''::text)) || ' '::text) || (COALESCE(description, ''::character varying))::text)) public.gin_trgm_ops);
2919 -- Name: repositories_search_index; Type: INDEX; Schema: public; Owner: -
2922 CREATE INDEX repositories_search_index ON public.repositories USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, name);
2926 -- Name: specimens_search_index; Type: INDEX; Schema: public; Owner: -
2929 CREATE INDEX specimens_search_index ON public.specimens USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, material);
2933 -- Name: traits_search_index; Type: INDEX; Schema: public; Owner: -
2936 CREATE INDEX traits_search_index ON public.traits USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, name);
2940 -- Name: unique_schema_migrations; Type: INDEX; Schema: public; Owner: -
2943 CREATE UNIQUE INDEX unique_schema_migrations ON public.schema_migrations USING btree (version);
2947 -- Name: users_search_index; Type: INDEX; Schema: public; Owner: -
2950 CREATE INDEX users_search_index ON public.users USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, email, first_name, last_name, identity_url, default_owner_uuid, username, redirect_to_user_uuid);
2954 -- Name: virtual_machines_search_index; Type: INDEX; Schema: public; Owner: -
2957 CREATE INDEX virtual_machines_search_index ON public.virtual_machines USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, hostname);
2961 -- Name: workflows_search_idx; Type: INDEX; Schema: public; Owner: -
2964 CREATE INDEX workflows_search_idx ON public.workflows USING btree (uuid, owner_uuid, modified_by_client_uuid, modified_by_user_uuid, name);
2968 -- Name: workflows_trgm_text_search_idx; Type: INDEX; Schema: public; Owner: -
2971 CREATE INDEX workflows_trgm_text_search_idx ON public.workflows USING gin (((((((((((((COALESCE(uuid, ''::character varying))::text || ' '::text) || (COALESCE(owner_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_client_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(modified_by_user_uuid, ''::character varying))::text) || ' '::text) || (COALESCE(name, ''::character varying))::text) || ' '::text) || COALESCE(description, ''::text))) public.gin_trgm_ops);
2975 -- PostgreSQL database dump complete
2978 SET search_path TO "$user", public;
2980 INSERT INTO "schema_migrations" (version) VALUES