]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#396,!205] Modify MySQL schema to use fractional second timestamps.
authorMarcin Siodelski <marcin@isc.org>
Mon, 28 Jan 2019 12:52:01 +0000 (13:52 +0100)
committerMarcin Siodelski <marcin@isc.org>
Wed, 30 Jan 2019 09:18:59 +0000 (10:18 +0100)
src/lib/cc/stamped_element.cc
src/share/database/scripts/mysql/dhcpdb_create.mysql
src/share/database/scripts/mysql/upgrade_7.0_to_8.0.sh.in

index 076197884406bb1d3746c9d14b6b4774edd8e78e..2b84aeab1ccc8fa0e56386baeba1afdd3c9a7da5 100644 (file)
@@ -10,12 +10,12 @@ namespace isc {
 namespace data {
 
 StampedElement::StampedElement()
-    : timestamp_(boost::posix_time::second_clock::universal_time()) {
+    : timestamp_(boost::posix_time::microsecond_clock::universal_time()) {
 }
 
 void
 StampedElement::updateModificationTime() {
-    setModificationTime(boost::posix_time::second_clock::universal_time());
+    setModificationTime(boost::posix_time::microsecond_clock::universal_time());
 }
 
 } // end of namespace isc::data
index d5110a42f31d9606a1b2b46a63c6c56c32e66cfb..14b07a390bca5b42c31343e7be3516a94dd7e6c0 100644 (file)
@@ -1334,12 +1334,96 @@ SET version = '7', minor = '0';
 
 # This line concludes database upgrade to version 7.0.
 
+-- -----------------------------------------------------
+-- Modify timestamps in the Configuration Backend
+-- specific tables to use fractional seconds with
+-- 3 decimal places precision.
+-- -----------------------------------------------------
+
+ALTER TABLE dhcp4_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_audit
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_global_parameter
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_global_parameter_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_option_def
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_option_def_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_shared_network
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_shared_network_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_subnet
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_pool
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_subnet_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_options
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_options_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_audit
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_global_parameter
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_global_parameter_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_option_def
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_option_def_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_shared_network
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_shared_network_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_subnet
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_pool
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_subnet_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_options
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_options_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
 -- -----------------------------------------------------
 -- Table `dhcp4_audit_revision`
 -- -----------------------------------------------------
 CREATE TABLE IF NOT EXISTS dhcp4_audit_revision (
     id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
-    modification_ts TIMESTAMP NOT NULL,
+    modification_ts TIMESTAMP(3) NOT NULL,
     log_message TEXT,
     server_id BIGINT(10) UNSIGNED,
     PRIMARY KEY (id),
index 05dde9b6dcc2e6fc08936ac6a1dddb66a3e0b70b..b9cb7d9615eeac09ee147ddbcf24fe09583fac2c 100644 (file)
@@ -17,6 +17,90 @@ fi
 
 mysql "$@" <<EOF
 
+-- -----------------------------------------------------
+-- Modify timestamps in the Configuration Backend
+-- specific tables to use fractional seconds with
+-- 3 decimal places precision.
+-- -----------------------------------------------------
+
+ALTER TABLE dhcp4_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_audit
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_global_parameter
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_global_parameter_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_option_def
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_option_def_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_shared_network
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_shared_network_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_subnet
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_pool
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_subnet_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_options
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp4_options_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_audit
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_global_parameter
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_global_parameter_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_option_def
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_option_def_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_shared_network
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_shared_network_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_subnet
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_pool
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_subnet_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_options
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
+ALTER TABLE dhcp6_options_server
+    MODIFY COLUMN modification_ts TIMESTAMP(3) NOT NULL;
+
 # -----------------------------------------------------
 # Table dhcp4_audit_revision
 # -----------------------------------------------------