From a497c34f7cfe0290d5129024b00f839cb78f6191 Mon Sep 17 00:00:00 2001 From: Mike Hibler <hibler@cs.utah.edu> Date: Mon, 5 May 2014 08:51:03 -0600 Subject: [PATCH] While we are messing with images, add a size column as well. Tracking this in the DB will eliminate the need to run imageinfo from tmcd. --- sql/database-create.sql | 1 + sql/database-fill.sql | 1 + sql/updates/4/391 | 25 +++++++++++++++++++++++++ 3 files changed, 27 insertions(+) create mode 100644 sql/updates/4/391 diff --git a/sql/database-create.sql b/sql/database-create.sql index 2a43959484..33c9d4977a 100644 --- a/sql/database-create.sql +++ b/sql/database-create.sql @@ -1926,6 +1926,7 @@ CREATE TABLE `images` ( `auth_key` varchar(512) default NULL, `decryption_key` varchar(256) default NULL, `hash` varchar(64) default NULL, + `size` bigint(20) unsigned NOT NULL default '0', `lba_low` bigint(20) unsigned NOT NULL default '0', `lba_high` bigint(20) unsigned NOT NULL default '0', `lba_size` int(10) unsigned NOT NULL default '512', diff --git a/sql/database-fill.sql b/sql/database-fill.sql index 01482a8455..c269475418 100644 --- a/sql/database-fill.sql +++ b/sql/database-fill.sql @@ -1057,6 +1057,7 @@ REPLACE INTO table_regex VALUES ('images','max_concurrent','text','redirect','de REPLACE INTO table_regex VALUES ('images','reboot_waittime','text','redirect','default:int',0,0,NULL); REPLACE INTO table_regex VALUES ('images','format','text','regex','^[-\\w]+$',1,8,NULL); REPLACE INTO table_regex VALUES ('images','hash','text','regex','^[\\w]+$',16,64,NULL); +REPLACE INTO `table_regex` VALUES ('images','size','int','redirect','default:bigint',0,0,NULL); REPLACE INTO `table_regex` VALUES ('images','lba_low','int','redirect','default:bigint',0,0,NULL); REPLACE INTO `table_regex` VALUES ('images','lba_high','int','redirect','default:bigint',0,0,NULL); REPLACE INTO `table_regex` VALUES ('images','lba_size','int','redirect','default:int',0,0,NULL); diff --git a/sql/updates/4/391 b/sql/updates/4/391 new file mode 100644 index 0000000000..4ae77d09a6 --- /dev/null +++ b/sql/updates/4/391 @@ -0,0 +1,25 @@ +# +# Image state info for tracking size of image. +# +use strict; +use libdb; + +sub DoUpdate($$$) +{ + my ($dbhandle, $dbname, $version) = @_; + + if (!DBSlotExists("images", "size")) { + DBQueryFatal("ALTER TABLE images ADD ". + "`size` bigint unsigned NOT NULL default '0' ". + " AFTER hash"); + + DBQueryFatal("REPLACE INTO table_regex VALUES ". + "('images','size','int','redirect',". + "'default:bigint',0,0,NULL)"); + } + return 0; +} + +# Local Variables: +# mode:perl +# End: -- GitLab