# ============LICENSE_START======================================================= # Copyright (c) 2021 Bell Canada. # ================================================================================ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============LICENSE_END========================================================= # For legacy reasons, previous files for changeset Ids: 6, 11, 15, 17-21 have been condensed into this file. databaseChangeLog: - changeSet: id: 1-1 author: cps changes: - createTable: columns: - column: autoIncrement: true constraints: nullable: false primaryKey: true primaryKeyName: anchor_pkey name: id type: BIGINT - column: name: name type: TEXT - column: name: schema_set_id type: INTEGER - column: constraints: nullable: false name: dataspace_id type: INTEGER tableName: anchor - changeSet: id: 1-2 author: cps changes: - createTable: columns: - column: constraints: nullable: false name: from_fragment_id type: BIGINT - column: constraints: nullable: false name: to_fragment_id type: BIGINT - column: constraints: nullable: false name: relation_type_id type: INTEGER - column: constraints: nullable: false name: from_rel_xpath type: TEXT - column: constraints: nullable: false name: to_rel_xpath type: TEXT tableName: relation - changeSet: id: 1-3 author: cps changes: - createTable: columns: - column: constraints: nullable: false name: relation_type type: TEXT - column: autoIncrement: true constraints: nullable: false primaryKey: true primaryKeyName: relation_type_pkey name: id type: INTEGER tableName: relation_type - changeSet: id: 1-4 author: cps changes: - createTable: columns: - column: autoIncrement: true constraints: nullable: false primaryKey: true primaryKeyName: fragment_pkey name: id type: BIGINT - column: constraints: nullable: false name: xpath type: TEXT - column: name: attributes type: JSONB - column: name: anchor_id type: BIGINT - column: name: parent_id type: BIGINT - column: constraints: nullable: false name: dataspace_id type: INTEGER - column: name: schema_node_id type: INTEGER tableName: fragment - changeSet: id: 1-5 author: cps changes: - createTable: columns: - column: autoIncrement: true constraints: nullable: false primaryKey: true primaryKeyName: schema_set_pkey name: id type: INTEGER - column: constraints: nullable: false name: name type: TEXT - column: constraints: nullable: false name: dataspace_id type: BIGINT tableName: schema_set - changeSet: id: 1-6 author: cps changes: - createTable: columns: - column: autoIncrement: true constraints: nullable: false primaryKey: true primaryKeyName: yang_resource_pkey name: id type: INTEGER - column: constraints: nullable: false name: name type: TEXT - column: constraints: nullable: false name: content type: TEXT - column: constraints: nullable: false name: checksum type: TEXT tableName: yang_resource - changeSet: id: 1-7 author: cps changes: - createTable: columns: - column: autoIncrement: true constraints: nullable: false primaryKey: true primaryKeyName: dataspace_pkey name: id type: INTEGER - column: constraints: nullable: false name: name type: TEXT tableName: dataspace - changeSet: id: 1-8 author: cps changes: - createTable: columns: - column: constraints: nullable: false name: schema_node_identifier type: TEXT - column: autoIncrement: true constraints: nullable: false primaryKey: true primaryKeyName: schema_node_pkey name: id type: INTEGER tableName: schema_node - changeSet: id: 1-9 author: cps changes: - createTable: columns: - column: constraints: nullable: false name: schema_set_id type: BIGINT - column: constraints: nullable: false name: yang_resource_id type: BIGINT tableName: schema_set_yang_resources - changeSet: id: 1-10 author: cps changes: - createIndex: columns: - column: name: schema_set_id indexName: FKI_ANCHOR_SCHEMA_SET_ID_FK tableName: anchor - changeSet: id: 1-11 author: cps changes: - addUniqueConstraint: columnNames: dataspace_id, name constraintName: anchor_dataspace_id_name_key tableName: anchor - changeSet: id: 1-12 author: cps changes: - addForeignKeyConstraint: baseColumnNames: anchor_id baseTableName: fragment constraintName: fragment_anchor_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: anchor validate: true - changeSet: id: 1-13 author: cps changes: - createIndex: columns: - column: name: from_fragment_id indexName: FKI_RELATIONS_FROM_ID_FK tableName: relation - changeSet: id: 1-14 author: cps changes: - createIndex: columns: - column: name: to_fragment_id indexName: FKI_RELATIONS_TO_ID_FK tableName: relation - changeSet: id: 1-15 author: cps changes: - createIndex: columns: - column: name: relation_type_id indexName: FKI_RELATION_TYPE_ID_FK tableName: relation - changeSet: id: 1-16 author: cps changes: - addPrimaryKey: columnNames: to_fragment_id, from_fragment_id, relation_type_id constraintName: relation_pkey tableName: relation - changeSet: id: 1-17 author: cps changes: - createIndex: columns: - column: name: anchor_id indexName: FKI_FRAGMENT_ANCHOR_ID_FK tableName: fragment - changeSet: id: 1-18 author: cps changes: - createIndex: columns: - column: name: dataspace_id indexName: FKI_FRAGMENT_DATASPACE_ID_FK tableName: fragment - changeSet: id: 1-19 author: cps changes: - createIndex: columns: - column: name: parent_id indexName: FKI_FRAGMENT_PARENT_ID_FK tableName: fragment - changeSet: id: 1-20 author: cps changes: - createIndex: columns: - column: name: schema_node_id indexName: FKI_SCHEMA_NODE_ID_TO_ID tableName: fragment - changeSet: id: 1-21 author: cps changes: - createIndex: columns: - column: name: xpath - column: name: dataspace_id indexName: UQ_FRAGMENT_XPATH tableName: fragment unique: true - changeSet: id: 1-22 author: cps changes: - addUniqueConstraint: columnNames: dataspace_id, anchor_id, xpath constraintName: fragment_dataspace_id_anchor_id_xpath_key tableName: fragment - changeSet: id: 1-23 author: cps changes: - addForeignKeyConstraint: baseColumnNames: from_fragment_id baseTableName: relation constraintName: relation_from_fragment_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: fragment validate: true - changeSet: id: 1-24 author: cps changes: - addForeignKeyConstraint: baseColumnNames: to_fragment_id baseTableName: relation constraintName: relation_to_fragment_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: fragment validate: true - changeSet: id: 1-25 author: cps changes: - addUniqueConstraint: columnNames: name, dataspace_id constraintName: schema_set_name_dataspace_id_key tableName: schema_set - changeSet: id: 1-26 author: cps changes: - addForeignKeyConstraint: baseColumnNames: schema_set_id baseTableName: schema_set_yang_resources constraintName: schema_set_resource deferrable: false initiallyDeferred: false onDelete: CASCADE onUpdate: NO ACTION referencedColumnNames: id referencedTableName: schema_set validate: true - changeSet: id: 1-27 author: cps changes: - addUniqueConstraint: columnNames: checksum constraintName: yang_resource_checksum_key tableName: yang_resource - changeSet: id: 1-28 author: cps changes: - addUniqueConstraint: columnNames: name constraintName: UQ_NAME tableName: dataspace - changeSet: id: 1-29 author: cps changes: - addForeignKeyConstraint: baseColumnNames: dataspace_id baseTableName: fragment constraintName: fragment_dataspace_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: dataspace validate: true - changeSet: id: 1-30 author: cps changes: - addForeignKeyConstraint: baseColumnNames: dataspace_id baseTableName: schema_set constraintName: schema_set_dataspace deferrable: false initiallyDeferred: false onDelete: CASCADE onUpdate: CASCADE referencedColumnNames: id referencedTableName: dataspace validate: true - changeSet: id: 1-31 author: cps changes: - createIndex: columns: - column: name: schema_node_identifier indexName: PERF_SCHEMA_NODE_SCHEMA_NODE_ID tableName: schema_node - changeSet: id: 1-32 author: cps changes: - addForeignKeyConstraint: baseColumnNames: yang_resource_id baseTableName: schema_set_yang_resources constraintName: schema_set_yang_resources_yang_resource_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: yang_resource validate: true - changeSet: id: 1-33 author: cps changes: - addForeignKeyConstraint: baseColumnNames: dataspace_id baseTableName: anchor constraintName: anchor_dataspace_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: dataspace validate: true - changeSet: id: 1-34 author: cps changes: - addForeignKeyConstraint: baseColumnNames: schema_set_id baseTableName: anchor constraintName: anchor_schema_set_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: schema_set validate: true - changeSet: id: 1-35 author: cps changes: - addForeignKeyConstraint: baseColumnNames: relation_type_id baseTableName: relation constraintName: relation_relation_type_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: relation_type validate: true - changeSet: id: 1-36 author: cps changes: - addForeignKeyConstraint: baseColumnNames: parent_id baseTableName: fragment constraintName: fragment_parent_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: fragment validate: true - changeSet: id: 1-37 author: cps changes: - addForeignKeyConstraint: baseColumnNames: schema_node_id baseTableName: fragment constraintName: fragment_schema_node_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: schema_node validate: true - changeSet: logicalFilePath: changelog/db/changes/06-delete-not-required-fragment-index.yaml id: 6 author: cps comment: Drop unique index for dataspace and xpath on fragment table changes: - dropIndex: indexName: UQ_FRAGMENT_XPATH tableName: fragment rollback: - createIndex: columns: - column: name: xpath - column: name: dataspace_id indexName: UQ_FRAGMENT_XPATH tableName: fragment unique: true - changeSet: logicalFilePath: changelog/db/changes/11-add-column-to-yang-resources-table.yaml id: 11 label: add-module-name-and-revision-column author: cps changes: - addColumn: tableName: yang_resource columns: - column: name: module_name type: TEXT - column: name: revision type: TEXT - changeSet: logicalFilePath: changelog/db/changes/11-add-column-to-yang-resources-table.yaml id: 11.1 label: update-previous-data-module-name-and-revision author: cps changes: - sql: sql: update yang_resource set module_name = 'dummy_module_name', revision = '2021-08-04' where module_name is null and revision is null rollback: sql: update yang_resource set module_name = null, revision = null where module_name = 'dummy_module_name' and revision = '2021-08-04' - changeSet: logicalFilePath: changelog/db/changes/15-rename-column-yang-resource-table.yaml author: cps label: yang-resource-rename-column id: 15 changes: - renameColumn: tableName: yang_resource columnDataType: TEXT oldColumnName: name newColumnName: file_name rollback: - sql: sql: alter table yang_resource rename column file_name to name - changeSet: logicalFilePath: changelog/db/changes/17-add-index-to-schema-set-yang-resources.yaml author: cps id: 17 changes: - createIndex: columns: - column: name: schema_set_id indexName: FKI_SCHEMA_SET_YANG_RESOURCES_SCHEMA_SET_ID_FK tableName: schema_set_yang_resources rollback: - dropIndex: indexName: FKI_SCHEMA_SET_YANG_RESOURCES_SCHEMA_SET_ID_FK tableName: schema_set_yang_resources - changeSet: logicalFilePath: changelog/db/changes/18-cascade-delete-fragment-children.yaml author: cps id: 18 changes: - dropForeignKeyConstraint: baseTableName: fragment constraintName: fragment_parent_id_fkey - addForeignKeyConstraint: baseColumnNames: parent_id baseTableName: fragment constraintName: fragment_parent_id_fkey deferrable: false initiallyDeferred: false onDelete: CASCADE onUpdate: NO ACTION referencedColumnNames: id referencedTableName: fragment validate: true rollback: - dropForeignKeyConstraint: baseTableName: fragment constraintName: fragment_parent_id_fkey - addForeignKeyConstraint: baseColumnNames: parent_id baseTableName: fragment constraintName: fragment_parent_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: fragment validate: true - changeSet: logicalFilePath: changelog/db/changes/19-delete-not-required-dataspace-id-from-fragment.yaml id: 19-1 author: cps changes: - dropIndex: indexName: FKI_FRAGMENT_DATASPACE_ID_FK tableName: fragment rollback: - createIndex: columns: - column: name: dataspace_id indexName: FKI_FRAGMENT_DATASPACE_ID_FK tableName: fragment - changeSet: logicalFilePath: changelog/db/changes/19-delete-not-required-dataspace-id-from-fragment.yaml id: 19-2 author: cps changes: - dropUniqueConstraint: constraintName: fragment_dataspace_id_anchor_id_xpath_key tableName: fragment - addUniqueConstraint: columnNames: anchor_id, xpath constraintName: fragment_anchor_id_xpath_key tableName: fragment rollback: - dropUniqueConstraint: constraintName: fragment_anchor_id_xpath_key tableName: fragment - addUniqueConstraint: columnNames: dataspace_id, anchor_id, xpath constraintName: fragment_dataspace_id_anchor_id_xpath_key tableName: fragment - changeSet: logicalFilePath: changelog/db/changes/19-delete-not-required-dataspace-id-from-fragment.yaml id: 19-3 author: cps changes: - dropForeignKeyConstraint: baseTableName: fragment constraintName: fragment_dataspace_id_fkey rollback: - addForeignKeyConstraint: baseColumnNames: dataspace_id baseTableName: fragment constraintName: fragment_dataspace_id_fkey deferrable: false initiallyDeferred: false onDelete: NO ACTION onUpdate: NO ACTION referencedColumnNames: id referencedTableName: dataspace validate: true - changeSet: logicalFilePath: changelog/db/changes/19-delete-not-required-dataspace-id-from-fragment.yaml id: 19-4 author: cps changes: - dropColumn: columnName: dataspace_id tableName: fragment rollback: - addColumn: tableName: fragment columns: - column: name: dataspace_id type: INTEGER - sqlFile: path: changelog/db/changes/19-repopulate-dataspace-id-for-rollback.sql - addNotNullConstraint: tableName: fragment columnName: dataspace_id columnDataType: INTEGER - changeSet: logicalFilePath: changelog/db/changes/19-delete-not-required-dataspace-id-from-fragment.yaml id: 19-5 author: cps changes: - addNotNullConstraint: tableName: fragment columnName: anchor_id columnDataType: BIGINT rollback: - dropNotNullConstraint: tableName: fragment columnName: anchor_id columnDataType: BIGINT - changeSet: author: cps logicalFilePath: changelog/db/changes/20-change-foreign-key-id-types-to-integer.yaml id: 20 changes: - modifyDataType: columnName: dataspace_id newDataType: INTEGER tableName: schema_set - modifyDataType: columnName: schema_set_id newDataType: INTEGER tableName: schema_set_yang_resources - modifyDataType: columnName: yang_resource_id newDataType: INTEGER tableName: schema_set_yang_resources rollback: - modifyDataType: columnName: dataspace_id newDataType: BIGINT tableName: schema_set - modifyDataType: columnName: schema_set_id newDataType: BIGINT tableName: schema_set_yang_resources - modifyDataType: columnName: yang_resource_id newDataType: BIGINT tableName: schema_set_yang_resources - changeSet: logicalFilePath: changelog/db/changes/21-escape-quotes-in-xpath.yaml id: 21 author: cps changes: - sqlFile: path: changelog/db/changes/21-escape-quotes-in-xpath-forward.sql rollback: - sqlFile: path: changelog/db/changes/21-escape-quotes-in-xpath-rollback.sql