Fix init db schema script 66/114866/3
authorBruno Sakoto <bruno.sakoto@bell.ca>
Fri, 13 Nov 2020 04:17:20 +0000 (23:17 -0500)
committerToine Siebelink <toine.siebelink@est.tech>
Mon, 16 Nov 2020 15:55:09 +0000 (15:55 +0000)
Issue-ID: CPS-82
Signed-off-by: Bruno Sakoto <bruno.sakoto@bell.ca>
Change-Id: I8c719935b78aaeab9d2f7a0af91b2192df897eb1

cps-ri/src/main/resources/schema.sql

index 6a76fbd..ba05048 100644 (file)
@@ -1,63 +1,64 @@
-CREATE TABLE IF NOT EXISTS RELATION_TYPE\r
-(\r
-    RELATION_TYPE TEXT NOT NULL,\r
-    ID SERIAL PRIMARY KEY\r
-);\r
-\r
-CREATE TABLE IF NOT EXISTS DATASPACE\r
-(\r
-    ID SERIAL PRIMARY KEY,\r
-    NAME TEXT NOT NULL,\r
-    CONSTRAINT "UQ_NAME" UNIQUE (NAME)\r
-);\r
-\r
-CREATE TABLE IF NOT EXISTS SCHEMA_NODE\r
-(\r
-    SCHEMA_NODE_IDENTIFIER TEXT NOT NULL,\r
-    ID SERIAL PRIMARY KEY\r
-);\r
-\r
-CREATE TABLE IF NOT EXISTS FRAGMENT\r
-(\r
-    ID BIGSERIAL PRIMARY KEY,\r
-    XPATH TEXT NOT NULL,\r
-    DATASPACE_ID INTEGER NOT NULL REFERENCES DATASPACE(ID),\r
-    ATTRIBUTES JSONB,\r
-    ANCHOR_ID BIGINT REFERENCES FRAGMENT(ID),\r
-    PARENT_ID BIGINT REFERENCES FRAGMENT(ID),\r
-    MODULE_SET_ID INTEGER REFERENCES MODULE_SET(ID),\r
-    SCHEMA_NODE_ID INTEGER REFERENCES SCHEMA_NODE(ID)\r
-);\r
-\r
-CREATE TABLE IF NOT EXISTS RELATION\r
-(\r
-    FROM_FRAGMENT_ID BIGINT NOT NULL REFERENCES FRAGMENT(ID),\r
-    TO_FRAGMENT_ID   BIGINT NOT NULL REFERENCES FRAGMENT(ID),\r
-    RELATION_TYPE_ID  INTEGER NOT NULL REFERENCES RELATION_TYPE(ID),\r
-    FROM_REL_XPATH TEXT NOT NULL,\r
-    TO_REL_XPATH TEXT NOT NULL,\r
-    CONSTRAINT RELATION_PKEY PRIMARY KEY (TO_FRAGMENT_ID, FROM_FRAGMENT_ID, RELATION_TYPE_ID)\r
-);\r
-\r
-CREATE TABLE IF NOT EXISTS MODULE\r
-(\r
-    NAMESPACE TEXT NOT NULL,\r
-    REVISION TEXT NOT NULL,\r
-    MODULE_CONTENT TEXT NOT NULL,\r
-    DATASPACE_ID BIGINT NOT NULL,\r
-    ID SERIAL PRIMARY KEY,\r
-    UNIQUE (NAMESPACE, REVISION),\r
-    CONSTRAINT module_dataspace FOREIGN KEY (DATASPACE_ID) REFERENCES DATASPACE (id) ON UPDATE CASCADE ON DELETE CASCADE\r
-);\r
-\r
-CREATE INDEX  IF NOT EXISTS "FKI_FRAGMENT_DATASPACE_ID_FK"     ON FRAGMENT USING BTREE(DATASPACE_ID) ;\r
-CREATE INDEX  IF NOT EXISTS "FKI_FRAGMENT_MODULE_SET_ID_FK"    ON FRAGMENT USING BTREE(MODULE_SET_ID) ;\r
-CREATE INDEX  IF NOT EXISTS "FKI_FRAGMENT_PARENT_ID_FK"        ON FRAGMENT USING BTREE(PARENT_ID) ;\r
-CREATE INDEX  IF NOT EXISTS "FKI_FRAGMENT_ANCHOR_ID_FK"        ON FRAGMENT USING BTREE(ANCHOR_ID) ;\r
-CREATE INDEX  IF NOT EXISTS "PERF_SCHEMA_NODE_SCHEMA_NODE_ID"  ON SCHEMA_NODE USING BTREE(SCHEMA_NODE_IDENTIFIER) ;\r
-CREATE INDEX  IF NOT EXISTS "FKI_SCHEMA_NODE_ID_TO_ID"         ON FRAGMENT USING BTREE(SCHEMA_NODE_ID) ;\r
-CREATE INDEX  IF NOT EXISTS "FKI_RELATION_TYPE_ID_FK"          ON RELATION USING BTREE(RELATION_TYPE_ID);\r
-CREATE INDEX  IF NOT EXISTS "FKI_RELATIONS_FROM_ID_FK"         ON RELATION USING BTREE(FROM_FRAGMENT_ID);\r
-CREATE INDEX  IF NOT EXISTS "FKI_RELATIONS_TO_ID_FK"           ON RELATION USING BTREE(TO_FRAGMENT_ID);\r
-CREATE INDEX  IF NOT EXISTS "PERF_MODULE_SET_MODULE_SET_REFERENCE" ON MODULE_SET USING BTREE(MODULE_SET_REFERENCE) ;\r
+CREATE TABLE IF NOT EXISTS RELATION_TYPE
+(
+    RELATION_TYPE TEXT NOT NULL,
+    ID SERIAL PRIMARY KEY
+);
+
+CREATE TABLE IF NOT EXISTS DATASPACE
+(
+    ID SERIAL PRIMARY KEY,
+    NAME TEXT NOT NULL,
+    CONSTRAINT "UQ_NAME" UNIQUE (NAME)
+);
+
+CREATE TABLE IF NOT EXISTS SCHEMA_NODE
+(
+    SCHEMA_NODE_IDENTIFIER TEXT NOT NULL,
+    ID SERIAL PRIMARY KEY
+);
+
+CREATE TABLE IF NOT EXISTS MODULE
+(
+    NAMESPACE TEXT NOT NULL,
+    REVISION TEXT NOT NULL,
+    MODULE_CONTENT TEXT NOT NULL,
+    DATASPACE_ID BIGINT NOT NULL,
+    ID SERIAL PRIMARY KEY,
+    UNIQUE (DATASPACE_ID, NAMESPACE, REVISION),
+    CONSTRAINT module_dataspace FOREIGN KEY (DATASPACE_ID) REFERENCES DATASPACE (id) ON UPDATE CASCADE ON DELETE CASCADE
+);
+
+CREATE TABLE IF NOT EXISTS FRAGMENT
+(
+    ID BIGSERIAL PRIMARY KEY,
+    XPATH TEXT NOT NULL,
+    DATASPACE_ID INTEGER NOT NULL REFERENCES DATASPACE(ID),
+    ATTRIBUTES JSONB,
+    ANCHOR_ID BIGINT REFERENCES FRAGMENT(ID),
+    PARENT_ID BIGINT REFERENCES FRAGMENT(ID),
+    MODULE_ID INTEGER REFERENCES MODULE(ID),
+    SCHEMA_NODE_ID INTEGER REFERENCES SCHEMA_NODE(ID)
+);
+
+CREATE TABLE IF NOT EXISTS RELATION
+(
+    FROM_FRAGMENT_ID BIGINT NOT NULL REFERENCES FRAGMENT(ID),
+    TO_FRAGMENT_ID   BIGINT NOT NULL REFERENCES FRAGMENT(ID),
+    RELATION_TYPE_ID  INTEGER NOT NULL REFERENCES RELATION_TYPE(ID),
+    FROM_REL_XPATH TEXT NOT NULL,
+    TO_REL_XPATH TEXT NOT NULL,
+    CONSTRAINT RELATION_PKEY PRIMARY KEY (TO_FRAGMENT_ID, FROM_FRAGMENT_ID, RELATION_TYPE_ID)
+);
+
+
+CREATE INDEX  IF NOT EXISTS "FKI_FRAGMENT_DATASPACE_ID_FK"     ON FRAGMENT USING BTREE(DATASPACE_ID) ;
+CREATE INDEX  IF NOT EXISTS "FKI_FRAGMENT_MODULE_ID_FK"        ON FRAGMENT USING BTREE(MODULE_ID) ;
+CREATE INDEX  IF NOT EXISTS "FKI_FRAGMENT_PARENT_ID_FK"        ON FRAGMENT USING BTREE(PARENT_ID) ;
+CREATE INDEX  IF NOT EXISTS "FKI_FRAGMENT_ANCHOR_ID_FK"        ON FRAGMENT USING BTREE(ANCHOR_ID) ;
+CREATE INDEX  IF NOT EXISTS "PERF_SCHEMA_NODE_SCHEMA_NODE_ID"  ON SCHEMA_NODE USING BTREE(SCHEMA_NODE_IDENTIFIER) ;
+CREATE INDEX  IF NOT EXISTS "FKI_SCHEMA_NODE_ID_TO_ID"         ON FRAGMENT USING BTREE(SCHEMA_NODE_ID) ;
+CREATE INDEX  IF NOT EXISTS "FKI_RELATION_TYPE_ID_FK"          ON RELATION USING BTREE(RELATION_TYPE_ID);
+CREATE INDEX  IF NOT EXISTS "FKI_RELATIONS_FROM_ID_FK"         ON RELATION USING BTREE(FROM_FRAGMENT_ID);
+CREATE INDEX  IF NOT EXISTS "FKI_RELATIONS_TO_ID_FK"           ON RELATION USING BTREE(TO_FRAGMENT_ID);
+CREATE INDEX  IF NOT EXISTS "PERF_MODULE_MODULE_CONTENT"       ON MODULE USING BTREE(MODULE_CONTENT);
 CREATE UNIQUE INDEX  IF NOT EXISTS "UQ_FRAGMENT_XPATH"ON FRAGMENT USING btree(xpath COLLATE pg_catalog."default" text_pattern_ops, dataspace_id);
\ No newline at end of file