]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#2869] Checkpoint add delete cascade
authorFrancis Dupont <fdupont@isc.org>
Thu, 6 Jul 2023 10:13:36 +0000 (12:13 +0200)
committerFrancis Dupont <fdupont@isc.org>
Thu, 6 Jul 2023 20:17:25 +0000 (22:17 +0200)
src/share/database/scripts/pgsql/dhcpdb_create.pgsql
src/share/database/scripts/pgsql/upgrade_018_to_019.sh.in

index 843893741246d3a821d16fd18ff4b22556cbd1a7..928730e1d98d4d20037f599121e3bbc476e73a27 100644 (file)
@@ -6290,12 +6290,24 @@ DELETE FROM lease6_relay_id;
 -- Change lease6_relay_id:lease_addr to INET.
 ALTER TABLE lease6_relay_id ALTER COLUMN lease_addr TYPE INET USING '::';
 
+-- Add a constraint on lease6_relay_id that any lease_addr must map to
+-- a lease6 address.
+ALTER TABLE lease6_relay_id
+    ADD CONSTRAINT fk_lease6_relay_id_addr FOREIGN KEY (lease_addr)
+    REFERENCES lease6 (address) ON DELETE CASCADE ON UPDATE NO ACTION;
+
 -- Clear lease6_remote_id table.
 DELETE FROM lease6_remote_id;
 
 -- Change lease6_remote_id:lease_addr to INET.
 ALTER TABLE lease6_remote_id ALTER COLUMN lease_addr TYPE INET USING '::';
 
+-- Add a constraint on lease6_remote_id that any lease_addr must map to
+-- a lease6 address.
+ALTER TABLE lease6_remote_id
+    ADD CONSTRAINT fk_lease6_remote_id_addr FOREIGN KEY (lease_addr)
+    REFERENCES lease6 (address) ON DELETE CASCADE ON UPDATE NO ACTION;
+
 -- Update the schema version number.
 UPDATE schema_version
     SET version = '19', minor = '0';
index 8f5ded834ae041565597101b7c88b95667ba48ce..9f15aac1d394119f112030b6190de5d6e21eda52 100644 (file)
@@ -64,12 +64,24 @@ DELETE FROM lease6_relay_id;
 -- Change lease6_relay_id:lease_addr to INET.
 ALTER TABLE lease6_relay_id ALTER COLUMN lease_addr TYPE INET USING '::';
 
+-- Add a constraint on lease6_relay_id that any lease_addr must map to
+-- a lease6 address.
+ALTER TABLE lease6_relay_id
+    ADD CONSTRAINT fk_lease6_relay_id_addr FOREIGN KEY (lease_addr)
+    REFERENCES lease6 (address) ON DELETE CASCADE ON UPDATE NO ACTION;
+
 -- Clear lease6_remote_id table.
 DELETE FROM lease6_remote_id;
 
 -- Change lease6_remote_id:lease_addr to INET.
 ALTER TABLE lease6_remote_id ALTER COLUMN lease_addr TYPE INET USING '::';
 
+-- Add a constraint on lease6_remote_id that any lease_addr must map to
+-- a lease6 address.
+ALTER TABLE lease6_remote_id
+    ADD CONSTRAINT fk_lease6_remote_id_addr FOREIGN KEY (lease_addr)
+    REFERENCES lease6 (address) ON DELETE CASCADE ON UPDATE NO ACTION;
+
 -- Update the schema version number.
 UPDATE schema_version
     SET version = '19', minor = '0';