mirror of
https://github.com/Icinga/icingaweb2-module-director.git
synced 2025-07-30 17:24:18 +02:00
schema: complete migrations for icinga_service_set
This commit is contained in:
parent
388c79e430
commit
e23e804421
20
schema/mysql-migrations/upgrade_177.sql
Normal file
20
schema/mysql-migrations/upgrade_177.sql
Normal file
@ -0,0 +1,20 @@
|
||||
ALTER TABLE icinga_service_set ADD COLUMN uuid VARBINARY(16) DEFAULT NULL AFTER id;
|
||||
SET @tmp_uuid = LOWER(CONCAT(
|
||||
LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0'),
|
||||
LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0'), '-',
|
||||
LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0'), '-',
|
||||
'4',
|
||||
LPAD(HEX(FLOOR(RAND() * 0x0fff)), 3, '0'), '-',
|
||||
HEX(FLOOR(RAND() * 4 + 8)),
|
||||
LPAD(HEX(FLOOR(RAND() * 0x0fff)), 3, '0'), '-',
|
||||
LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0'),
|
||||
LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0'),
|
||||
LPAD(HEX(FLOOR(RAND() * 0xffff)), 4, '0')
|
||||
));
|
||||
UPDATE icinga_service_set SET uuid = UNHEX(LPAD(LPAD(HEX(id), 8, '0'), 32, REPLACE(@tmp_uuid, '-', ''))) WHERE uuid IS NULL;
|
||||
ALTER TABLE icinga_service_set MODIFY COLUMN uuid VARBINARY(16) NOT NULL, ADD UNIQUE INDEX uuid (uuid);
|
||||
|
||||
|
||||
INSERT INTO director_schema_migration
|
||||
(schema_version, migration_time)
|
||||
VALUES ('177', NOW());
|
8
schema/pgsql-migrations/upgrade_177.sql
Normal file
8
schema/pgsql-migrations/upgrade_177.sql
Normal file
@ -0,0 +1,8 @@
|
||||
ALTER TABLE icinga_service_set ADD COLUMN uuid bytea UNIQUE CHECK(LENGTH(uuid) = 16);
|
||||
UPDATE icinga_service_set SET uuid = decode(replace(gen_random_uuid()::text, '-', ''), 'hex') WHERE uuid IS NULL;
|
||||
ALTER TABLE icinga_service_set ALTER COLUMN uuid SET NOT NULL;
|
||||
CREATE UNIQUE INDEX service_set_uuid ON icinga_service_set (uuid);
|
||||
|
||||
INSERT INTO director_schema_migration
|
||||
(schema_version, migration_time)
|
||||
VALUES (177, NOW());
|
@ -813,6 +813,7 @@ ALTER TABLE icinga_host_template_choice
|
||||
|
||||
CREATE TABLE icinga_service_set (
|
||||
id serial,
|
||||
uuid bytea UNIQUE CHECK(LENGTH(uuid) = 16),
|
||||
host_id integer DEFAULT NULL,
|
||||
object_name character varying(128) NOT NULL,
|
||||
object_type enum_object_type_all NOT NULL,
|
||||
@ -828,6 +829,7 @@ CREATE TABLE icinga_service_set (
|
||||
|
||||
CREATE UNIQUE INDEX service_set_name ON icinga_service_set (object_name, host_id);
|
||||
CREATE INDEX service_set_host ON icinga_service_set (host_id);
|
||||
CREATE UNIQUE INDEX service_set_uuid ON icinga_service_set (uuid);
|
||||
|
||||
|
||||
CREATE TABLE icinga_service_template_choice (
|
||||
|
Loading…
x
Reference in New Issue
Block a user