committed by
GitHub
29 changed files with 164 additions and 802 deletions
@ -1,56 +0,0 @@ |
|||||
/** |
|
||||
* Copyright © 2016-2022 The Thingsboard Authors |
|
||||
* |
|
||||
* 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. |
|
||||
*/ |
|
||||
package org.thingsboard.server.service.install; |
|
||||
|
|
||||
import lombok.extern.slf4j.Slf4j; |
|
||||
import org.springframework.context.annotation.Profile; |
|
||||
import org.springframework.stereotype.Service; |
|
||||
import org.thingsboard.server.dao.util.HsqlDao; |
|
||||
|
|
||||
import java.nio.charset.Charset; |
|
||||
import java.nio.file.Files; |
|
||||
import java.nio.file.Path; |
|
||||
import java.nio.file.Paths; |
|
||||
import java.sql.Connection; |
|
||||
import java.sql.DriverManager; |
|
||||
|
|
||||
@Service |
|
||||
@Slf4j |
|
||||
@HsqlDao |
|
||||
@Profile("install") |
|
||||
public class HsqlEntityDatabaseSchemaService extends SqlAbstractDatabaseSchemaService |
|
||||
implements EntityDatabaseSchemaService { |
|
||||
protected HsqlEntityDatabaseSchemaService() { |
|
||||
super("schema-entities-hsql.sql", "schema-entities-idx.sql"); |
|
||||
} |
|
||||
|
|
||||
private final String schemaTypesSql = "schema-types-hsql.sql"; |
|
||||
|
|
||||
@Override |
|
||||
public void createDatabaseSchema(boolean createIndexes) throws Exception { |
|
||||
|
|
||||
log.info("Installing SQL DataBase types part: " + schemaTypesSql); |
|
||||
|
|
||||
Path schemaFile = Paths.get(installScripts.getDataDir(), SQL_DIR, schemaTypesSql); |
|
||||
try (Connection conn = DriverManager.getConnection(dbUrl, dbUserName, dbPassword)) { |
|
||||
String sql = new String(Files.readAllBytes(schemaFile), Charset.forName("UTF-8")); |
|
||||
conn.createStatement().execute(sql); //NOSONAR, ignoring because method used to load initial thingsboard database schema
|
|
||||
} |
|
||||
|
|
||||
super.createDatabaseSchema(createIndexes); |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
@ -1,32 +0,0 @@ |
|||||
/** |
|
||||
* Copyright © 2016-2022 The Thingsboard Authors |
|
||||
* |
|
||||
* 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. |
|
||||
*/ |
|
||||
package org.thingsboard.server.service.install; |
|
||||
|
|
||||
import org.springframework.context.annotation.Profile; |
|
||||
import org.springframework.stereotype.Service; |
|
||||
import org.thingsboard.server.dao.util.HsqlDao; |
|
||||
import org.thingsboard.server.dao.util.SqlTsDao; |
|
||||
|
|
||||
@Service |
|
||||
@SqlTsDao |
|
||||
@HsqlDao |
|
||||
@Profile("install") |
|
||||
public class HsqlTsDatabaseSchemaService extends SqlAbstractDatabaseSchemaService |
|
||||
implements TsDatabaseSchemaService { |
|
||||
public HsqlTsDatabaseSchemaService() { |
|
||||
super("schema-ts-hsql.sql", null); |
|
||||
} |
|
||||
} |
|
||||
@ -1,599 +0,0 @@ |
|||||
-- |
|
||||
-- Copyright © 2016-2022 The Thingsboard Authors |
|
||||
-- |
|
||||
-- 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. |
|
||||
-- |
|
||||
|
|
||||
SET DATABASE SQL SYNTAX PGS TRUE; |
|
||||
SET DATABASE TRANSACTION CONTROL MVCC; |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS admin_settings ( |
|
||||
id uuid NOT NULL CONSTRAINT admin_settings_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
json_value varchar, |
|
||||
key varchar(255) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS alarm ( |
|
||||
id uuid NOT NULL CONSTRAINT alarm_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
ack_ts bigint, |
|
||||
clear_ts bigint, |
|
||||
additional_info varchar, |
|
||||
end_ts bigint, |
|
||||
originator_id uuid, |
|
||||
originator_type integer, |
|
||||
propagate boolean, |
|
||||
severity varchar(255), |
|
||||
start_ts bigint, |
|
||||
status varchar(255), |
|
||||
tenant_id uuid, |
|
||||
customer_id uuid, |
|
||||
propagate_relation_types varchar, |
|
||||
type varchar(255) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS entity_alarm ( |
|
||||
tenant_id uuid NOT NULL, |
|
||||
entity_type varchar(32), |
|
||||
entity_id uuid NOT NULL, |
|
||||
created_time bigint NOT NULL, |
|
||||
alarm_type varchar(255) NOT NULL, |
|
||||
customer_id uuid, |
|
||||
alarm_id uuid, |
|
||||
CONSTRAINT entity_alarm_pkey PRIMARY KEY(entity_id, alarm_id), |
|
||||
CONSTRAINT fk_entity_alarm_id FOREIGN KEY (alarm_id) REFERENCES alarm(id) ON DELETE CASCADE |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS asset ( |
|
||||
id uuid NOT NULL CONSTRAINT asset_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
additional_info varchar, |
|
||||
customer_id uuid, |
|
||||
name varchar(255), |
|
||||
label varchar(255), |
|
||||
search_text varchar(255), |
|
||||
tenant_id uuid, |
|
||||
type varchar(255), |
|
||||
CONSTRAINT asset_name_unq_key UNIQUE (tenant_id, name) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS audit_log ( |
|
||||
id uuid NOT NULL CONSTRAINT audit_log_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
tenant_id uuid, |
|
||||
customer_id uuid, |
|
||||
entity_id uuid, |
|
||||
entity_type varchar(255), |
|
||||
entity_name varchar(255), |
|
||||
user_id uuid, |
|
||||
user_name varchar(255), |
|
||||
action_type varchar(255), |
|
||||
action_data varchar(1000000), |
|
||||
action_status varchar(255), |
|
||||
action_failure_details varchar(1000000) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS attribute_kv ( |
|
||||
entity_type varchar(255), |
|
||||
entity_id uuid, |
|
||||
attribute_type varchar(255), |
|
||||
attribute_key varchar(255), |
|
||||
bool_v boolean, |
|
||||
str_v varchar(10000000), |
|
||||
long_v bigint, |
|
||||
dbl_v double precision, |
|
||||
json_v varchar(10000000), |
|
||||
last_update_ts bigint, |
|
||||
CONSTRAINT attribute_kv_pkey PRIMARY KEY (entity_type, entity_id, attribute_type, attribute_key) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS component_descriptor ( |
|
||||
id uuid NOT NULL CONSTRAINT component_descriptor_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
actions varchar(255), |
|
||||
clazz varchar UNIQUE, |
|
||||
configuration_descriptor varchar, |
|
||||
name varchar(255), |
|
||||
scope varchar(255), |
|
||||
search_text varchar(255), |
|
||||
type varchar(255) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS customer ( |
|
||||
id uuid NOT NULL CONSTRAINT customer_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
additional_info varchar, |
|
||||
address varchar, |
|
||||
address2 varchar, |
|
||||
city varchar(255), |
|
||||
country varchar(255), |
|
||||
email varchar(255), |
|
||||
phone varchar(255), |
|
||||
search_text varchar(255), |
|
||||
state varchar(255), |
|
||||
tenant_id uuid, |
|
||||
title varchar(255), |
|
||||
zip varchar(255) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS dashboard ( |
|
||||
id uuid NOT NULL CONSTRAINT dashboard_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
configuration varchar(10000000), |
|
||||
assigned_customers varchar(1000000), |
|
||||
search_text varchar(255), |
|
||||
tenant_id uuid, |
|
||||
title varchar(255), |
|
||||
mobile_hide boolean DEFAULT false, |
|
||||
mobile_order int, |
|
||||
image varchar(1000000) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS rule_chain ( |
|
||||
id uuid NOT NULL CONSTRAINT rule_chain_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
additional_info varchar, |
|
||||
configuration varchar(10000000), |
|
||||
name varchar(255), |
|
||||
type varchar(255), |
|
||||
first_rule_node_id uuid, |
|
||||
root boolean, |
|
||||
debug_mode boolean, |
|
||||
search_text varchar(255), |
|
||||
tenant_id uuid |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS rule_node ( |
|
||||
id uuid NOT NULL CONSTRAINT rule_node_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
rule_chain_id uuid, |
|
||||
additional_info varchar, |
|
||||
configuration varchar(10000000), |
|
||||
type varchar(255), |
|
||||
name varchar(255), |
|
||||
debug_mode boolean, |
|
||||
search_text varchar(255) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS rule_node_state ( |
|
||||
id uuid NOT NULL CONSTRAINT rule_node_state_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
rule_node_id uuid NOT NULL, |
|
||||
entity_type varchar(32) NOT NULL, |
|
||||
entity_id uuid NOT NULL, |
|
||||
state_data varchar(16384) NOT NULL, |
|
||||
CONSTRAINT rule_node_state_unq_key UNIQUE (rule_node_id, entity_id), |
|
||||
CONSTRAINT fk_rule_node_state_node_id FOREIGN KEY (rule_node_id) REFERENCES rule_node(id) ON DELETE CASCADE |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS ota_package ( |
|
||||
id uuid NOT NULL CONSTRAINT ota_package_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
tenant_id uuid NOT NULL, |
|
||||
device_profile_id uuid , |
|
||||
type varchar(32) NOT NULL, |
|
||||
title varchar(255) NOT NULL, |
|
||||
version varchar(255) NOT NULL, |
|
||||
tag varchar(255), |
|
||||
url varchar(255), |
|
||||
file_name varchar(255), |
|
||||
content_type varchar(255), |
|
||||
checksum_algorithm varchar(32), |
|
||||
checksum varchar(1020), |
|
||||
data binary, |
|
||||
data_size bigint, |
|
||||
additional_info varchar, |
|
||||
search_text varchar(255), |
|
||||
CONSTRAINT ota_package_tenant_title_version_unq_key UNIQUE (tenant_id, title, version) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS device_profile ( |
|
||||
id uuid NOT NULL CONSTRAINT device_profile_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
name varchar(255), |
|
||||
type varchar(255), |
|
||||
image varchar(1000000), |
|
||||
transport_type varchar(255), |
|
||||
provision_type varchar(255), |
|
||||
profile_data jsonb, |
|
||||
description varchar, |
|
||||
search_text varchar(255), |
|
||||
is_default boolean, |
|
||||
tenant_id uuid, |
|
||||
firmware_id uuid, |
|
||||
software_id uuid, |
|
||||
default_rule_chain_id uuid, |
|
||||
default_dashboard_id uuid, |
|
||||
default_queue_name varchar(255), |
|
||||
provision_device_key varchar, |
|
||||
CONSTRAINT device_profile_name_unq_key UNIQUE (tenant_id, name), |
|
||||
CONSTRAINT device_provision_key_unq_key UNIQUE (provision_device_key), |
|
||||
CONSTRAINT fk_default_rule_chain_device_profile FOREIGN KEY (default_rule_chain_id) REFERENCES rule_chain(id), |
|
||||
CONSTRAINT fk_default_dashboard_device_profile FOREIGN KEY (default_dashboard_id) REFERENCES dashboard(id), |
|
||||
CONSTRAINT fk_firmware_device_profile FOREIGN KEY (firmware_id) REFERENCES ota_package(id), |
|
||||
CONSTRAINT fk_software_device_profile FOREIGN KEY (software_id) REFERENCES ota_package(id) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS device ( |
|
||||
id uuid NOT NULL CONSTRAINT device_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
additional_info varchar, |
|
||||
customer_id uuid, |
|
||||
device_profile_id uuid NOT NULL, |
|
||||
device_data jsonb, |
|
||||
type varchar(255), |
|
||||
name varchar(255), |
|
||||
label varchar(255), |
|
||||
search_text varchar(255), |
|
||||
tenant_id uuid, |
|
||||
firmware_id uuid, |
|
||||
software_id uuid, |
|
||||
CONSTRAINT device_name_unq_key UNIQUE (tenant_id, name), |
|
||||
CONSTRAINT fk_device_profile FOREIGN KEY (device_profile_id) REFERENCES device_profile(id), |
|
||||
CONSTRAINT fk_firmware_device FOREIGN KEY (firmware_id) REFERENCES ota_package(id), |
|
||||
CONSTRAINT fk_software_device FOREIGN KEY (software_id) REFERENCES ota_package(id) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS device_credentials ( |
|
||||
id uuid NOT NULL CONSTRAINT device_credentials_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
credentials_id varchar, |
|
||||
credentials_type varchar(255), |
|
||||
credentials_value varchar, |
|
||||
device_id uuid, |
|
||||
CONSTRAINT device_credentials_id_unq_key UNIQUE (credentials_id), |
|
||||
CONSTRAINT device_credentials_device_id_unq_key UNIQUE (device_id) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS event ( |
|
||||
id uuid NOT NULL CONSTRAINT event_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
body varchar(10000000), |
|
||||
entity_id uuid, |
|
||||
entity_type varchar(255), |
|
||||
event_type varchar(255), |
|
||||
event_uid varchar(255), |
|
||||
tenant_id uuid, |
|
||||
ts bigint NOT NULL, |
|
||||
CONSTRAINT event_unq_key UNIQUE (tenant_id, entity_type, entity_id, event_type, event_uid) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS relation ( |
|
||||
from_id uuid, |
|
||||
from_type varchar(255), |
|
||||
to_id uuid, |
|
||||
to_type varchar(255), |
|
||||
relation_type_group varchar(255), |
|
||||
relation_type varchar(255), |
|
||||
additional_info varchar, |
|
||||
CONSTRAINT relation_pkey PRIMARY KEY (from_id, from_type, relation_type_group, relation_type, to_id, to_type) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS tb_user ( |
|
||||
id uuid NOT NULL CONSTRAINT tb_user_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
additional_info varchar, |
|
||||
authority varchar(255), |
|
||||
customer_id uuid, |
|
||||
email varchar(255) UNIQUE, |
|
||||
first_name varchar(255), |
|
||||
last_name varchar(255), |
|
||||
search_text varchar(255), |
|
||||
tenant_id uuid |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS tenant_profile ( |
|
||||
id uuid NOT NULL CONSTRAINT tenant_profile_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
name varchar(255), |
|
||||
profile_data jsonb, |
|
||||
description varchar, |
|
||||
search_text varchar(255), |
|
||||
is_default boolean, |
|
||||
isolated_tb_core boolean, |
|
||||
isolated_tb_rule_engine boolean, |
|
||||
CONSTRAINT tenant_profile_name_unq_key UNIQUE (name) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS tenant ( |
|
||||
id uuid NOT NULL CONSTRAINT tenant_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
additional_info varchar, |
|
||||
tenant_profile_id uuid NOT NULL, |
|
||||
address varchar, |
|
||||
address2 varchar, |
|
||||
city varchar(255), |
|
||||
country varchar(255), |
|
||||
email varchar(255), |
|
||||
phone varchar(255), |
|
||||
region varchar(255), |
|
||||
search_text varchar(255), |
|
||||
state varchar(255), |
|
||||
title varchar(255), |
|
||||
zip varchar(255), |
|
||||
CONSTRAINT fk_tenant_profile FOREIGN KEY (tenant_profile_id) REFERENCES tenant_profile(id) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS user_credentials ( |
|
||||
id uuid NOT NULL CONSTRAINT user_credentials_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
activate_token varchar(255) UNIQUE, |
|
||||
enabled boolean, |
|
||||
password varchar(255), |
|
||||
reset_token varchar(255) UNIQUE, |
|
||||
user_id uuid UNIQUE |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS widget_type ( |
|
||||
id uuid NOT NULL CONSTRAINT widget_type_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
alias varchar(255), |
|
||||
bundle_alias varchar(255), |
|
||||
descriptor varchar(1000000), |
|
||||
name varchar(255), |
|
||||
tenant_id uuid, |
|
||||
image varchar(1000000), |
|
||||
description varchar(255) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS widgets_bundle ( |
|
||||
id uuid NOT NULL CONSTRAINT widgets_bundle_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
alias varchar(255), |
|
||||
search_text varchar(255), |
|
||||
tenant_id uuid, |
|
||||
title varchar(255), |
|
||||
image varchar(1000000), |
|
||||
description varchar(255) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS entity_view ( |
|
||||
id uuid NOT NULL CONSTRAINT entity_view_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
entity_id uuid, |
|
||||
entity_type varchar(255), |
|
||||
tenant_id uuid, |
|
||||
customer_id uuid, |
|
||||
type varchar(255), |
|
||||
name varchar(255), |
|
||||
keys varchar(10000000), |
|
||||
start_ts bigint, |
|
||||
end_ts bigint, |
|
||||
search_text varchar(255), |
|
||||
additional_info varchar |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS ts_kv_latest ( |
|
||||
entity_id uuid NOT NULL, |
|
||||
key int NOT NULL, |
|
||||
ts bigint NOT NULL, |
|
||||
bool_v boolean, |
|
||||
str_v varchar(10000000), |
|
||||
long_v bigint, |
|
||||
dbl_v double precision, |
|
||||
json_v varchar(10000000), |
|
||||
CONSTRAINT ts_kv_latest_pkey PRIMARY KEY (entity_id, key) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS ts_kv_dictionary ( |
|
||||
key varchar(255) NOT NULL, |
|
||||
key_id int GENERATED BY DEFAULT AS IDENTITY(start with 0 increment by 1) UNIQUE, |
|
||||
CONSTRAINT ts_key_id_pkey PRIMARY KEY (key) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS oauth2_params ( |
|
||||
id uuid NOT NULL CONSTRAINT oauth2_params_pkey PRIMARY KEY, |
|
||||
enabled boolean, |
|
||||
tenant_id uuid, |
|
||||
created_time bigint NOT NULL |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS oauth2_registration ( |
|
||||
id uuid NOT NULL CONSTRAINT oauth2_registration_pkey PRIMARY KEY, |
|
||||
oauth2_params_id uuid NOT NULL, |
|
||||
created_time bigint NOT NULL, |
|
||||
additional_info varchar, |
|
||||
client_id varchar(255), |
|
||||
client_secret varchar(2048), |
|
||||
authorization_uri varchar(255), |
|
||||
token_uri varchar(255), |
|
||||
scope varchar(255), |
|
||||
platforms varchar(255), |
|
||||
user_info_uri varchar(255), |
|
||||
user_name_attribute_name varchar(255), |
|
||||
jwk_set_uri varchar(255), |
|
||||
client_authentication_method varchar(255), |
|
||||
login_button_label varchar(255), |
|
||||
login_button_icon varchar(255), |
|
||||
allow_user_creation boolean, |
|
||||
activate_user boolean, |
|
||||
type varchar(31), |
|
||||
basic_email_attribute_key varchar(31), |
|
||||
basic_first_name_attribute_key varchar(31), |
|
||||
basic_last_name_attribute_key varchar(31), |
|
||||
basic_tenant_name_strategy varchar(31), |
|
||||
basic_tenant_name_pattern varchar(255), |
|
||||
basic_customer_name_pattern varchar(255), |
|
||||
basic_default_dashboard_name varchar(255), |
|
||||
basic_always_full_screen boolean, |
|
||||
custom_url varchar(255), |
|
||||
custom_username varchar(255), |
|
||||
custom_password varchar(255), |
|
||||
custom_send_token boolean, |
|
||||
CONSTRAINT fk_registration_oauth2_params FOREIGN KEY (oauth2_params_id) REFERENCES oauth2_params(id) ON DELETE CASCADE |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS oauth2_domain ( |
|
||||
id uuid NOT NULL CONSTRAINT oauth2_domain_pkey PRIMARY KEY, |
|
||||
oauth2_params_id uuid NOT NULL, |
|
||||
created_time bigint NOT NULL, |
|
||||
domain_name varchar(255), |
|
||||
domain_scheme varchar(31), |
|
||||
CONSTRAINT fk_domain_oauth2_params FOREIGN KEY (oauth2_params_id) REFERENCES oauth2_params(id) ON DELETE CASCADE, |
|
||||
CONSTRAINT oauth2_domain_unq_key UNIQUE (oauth2_params_id, domain_name, domain_scheme) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS oauth2_mobile ( |
|
||||
id uuid NOT NULL CONSTRAINT oauth2_mobile_pkey PRIMARY KEY, |
|
||||
oauth2_params_id uuid NOT NULL, |
|
||||
created_time bigint NOT NULL, |
|
||||
pkg_name varchar(255), |
|
||||
app_secret varchar(2048), |
|
||||
CONSTRAINT fk_mobile_oauth2_params FOREIGN KEY (oauth2_params_id) REFERENCES oauth2_params(id) ON DELETE CASCADE, |
|
||||
CONSTRAINT oauth2_mobile_unq_key UNIQUE (oauth2_params_id, pkg_name) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS oauth2_client_registration_template ( |
|
||||
id uuid NOT NULL CONSTRAINT oauth2_client_registration_template_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
additional_info varchar, |
|
||||
provider_id varchar(255), |
|
||||
authorization_uri varchar(255), |
|
||||
token_uri varchar(255), |
|
||||
scope varchar(255), |
|
||||
user_info_uri varchar(255), |
|
||||
user_name_attribute_name varchar(255), |
|
||||
jwk_set_uri varchar(255), |
|
||||
client_authentication_method varchar(255), |
|
||||
type varchar(31), |
|
||||
basic_email_attribute_key varchar(31), |
|
||||
basic_first_name_attribute_key varchar(31), |
|
||||
basic_last_name_attribute_key varchar(31), |
|
||||
basic_tenant_name_strategy varchar(31), |
|
||||
basic_tenant_name_pattern varchar(255), |
|
||||
basic_customer_name_pattern varchar(255), |
|
||||
basic_default_dashboard_name varchar(255), |
|
||||
basic_always_full_screen boolean, |
|
||||
comment varchar, |
|
||||
login_button_icon varchar(255), |
|
||||
login_button_label varchar(255), |
|
||||
help_link varchar(255), |
|
||||
CONSTRAINT oauth2_template_provider_id_unq_key UNIQUE (provider_id) |
|
||||
); |
|
||||
|
|
||||
-- Deprecated |
|
||||
CREATE TABLE IF NOT EXISTS oauth2_client_registration_info ( |
|
||||
id uuid NOT NULL CONSTRAINT oauth2_client_registration_info_pkey PRIMARY KEY, |
|
||||
enabled boolean, |
|
||||
created_time bigint NOT NULL, |
|
||||
additional_info varchar, |
|
||||
client_id varchar(255), |
|
||||
client_secret varchar(255), |
|
||||
authorization_uri varchar(255), |
|
||||
token_uri varchar(255), |
|
||||
scope varchar(255), |
|
||||
user_info_uri varchar(255), |
|
||||
user_name_attribute_name varchar(255), |
|
||||
jwk_set_uri varchar(255), |
|
||||
client_authentication_method varchar(255), |
|
||||
login_button_label varchar(255), |
|
||||
login_button_icon varchar(255), |
|
||||
allow_user_creation boolean, |
|
||||
activate_user boolean, |
|
||||
type varchar(31), |
|
||||
basic_email_attribute_key varchar(31), |
|
||||
basic_first_name_attribute_key varchar(31), |
|
||||
basic_last_name_attribute_key varchar(31), |
|
||||
basic_tenant_name_strategy varchar(31), |
|
||||
basic_tenant_name_pattern varchar(255), |
|
||||
basic_customer_name_pattern varchar(255), |
|
||||
basic_default_dashboard_name varchar(255), |
|
||||
basic_always_full_screen boolean, |
|
||||
custom_url varchar(255), |
|
||||
custom_username varchar(255), |
|
||||
custom_password varchar(255), |
|
||||
custom_send_token boolean |
|
||||
); |
|
||||
|
|
||||
-- Deprecated |
|
||||
CREATE TABLE IF NOT EXISTS oauth2_client_registration ( |
|
||||
id uuid NOT NULL CONSTRAINT oauth2_client_registration_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
domain_name varchar(255), |
|
||||
domain_scheme varchar(31), |
|
||||
client_registration_info_id uuid |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS api_usage_state ( |
|
||||
id uuid NOT NULL CONSTRAINT usage_record_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
tenant_id uuid, |
|
||||
entity_type varchar(32), |
|
||||
entity_id uuid, |
|
||||
transport varchar(32), |
|
||||
db_storage varchar(32), |
|
||||
re_exec varchar(32), |
|
||||
js_exec varchar(32), |
|
||||
email_exec varchar(32), |
|
||||
sms_exec varchar(32), |
|
||||
alarm_exec varchar(32), |
|
||||
CONSTRAINT api_usage_state_unq_key UNIQUE (tenant_id, entity_id) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS resource ( |
|
||||
id uuid NOT NULL CONSTRAINT resource_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
tenant_id uuid NOT NULL, |
|
||||
title varchar(255) NOT NULL, |
|
||||
resource_type varchar(32) NOT NULL, |
|
||||
resource_key varchar(255) NOT NULL, |
|
||||
search_text varchar(255), |
|
||||
file_name varchar(255) NOT NULL, |
|
||||
data varchar, |
|
||||
CONSTRAINT resource_unq_key UNIQUE (tenant_id, resource_type, resource_key) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS edge ( |
|
||||
id uuid NOT NULL CONSTRAINT edge_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
additional_info varchar, |
|
||||
customer_id uuid, |
|
||||
root_rule_chain_id uuid, |
|
||||
type varchar(255), |
|
||||
name varchar(255), |
|
||||
label varchar(255), |
|
||||
routing_key varchar(255), |
|
||||
secret varchar(255), |
|
||||
edge_license_key varchar(30), |
|
||||
cloud_endpoint varchar(255), |
|
||||
search_text varchar(255), |
|
||||
tenant_id uuid, |
|
||||
CONSTRAINT edge_name_unq_key UNIQUE (tenant_id, name), |
|
||||
CONSTRAINT edge_routing_key_unq_key UNIQUE (routing_key) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS edge_event ( |
|
||||
id uuid NOT NULL CONSTRAINT edge_event_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
edge_id uuid, |
|
||||
edge_event_type varchar(255), |
|
||||
edge_event_uid varchar(255), |
|
||||
entity_id uuid, |
|
||||
edge_event_action varchar(255), |
|
||||
body varchar(10000000), |
|
||||
tenant_id uuid, |
|
||||
ts bigint NOT NULL |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS rpc ( |
|
||||
id uuid NOT NULL CONSTRAINT rpc_pkey PRIMARY KEY, |
|
||||
created_time bigint NOT NULL, |
|
||||
tenant_id uuid NOT NULL, |
|
||||
device_id uuid NOT NULL, |
|
||||
expiration_time bigint NOT NULL, |
|
||||
request varchar(10000000) NOT NULL, |
|
||||
response varchar(10000000), |
|
||||
additional_info varchar(10000000), |
|
||||
status varchar(255) NOT NULL |
|
||||
); |
|
||||
@ -1,41 +0,0 @@ |
|||||
-- |
|
||||
-- Copyright © 2016-2022 The Thingsboard Authors |
|
||||
-- |
|
||||
-- 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. |
|
||||
-- |
|
||||
|
|
||||
SET DATABASE SQL SYNTAX PGS TRUE; |
|
||||
SET DATABASE TRANSACTION CONTROL MVCC; |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS ts_kv ( |
|
||||
entity_id uuid NOT NULL, |
|
||||
key int NOT NULL, |
|
||||
ts bigint NOT NULL, |
|
||||
bool_v boolean, |
|
||||
str_v varchar(10000000), |
|
||||
long_v bigint, |
|
||||
dbl_v double precision, |
|
||||
json_v varchar(10000000), |
|
||||
CONSTRAINT ts_kv_pkey PRIMARY KEY (entity_id, key, ts) |
|
||||
); |
|
||||
|
|
||||
CREATE TABLE IF NOT EXISTS ts_kv_dictionary ( |
|
||||
key varchar(255) NOT NULL, |
|
||||
key_id int GENERATED BY DEFAULT AS IDENTITY(start with 0 increment by 1) UNIQUE, |
|
||||
CONSTRAINT ts_key_id_pkey PRIMARY KEY (key) |
|
||||
); |
|
||||
|
|
||||
CREATE FUNCTION to_uuid(IN entity_id varchar) |
|
||||
RETURNS UUID |
|
||||
RETURN UUID(substring(entity_id, 8, 8) || '-' || substring(entity_id, 4, 4) || '-1' || substring(entity_id, 1, 3) || |
|
||||
'-' || substring(entity_id, 16, 4) || '-' || substring(entity_id, 20, 12)); |
|
||||
@ -1,20 +0,0 @@ |
|||||
-- |
|
||||
-- Copyright © 2016-2022 The Thingsboard Authors |
|
||||
-- |
|
||||
-- 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. |
|
||||
-- |
|
||||
|
|
||||
DROP TYPE json IF EXISTS; |
|
||||
CREATE TYPE json AS varchar; |
|
||||
DROP TYPE jsonb IF EXISTS; |
|
||||
CREATE TYPE jsonb AS other; |
|
||||
Loading…
Reference in new issue