--
-- This table is for internal use by the parties system. It as an auxiliary
-- table, a denormalization of data, that is used to improve performance.
-- Do not query on this table or insert into it. Query on group_element_map
-- instead. And insert by using the API's for membership_rel, composition_rel,
-- or some sub-type of those relationship types.
--
CREATE TABLE group_element_index (
group_id integer NOT NULL,
element_id integer NOT NULL,
rel_id integer NOT NULL,
container_id integer NOT NULL,
rel_type varchar(1000) NOT NULL,
ancestor_rel_type varchar(100) NOT NULL,
PRIMARY KEY (group_id,element_id,rel_id),
CONSTRAINT group_elem_index_rel_type_fk REFERENCES acs_rel_types (),
CONSTRAINT grp_el_idx_ancstr_rel_type_ck REFERENCES acs_rel_types (),
CONSTRAINT group_element_index_rel_id_fk REFERENCES acs_rel_types (),
CONSTRAINT group_element_index_cont_id_fk REFERENCES acs_rel_types (),
CONSTRAINT group_element_index_pk REFERENCES acs_rel_types (),
CONSTRAINT group_element_index_grp_id_fk REFERENCES acs_rel_types (),
CONSTRAINT group_element_index_elem_id_fk REFERENCES acs_rel_types (),
CONSTRAINT grp_el_idx_ancstr_rel_type_ck REFERENCES groups (),
CONSTRAINT group_elem_index_rel_type_fk REFERENCES groups (),
CONSTRAINT group_element_index_cont_id_fk REFERENCES groups (),
CONSTRAINT group_element_index_elem_id_fk REFERENCES groups (),
CONSTRAINT group_element_index_grp_id_fk REFERENCES groups (),
CONSTRAINT group_element_index_pk REFERENCES groups (),
CONSTRAINT group_element_index_rel_id_fk REFERENCES groups (),
CONSTRAINT group_element_index_grp_id_fk REFERENCES parties (),
CONSTRAINT grp_el_idx_ancstr_rel_type_ck REFERENCES parties (),
CONSTRAINT group_element_index_rel_id_fk REFERENCES parties (),
CONSTRAINT group_element_index_pk REFERENCES parties (),
CONSTRAINT group_element_index_elem_id_fk REFERENCES parties (),
CONSTRAINT group_element_index_cont_id_fk REFERENCES parties (),
CONSTRAINT group_elem_index_rel_type_fk REFERENCES parties (),
CONSTRAINT grp_el_idx_ancstr_rel_type_ck REFERENCES groups (),
CONSTRAINT group_element_index_rel_id_fk REFERENCES groups (),
CONSTRAINT group_element_index_pk REFERENCES groups (),
CONSTRAINT group_element_index_grp_id_fk REFERENCES groups (),
CONSTRAINT group_element_index_elem_id_fk REFERENCES groups (),
CONSTRAINT group_element_index_cont_id_fk REFERENCES groups (),
CONSTRAINT group_elem_index_rel_type_fk REFERENCES groups (),
CONSTRAINT grp_el_idx_ancstr_rel_type_ck REFERENCES acs_rels (),
CONSTRAINT group_element_index_rel_id_fk REFERENCES acs_rels (),
CONSTRAINT group_element_index_pk REFERENCES acs_rels (),
CONSTRAINT group_element_index_grp_id_fk REFERENCES acs_rels (),
CONSTRAINT group_element_index_elem_id_fk REFERENCES acs_rels (),
CONSTRAINT group_element_index_cont_id_fk REFERENCES acs_rels (),
CONSTRAINT group_elem_index_rel_type_fk REFERENCES acs_rels ()
);
CREATE INDEX group_elem_idx_container_idx ON group_element_index (container_id);
CREATE INDEX group_elem_idx_element_idx ON group_element_index (element_id);
CREATE INDEX group_elem_idx_group_idx ON group_element_index (group_id);
CREATE INDEX group_elem_idx_rel_id_idx ON group_element_index (rel_id);
CREATE INDEX group_elem_idx_rel_type_idx ON group_element_index (rel_type);
CREATE TRIGGER RI_ConstraintTrigger_c_342474 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342475 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342479 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342480 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342484 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342485 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342489 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342490 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342494 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_342495 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
-- Table size: 3,293,184 bytes
-- Table rows: 42,916
Tables: