UPGRADESCRIPTS += upgrade_9.1_to_9.2.sh
UPGRADESCRIPTS += upgrade_9.2_to_9.3.sh
UPGRADESCRIPTS += upgrade_9.3_to_9.4.sh
+UPGRADESCRIPTS += upgrade_9.4_to_9.5.sh
UPGRADESCRIPTS += wipe_data.sh
sqlscriptsdir = ${datarootdir}/${PACKAGE_NAME}/scripts/mysql
# This line concludes database upgrade to version 9.4.
+# Update reservation_mode value after separating flags.
+CREATE TABLE reservation_modes (
+ reservation_mode TINYINT PRIMARY KEY NOT NULL, # Reservation mode code.
+ name VARCHAR(5) # Reservation mode name.
+ ) ENGINE = INNODB;
+
+START TRANSACTION;
+INSERT INTO reservation_mode VALUES (0, 'disabled'); # disabled
+INSERT INTO reservation_mode VALUES (1, 'out-of-pool'); # out-of-pool
+INSERT INTO reservation_mode VALUES (2, 'in-subnet'); # in-subnet
+INSERT INTO reservation_mode VALUES (3, 'all'); # all (in-subnet + out-of-pool)
+INSERT INTO reservation_mode VALUES (4, 'global'); # global
+COMMIT;
+
+UPDATE dhcp4_subnet SET reservation_mode = 4 WHERE reservation_mode = 2;
+UPDATE dhcp4_shared_network SET reservation_mode = 4 WHERE reservation_mode = 2;
+UPDATE dhcp6_subnet SET reservation_mode = 4 WHERE reservation_mode = 2;
+UPDATE dhcp6_shared_network SET reservation_mode = 4 WHERE reservation_mode = 2;
+
+# Update the schema version number
+UPDATE schema_version
+SET version = '9', minor = '5';
+
+# This line concludes database upgrade to version 9.5.
+
# Notes:
#
# Indexes
--- /dev/null
+#!/bin/sh
+
+prefix=@prefix@
+# Include utilities. Use installed version if available and
+# use build version if it isn't.
+if [ -e @datarootdir@/@PACKAGE_NAME@/scripts/admin-utils.sh ]; then
+ . @datarootdir@/@PACKAGE_NAME@/scripts/admin-utils.sh
+else
+ . @abs_top_builddir@/src/bin/admin/admin-utils.sh
+fi
+
+VERSION=`mysql_version "$@"`
+
+if [ "$VERSION" != "9.4" ]; then
+ printf "This script upgrades 9.4 to 9.5. Reported version is $VERSION. Skipping upgrade.\n"
+ exit 0
+fi
+
+mysql "$@" <<EOF
+
+# Update reservation_mode value after separating flags.
+CREATE TABLE reservation_modes (
+ reservation_mode TINYINT PRIMARY KEY NOT NULL, # Reservation mode code.
+ name VARCHAR(5) # Reservation mode name.
+ ) ENGINE = INNODB;
+
+START TRANSACTION;
+INSERT INTO reservation_mode VALUES (0, 'disabled'); # disabled
+INSERT INTO reservation_mode VALUES (1, 'out-of-pool'); # out-of-pool
+INSERT INTO reservation_mode VALUES (2, 'in-subnet'); # in-subnet
+INSERT INTO reservation_mode VALUES (3, 'all'); # all (in-subnet + out-of-pool)
+INSERT INTO reservation_mode VALUES (4, 'global'); # global
+COMMIT;
+
+UPDATE dhcp4_subnet SET reservation_mode = 4 WHERE reservation_mode = 2;
+UPDATE dhcp4_shared_network SET reservation_mode = 4 WHERE reservation_mode = 2;
+UPDATE dhcp6_subnet SET reservation_mode = 4 WHERE reservation_mode = 2;
+UPDATE dhcp6_shared_network SET reservation_mode = 4 WHERE reservation_mode = 2;
+
+# Update the schema version number
+UPDATE schema_version
+SET version = '9', minor = '5';
+
+# This line concludes database upgrade to version 9.5.
+
+EOF
+
+RESULT=$?
+
+exit $?