CREATE TABLE blc_application (id VARCHAR(36) NOT NULL, allowed_currencies VARCHAR(10485760), allowed_locales VARCHAR(10485760), deactivated CHAR(1) DEFAULT 'N' NOT NULL, default_currency VARCHAR(255), default_locale VARCHAR(255), identifier_type VARCHAR(60), identifier_value VARCHAR(255), is_marketplace CHAR(1) DEFAULT 'N' NOT NULL, name VARCHAR(255), updated_timestamp TIMESTAMP WITHOUT TIME ZONE, trk_archived CHAR(1) DEFAULT 'N' NOT NULL, audit_creation_time TIMESTAMP WITHOUT TIME ZONE, audit_creator VARCHAR(60), audit_update_time TIMESTAMP WITHOUT TIME ZONE, audit_updater VARCHAR(60), trk_change_details VARCHAR(10485760), trk_tenant_id VARCHAR(36), CONSTRAINT blc_application_pkey PRIMARY KEY (id));
CREATE TABLE blc_application_catalog (application_id VARCHAR(36) NOT NULL, catalog_status VARCHAR(60), context_id VARCHAR(36), exclude_from_add CHAR(1) DEFAULT 'N' NOT NULL, implicit VARCHAR(36), mutability_type VARCHAR(60), visible_as_assigned CHAR(1) DEFAULT 'Y' NOT NULL, isolated_catalogs_order INTEGER NOT NULL, CONSTRAINT blc_application_catalog_pkey PRIMARY KEY (application_id, isolated_catalogs_order));
CREATE TABLE blc_catalog (id VARCHAR(36) NOT NULL, default_currency VARCHAR(255), hidden CHAR(1) DEFAULT 'N' NOT NULL, catalog_level BIGINT, catalog_locale VARCHAR(255), catalog_name VARCHAR(255), owning_application VARCHAR(36), updated_timestamp TIMESTAMP WITHOUT TIME ZONE, trk_archived CHAR(1) DEFAULT 'N' NOT NULL, audit_creation_time TIMESTAMP WITHOUT TIME ZONE, audit_creator VARCHAR(60), audit_update_time TIMESTAMP WITHOUT TIME ZONE, audit_updater VARCHAR(60), trk_change_details VARCHAR(10485760), trk_tenant_id VARCHAR(36), vendor_ref VARCHAR(255), CONSTRAINT blc_catalog_pkey PRIMARY KEY (id));
CREATE TABLE blc_change_deploy (id VARCHAR(36) NOT NULL, affects_non_vendor_data CHAR(1) DEFAULT 'N' NOT NULL, application VARCHAR(36), archived CHAR(1) DEFAULT 'N' NOT NULL, author VARCHAR(255), group_ids VARCHAR(10485760), date_created TIMESTAMP WITHOUT TIME ZONE, date_scheduled TIMESTAMP WITHOUT TIME ZONE, deploy_message VARCHAR(255), display_name VARCHAR(255), deploy_exception VARCHAR(10485760), tracking_level INTEGER, sandbox VARCHAR(36), state VARCHAR(60), status VARCHAR(60), status_change_time TIMESTAMP WITHOUT TIME ZONE, CONSTRAINT blc_change_deploy_pkey PRIMARY KEY (id));
CREATE TABLE blc_change_summary_group (id VARCHAR(36) NOT NULL, affects_non_vendor_data CHAR(1) DEFAULT 'N' NOT NULL, archived CHAR(1) DEFAULT 'N' NOT NULL, author VARCHAR(255), summary_ids VARCHAR(10485760), deployment_date TIMESTAMP WITHOUT TIME ZONE, display_name VARCHAR(255), transition_exception VARCHAR(10485760), promote_message VARCHAR(255), sandbox VARCHAR(36), state VARCHAR(60), status VARCHAR(60), change_status_time TIMESTAMP WITHOUT TIME ZONE, CONSTRAINT blc_change_summary_group_pkey PRIMARY KEY (id));
CREATE TABLE blc_notification_state (id VARCHAR(36) NOT NULL, acked CHAR(1) DEFAULT 'N' NOT NULL, attempts INTEGER, change_timestamp TIMESTAMP WITHOUT TIME ZONE, change_timestamp_ack TIMESTAMP WITHOUT TIME ZONE, container VARCHAR(36), entity_type VARCHAR(255) NOT NULL, message_type VARCHAR(255), message_value VARCHAR(10485760), notification_name VARCHAR(255), next_attempt TIMESTAMP WITHOUT TIME ZONE, stopped CHAR(1) DEFAULT 'N' NOT NULL, CONSTRAINT blc_notification_state_pkey PRIMARY KEY (id));
CREATE TABLE blc_resource_lock (id VARCHAR(36) NOT NULL, concept_key VARCHAR(255), context_id VARCHAR(36), lock_expiration_timestamp TIMESTAMP WITHOUT TIME ZONE, locked CHAR(1) DEFAULT 'N', sandbox_id VARCHAR(36), lock_timestamp TIMESTAMP WITHOUT TIME ZONE, token VARCHAR(255), type_alias VARCHAR(255), CONSTRAINT blc_resource_lock_pkey PRIMARY KEY (id));
CREATE TABLE blc_sandbox (id VARCHAR(36) NOT NULL, application VARCHAR(36), color VARCHAR(255), description VARCHAR(255), temporary_sandbox CHAR(1) DEFAULT 'N' NOT NULL, name VARCHAR(255), trk_archived CHAR(1) DEFAULT 'N' NOT NULL, audit_creation_time TIMESTAMP WITHOUT TIME ZONE, audit_creator VARCHAR(60), audit_update_time TIMESTAMP WITHOUT TIME ZONE, audit_updater VARCHAR(60), trk_change_details VARCHAR(10485760), trk_tenant_id VARCHAR(36), CONSTRAINT blc_sandbox_pkey PRIMARY KEY (id));
CREATE TABLE blc_catalog_ref (id VARCHAR(36) NOT NULL, exclusion_filters VARCHAR(10485760), inclusion_filters VARCHAR(10485760), mutability_type VARCHAR(60), parent_catalog_id VARCHAR(36), child_catalog_id VARCHAR(36) NOT NULL, parents_order INTEGER, CONSTRAINT blc_catalog_ref_pkey PRIMARY KEY (id));
CREATE TABLE blc_change_deploy_vendor_xref (change_deploy_id VARCHAR(255) NOT NULL, vendor_ref VARCHAR(255) NOT NULL, CONSTRAINT blc_change_deploy_vendor_xref_pkey PRIMARY KEY (change_deploy_id, vendor_ref));
CREATE TABLE blc_change_group_vendor_xref (change_group_id VARCHAR(255) NOT NULL, vendor_ref VARCHAR(255) NOT NULL, CONSTRAINT blc_change_group_vendor_xref_pkey PRIMARY KEY (change_group_id, vendor_ref));
ALTER TABLE blc_resource_lock ADD CONSTRAINT uk7iegjt4gojv24q9bw8k0i4j0c UNIQUE (context_id, type_alias, sandbox_id, concept_key);
ALTER TABLE blc_application_catalog ADD CONSTRAINT fkdaeorqo87oh0rdu1lfkpv3qow FOREIGN KEY (application_id) REFERENCES blc_application (id) ON UPDATE NO ACTION ON DELETE NO ACTION;
ALTER TABLE blc_change_group_vendor_xref ADD CONSTRAINT fkivhr0sdt80uusipvyidw5btb3 FOREIGN KEY (change_group_id) REFERENCES blc_change_summary_group (id) ON UPDATE NO ACTION ON DELETE NO ACTION;
ALTER TABLE blc_change_deploy_vendor_xref ADD CONSTRAINT fkpib48x6689981wh37um18g7mx FOREIGN KEY (change_deploy_id) REFERENCES blc_change_deploy (id) ON UPDATE NO ACTION ON DELETE NO ACTION;
ALTER TABLE blc_catalog_ref ADD CONSTRAINT fkqa2huaj7r3r8ovdilb9h71x2k FOREIGN KEY (child_catalog_id) REFERENCES blc_catalog (id) ON UPDATE NO ACTION ON DELETE NO ACTION;
