Modified: trunk/opsview-core/bin/db_opsview
===================================================================
--- trunk/opsview-core/bin/db_opsview 2012-10-23 16:32:42 UTC (rev 10590)
+++ trunk/opsview-core/bin/db_opsview 2012-10-23 17:02:19 UTC (rev 10591)
@@ -424,6 +424,7 @@
snmp_extended_throughput_data TINYINT DEFAULT 0 NOT NULL,
PRIMARY KEY (id),
UNIQUE (name),
+ INDEX ip_name (ip,name),
INDEX (hostgroup),
CONSTRAINT hosts_hostgroup_fk FOREIGN KEY (hostgroup) REFERENCES hostgroups(id),
INDEX (check_period),
@@ -1221,8 +1222,8 @@
INSERT INTO schema_version (major_release, version) VALUES ('3.13', '12');
INSERT INTO schema_version (major_release, version) VALUES ('3.15', '11');
INSERT INTO schema_version (major_release, version, created_at) VALUES ('20120906ios', 'install', NOW());
+ INSERT INTO schema_version (major_release, version, created_at) VALUES ('20121023hostsidx', 'install', NOW());
-
EOF
populate_db
}
Modified: trunk/opsview-core/installer/upgradedb_opsview.pl
===================================================================
--- trunk/opsview-core/installer/upgradedb_opsview.pl 2012-10-23 16:32:42 UTC (rev 10590)
+++ trunk/opsview-core/installer/upgradedb_opsview.pl 2012-10-23 17:02:19 UTC (rev 10591)
@@ -4399,9 +4399,9 @@
if ( $db->is_lower("3.13.12") ) {
$db->print( "Amending schema_version to handle new style schema changes" );
$dbh->do( "
- ALTER TABLE schema_version ADD COLUMN reason VARCHAR(255),
- ADD COLUMN created_at DATETIME,
- ADD COLUMN duration INT,
+ ALTER TABLE schema_version ADD COLUMN reason VARCHAR(255),
+ ADD COLUMN created_at DATETIME,
+ ADD COLUMN duration INT,
ADD PRIMARY KEY (major_release)
" );
$db->updated;
@@ -4633,6 +4633,16 @@
$db->updated;
}
+unless (
+ $db->is_installed(
+ '20121023hostsidx', "opsview.hosts (ip,name) index", "all"
+ )
+ )
+{
+ $dbh->do( q[ ALTER TABLE hosts ADD KEY (ip,name) ] );
+ $db->updated;
+}
+
# PLACEHOLDER
# For future upgrade of Opsview Core where you cannot have an automatic Opsview reload
# We mark this upgrade lock file so that post installs do not generate an unactivated configuration
Modified: trunk/opsview-core/t/var/opsview.test.db
===================================================================
--- trunk/opsview-core/t/var/opsview.test.db 2012-10-23 16:32:42 UTC (rev 10590)
+++ trunk/opsview-core/t/var/opsview.test.db 2012-10-23 17:02:19 UTC (rev 10591)
@@ -636,6 +636,7 @@
KEY `monitored_by` (`monitored_by`),
KEY `rancid_vendor` (`rancid_vendor`),
KEY `hosts_check_period_fk` (`check_period`),
+ KEY `ip_name` (`ip`,`name`),
CONSTRAINT `hosts_check_command_fk` FOREIGN KEY (`check_command`) REFERENCES `hostcheckcommands` (`id`),
CONSTRAINT `hosts_check_period_fk` FOREIGN KEY (`check_period`) REFERENCES `timeperiods` (`id`),
CONSTRAINT `hosts_hostgroup_fk` FOREIGN KEY (`hostgroup`) REFERENCES `hostgroups` (`id`),
@@ -2056,6 +2057,7 @@
INSERT INTO `schema_version` VALUES ('2.14','9',NULL,NULL,NULL);
INSERT INTO `schema_version` VALUES ('2.9','4',NULL,NULL,NULL);
INSERT INTO `schema_version` VALUES ('20120906ios','all','Adding iOS push notification profile','2012-09-06 21:08:43',0);
+INSERT INTO `schema_version` VALUES ('20121023hostsidx','all','opsview.hosts (ip,name) index','2012-10-23 16:38:02',0);
INSERT INTO `schema_version` VALUES ('3.0','4',NULL,NULL,NULL);
INSERT INTO `schema_version` VALUES ('3.1','4',NULL,NULL,NULL);
INSERT INTO `schema_version` VALUES ('3.11','15',NULL,NULL,NULL);