diff options
author | Evgeny Khramtsov <ekhramtsov@process-one.net> | 2019-02-27 13:06:17 +0300 |
---|---|---|
committer | Evgeny Khramtsov <ekhramtsov@process-one.net> | 2019-02-27 13:06:17 +0300 |
commit | 7511da0f266e61fa12c640bd418606baca4c78ed (patch) | |
tree | ec71e67a273928c7f162f3df3768b39338a373c4 | |
parent | Copy p1_time_compat:unique_timestamp() to misc and make use of it (diff) |
Add SQL schemas for MQTT tables
-rw-r--r-- | sql/lite.new.sql | 17 | ||||
-rw-r--r-- | sql/lite.sql | 16 | ||||
-rw-r--r-- | sql/mysql.new.sql | 16 | ||||
-rw-r--r-- | sql/mysql.sql | 15 | ||||
-rw-r--r-- | sql/pg.new.sql | 17 | ||||
-rw-r--r-- | sql/pg.sql | 16 |
6 files changed, 97 insertions, 0 deletions
diff --git a/sql/lite.new.sql b/sql/lite.new.sql index ab229c6b1..7264e58cb 100644 --- a/sql/lite.new.sql +++ b/sql/lite.new.sql @@ -464,3 +464,20 @@ CREATE TABLE mix_pam ( CREATE UNIQUE INDEX i_mix_pam ON mix_pam (username, server_host, channel, service); CREATE INDEX i_mix_pam_us ON mix_pam (username, server_host); + +CREATE TABLE mqtt_pub ( + username text NOT NULL, + server_host text NOT NULL, + resource text NOT NULL, + topic text NOT NULL, + qos smallint NOT NULL, + payload blob NOT NULL, + payload_format smallint NOT NULL, + content_type text NOT NULL, + response_topic text NOT NULL, + correlation_data blob NOT NULL, + user_properties blob NOT NULL, + expiry bigint NOT NULL +); + +CREATE UNIQUE INDEX i_mqtt_topic_server ON mqtt_pub (topic, server_host); diff --git a/sql/lite.sql b/sql/lite.sql index 8f128c331..e8755029c 100644 --- a/sql/lite.sql +++ b/sql/lite.sql @@ -432,3 +432,19 @@ CREATE TABLE mix_pam ( CREATE UNIQUE INDEX i_mix_pam ON mix_pam (username, channel, service); CREATE INDEX i_mix_pam_us ON mix_pam (username); + +CREATE TABLE mqtt_pub ( + username text NOT NULL, + resource text NOT NULL, + topic text NOT NULL, + qos smallint NOT NULL, + payload blob NOT NULL, + payload_format smallint NOT NULL, + content_type text NOT NULL, + response_topic text NOT NULL, + correlation_data blob NOT NULL, + user_properties blob NOT NULL, + expiry bigint NOT NULL +); + +CREATE UNIQUE INDEX i_mqtt_topic ON mqtt_pub (topic); diff --git a/sql/mysql.new.sql b/sql/mysql.new.sql index 39df58c55..a10e21d91 100644 --- a/sql/mysql.new.sql +++ b/sql/mysql.new.sql @@ -480,3 +480,19 @@ CREATE TABLE mix_pam ( CREATE UNIQUE INDEX i_mix_pam ON mix_pam (username(191), server_host(191), channel(191), service(191)); CREATE INDEX i_mix_pam_us ON mix_pam (username(191), server_host(191)); + +CREATE TABLE mqtt_pub ( + username varchar(191) NOT NULL, + server_host varchar(191) NOT NULL, + resource varchar(191) NOT NULL, + topic text NOT NULL, + qos tinyint NOT NULL, + payload blob NOT NULL, + payload_format tinyint NOT NULL, + content_type text NOT NULL, + response_topic text NOT NULL, + correlation_data blob NOT NULL, + user_properties blob NOT NULL, + expiry int unsigned NOT NULL, + UNIQUE KEY i_mqtt_topic_server (topic(191), server_host) +); diff --git a/sql/mysql.sql b/sql/mysql.sql index 0e3c826ef..a05f8c86c 100644 --- a/sql/mysql.sql +++ b/sql/mysql.sql @@ -448,3 +448,18 @@ CREATE TABLE mix_pam ( CREATE UNIQUE INDEX i_mix_pam ON mix_pam (username(191), channel(191), service(191)); CREATE INDEX i_mix_pam_u ON mix_pam (username(191)); + +CREATE TABLE mqtt_pub ( + username varchar(191) NOT NULL, + resource varchar(191) NOT NULL, + topic text NOT NULL, + qos tinyint NOT NULL, + payload blob NOT NULL, + payload_format tinyint NOT NULL, + content_type text NOT NULL, + response_topic text NOT NULL, + correlation_data blob NOT NULL, + user_properties blob NOT NULL, + expiry int unsigned NOT NULL, + UNIQUE KEY i_mqtt_topic (topic(191)) +); diff --git a/sql/pg.new.sql b/sql/pg.new.sql index 495441147..c585fd307 100644 --- a/sql/pg.new.sql +++ b/sql/pg.new.sql @@ -625,3 +625,20 @@ CREATE TABLE mix_pam ( CREATE UNIQUE INDEX i_mix_pam ON mix_pam (username, server_host, channel, service); CREATE INDEX i_mix_pam_us ON mix_pam (username, server_host); + +CREATE TABLE mqtt_pub ( + username text NOT NULL, + server_host text NOT NULL, + resource text NOT NULL, + topic text NOT NULL, + qos smallint NOT NULL, + payload bytea NOT NULL, + payload_format smallint NOT NULL, + content_type text NOT NULL, + response_topic text NOT NULL, + correlation_data bytea NOT NULL, + user_properties bytea NOT NULL, + expiry bigint NOT NULL +); + +CREATE UNIQUE INDEX i_mqtt_topic_server ON mqtt_pub (topic, server_host); diff --git a/sql/pg.sql b/sql/pg.sql index 250a22d2d..eae98d3f0 100644 --- a/sql/pg.sql +++ b/sql/pg.sql @@ -452,3 +452,19 @@ CREATE TABLE mix_pam ( CREATE UNIQUE INDEX i_mix_pam ON mix_pam (username, channel, service); CREATE INDEX i_mix_pam_us ON mix_pam (username); + +CREATE TABLE mqtt_pub ( + username text NOT NULL, + resource text NOT NULL, + topic text NOT NULL, + qos smallint NOT NULL, + payload bytea NOT NULL, + payload_format smallint NOT NULL, + content_type text NOT NULL, + response_topic text NOT NULL, + correlation_data bytea NOT NULL, + user_properties bytea NOT NULL, + expiry bigint NOT NULL +); + +CREATE UNIQUE INDEX i_mqtt_topic ON mqtt_pub (topic); |