From 8edddeef40e4312176908b82c5930fea29992ad0 Mon Sep 17 00:00:00 2001 From: Thomas Gelf Date: Mon, 14 Oct 2019 17:41:16 +0200 Subject: [PATCH] schema/pgsql: allow for ports > 32767 fixes #928 --- schema/pgsql-migrations/upgrade_169.sql | 8 ++++++++ schema/pgsql.sql | 6 +++--- 2 files changed, 11 insertions(+), 3 deletions(-) create mode 100644 schema/pgsql-migrations/upgrade_169.sql diff --git a/schema/pgsql-migrations/upgrade_169.sql b/schema/pgsql-migrations/upgrade_169.sql new file mode 100644 index 00000000..28b68bc2 --- /dev/null +++ b/schema/pgsql-migrations/upgrade_169.sql @@ -0,0 +1,8 @@ +CREATE DOMAIN d_smallint AS integer CHECK (VALUE >= 0) CHECK (VALUE < 65536); + +ALTER TABLE icinga_endpoint ALTER COLUMN port TYPE d_smallint; + + +INSERT INTO director_schema_migration + (schema_version, migration_time) + VALUES (169, NOW()); diff --git a/schema/pgsql.sql b/schema/pgsql.sql index 0faed77e..33002777 100644 --- a/schema/pgsql.sql +++ b/schema/pgsql.sql @@ -46,7 +46,7 @@ CREATE TYPE enum_sync_state AS ENUM( ); CREATE TYPE enum_host_service AS ENUM('host', 'service'); CREATE TYPE enum_owner_type AS ENUM('user', 'usergroup', 'role'); - +CREATE DOMAIN d_smallint AS integer CHECK (VALUE >= 0) CHECK (VALUE < 65536); CREATE OR REPLACE FUNCTION unix_timestamp(timestamp with time zone) RETURNS bigint AS ' SELECT EXTRACT(EPOCH FROM $1)::bigint AS result @@ -585,7 +585,7 @@ CREATE TABLE icinga_endpoint ( object_type enum_object_type_all NOT NULL, disabled enum_boolean NOT NULL DEFAULT 'n', host character varying(255) DEFAULT NULL, - port smallint DEFAULT NULL, + port d_smallint DEFAULT NULL, log_duration character varying(32) DEFAULT NULL, apiuser_id INTEGER DEFAULT NULL, PRIMARY KEY (id), @@ -2199,4 +2199,4 @@ COMMENT ON COLUMN icinga_scheduled_downtime_range.merge_behaviour IS 'set -> = { INSERT INTO director_schema_migration (schema_version, migration_time) - VALUES (168, NOW()); + VALUES (169, NOW());