From f66ab8dae2f3d0418759f81a3a64dc9517a62449 Mon Sep 17 00:00:00 2001
From: Daniel Baumann <daniel.baumann@progress-linux.org>
Date: Sun, 14 Apr 2024 15:17:31 +0200
Subject: Adding upstream version 1.10.2.

Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
---
 schema/pgsql-legacy-changes/upgrade_22.sql | 55 ++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)
 create mode 100644 schema/pgsql-legacy-changes/upgrade_22.sql

(limited to 'schema/pgsql-legacy-changes/upgrade_22.sql')

diff --git a/schema/pgsql-legacy-changes/upgrade_22.sql b/schema/pgsql-legacy-changes/upgrade_22.sql
new file mode 100644
index 0000000..d7aaf51
--- /dev/null
+++ b/schema/pgsql-legacy-changes/upgrade_22.sql
@@ -0,0 +1,55 @@
+CREATE TABLE icinga_host_field (
+  host_id integer NOT NULL,
+  fieldname character varying(64) NOT NULL,
+  caption character varying(255) NOT NULL,
+  datatype_id integer NOT NULL,
+-- datatype_param? multiple ones?
+  default_value text DEFAULT NULL,
+  format enum_property_format,
+  PRIMARY KEY (host_id, fieldname),
+  CONSTRAINT icinga_host_field_host
+  FOREIGN KEY (host_id)
+  REFERENCES icinga_host (id)
+    ON DELETE CASCADE
+    ON UPDATE CASCADE,
+  CONSTRAINT icinga_host_field_datatype
+  FOREIGN KEY (datatype_id)
+  REFERENCES director_datatype (id)
+    ON DELETE RESTRICT
+    ON UPDATE CASCADE
+);
+
+CREATE UNIQUE INDEX host_field_key ON icinga_host_field (host_id, fieldname);
+CREATE INDEX host_field_search_idx ON icinga_host_field (fieldname);
+CREATE INDEX host_field_host ON icinga_host_field (host_id);
+CREATE INDEX host_field_datatype ON icinga_host_field (datatype);
+
+COMMENT ON COLUMN icinga_host_field.host_id IS 'Makes only sense for templates';
+
+
+CREATE TABLE icinga_service_field (
+  service_id integer NOT NULL,
+  fieldname character varying(64) NOT NULL,
+  caption character varying(255) NOT NULL,
+  datatype_id integer NOT NULL,
+-- datatype_param? multiple ones?
+  default_value text DEFAULT NULL,
+  format enum_property_format,
+  PRIMARY KEY (service_id, fieldname),
+  CONSTRAINT icinga_service_field_service
+  FOREIGN KEY (service_id)
+  REFERENCES icinga_service (id)
+    ON DELETE CASCADE
+    ON UPDATE CASCADE,
+  CONSTRAINT icinga_service_field_datatype
+  FOREIGN KEY datatype (datatype_id)
+  REFERENCES director_datatype (id)
+    ON DELETE RESTRICT
+    ON UPDATE CASCADE
+);
+
+CREATE UNIQUE INDEX service_field_key ON icinga_service_field (service_id, fieldname);
+CREATE INDEX service_field_search_idx ON icinga_service_field (fieldname);
+CREATE INDEX service_field_service ON icinga_service_field (service_id);
+CREATE INDEX service_field_datatype ON icinga_service_field (datatype);
+COMMENT ON COLUMN icinga_service_field.service_id IS 'Makes only sense for templates';
-- 
cgit v1.2.3

