Commit 8c43e7d16a1602181a42677fbdb7987d642a6e84

Authored by Michael Joseph
1 parent 38f4d627

SQL changes in preparation for the next release.


git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@2909 c91229c3-7414-0410-bfa2-8a42b809f60b
sql/mysql/install/tables.sql
@@ -6,6 +6,7 @@ session_id CHAR(255), @@ -6,6 +6,7 @@ session_id CHAR(255),
6 lastused DATETIME, 6 lastused DATETIME,
7 ip CHAR(30) 7 ip CHAR(30)
8 ) TYPE = InnoDB; 8 ) TYPE = InnoDB;
  9 +ALTER TABLE active_sessions ADD INDEX session_id_idx (session_id);
9 10
10 CREATE TABLE archive_restoration_request ( 11 CREATE TABLE archive_restoration_request (
11 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 12 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
@@ -89,6 +90,11 @@ full_path TEXT, @@ -89,6 +90,11 @@ full_path TEXT,
89 checked_out_user_id INTEGER, 90 checked_out_user_id INTEGER,
90 status_id INTEGER 91 status_id INTEGER
91 )TYPE = InnoDB; 92 )TYPE = InnoDB;
  93 +ALTER TABLE documents ADD INDEX fk_document_type_id (document_type_id);
  94 +ALTER TABLE documents ADD INDEX fk_creator_id (creator_id);
  95 +ALTER TABLE documents ADD INDEX fk_folder_id (folder_id);
  96 +ALTER TABLE documents ADD INDEX fk_checked_out_user_id (checked_out_user_id);
  97 +ALTER TABLE documents ADD INDEX fk_status_id (status_id);
92 98
93 CREATE TABLE document_archiving_link ( 99 CREATE TABLE document_archiving_link (
94 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 100 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
@@ -132,7 +138,6 @@ CREATE TABLE document_text ( @@ -132,7 +138,6 @@ CREATE TABLE document_text (
132 KEY document_text_document_id_indx (document_id) 138 KEY document_text_document_id_indx (document_id)
133 ) Type = MyISAM; 139 ) Type = MyISAM;
134 140
135 -  
136 CREATE TABLE document_transactions ( 141 CREATE TABLE document_transactions (
137 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 142 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
138 document_id INTEGER NOT NULL, 143 document_id INTEGER NOT NULL,
@@ -144,6 +149,9 @@ filename CHAR(255) NOT NULL, @@ -144,6 +149,9 @@ filename CHAR(255) NOT NULL,
144 comment CHAR(255) NOT NULL, 149 comment CHAR(255) NOT NULL,
145 transaction_id INTEGER 150 transaction_id INTEGER
146 )TYPE = InnoDB; 151 )TYPE = InnoDB;
  152 +ALTER TABLE document_transactions ADD INDEX fk_document_id (document_id);
  153 +ALTER TABLE document_transactions ADD INDEX fk_user_id (user_id);
  154 +ALTER TABLE document_transactions ADD INDEX fk_transaction_id (transaction_id);
147 155
148 CREATE TABLE document_transaction_types_lookup ( 156 CREATE TABLE document_transaction_types_lookup (
149 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 157 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
@@ -174,6 +182,9 @@ parent_folder_ids TEXT, @@ -174,6 +182,9 @@ parent_folder_ids TEXT,
174 full_path TEXT, 182 full_path TEXT,
175 inherit_parent_folder_permission INTEGER 183 inherit_parent_folder_permission INTEGER
176 )TYPE = InnoDB; 184 )TYPE = InnoDB;
  185 +ALTER TABLE folders ADD INDEX fk_parent_id (parent_id);
  186 +ALTER TABLE folders ADD INDEX fk_creator_id (creator_id);
  187 +ALTER TABLE folders ADD INDEX fk_unit_id (unit_id);
177 188
178 CREATE TABLE folder_subscriptions ( 189 CREATE TABLE folder_subscriptions (
179 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 190 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
@@ -199,6 +210,8 @@ folder_id int(11) NOT NULL default '0', @@ -199,6 +210,8 @@ folder_id int(11) NOT NULL default '0',
199 document_type_id int(11) NOT NULL default '0', 210 document_type_id int(11) NOT NULL default '0',
200 UNIQUE KEY id (id) 211 UNIQUE KEY id (id)
201 ) TYPE=InnoDB; 212 ) TYPE=InnoDB;
  213 +ALTER TABLE folder_doctypes_link ADD INDEX fk_folder_id (folder_id);
  214 +ALTER TABLE folder_doctypes_link ADD INDEX fk_document_type_id (document_type_id);
202 215
203 CREATE TABLE groups_folders_approval_link ( 216 CREATE TABLE groups_folders_approval_link (
204 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 217 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
@@ -216,6 +229,8 @@ folder_id INTEGER NOT NULL, @@ -216,6 +229,8 @@ folder_id INTEGER NOT NULL,
216 can_read BIT NOT NULL, 229 can_read BIT NOT NULL,
217 can_write BIT NOT NULL 230 can_write BIT NOT NULL
218 )TYPE = InnoDB; 231 )TYPE = InnoDB;
  232 +ALTER TABLE groups_folders_link ADD INDEX fk_group_id (group_id);
  233 +ALTER TABLE groups_folders_link ADD INDEX fk_folder_id (folder_id);
219 234
220 CREATE TABLE groups_lookup ( 235 CREATE TABLE groups_lookup (
221 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 236 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
@@ -229,6 +244,8 @@ id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, @@ -229,6 +244,8 @@ id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
229 group_id INTEGER NOT NULL, 244 group_id INTEGER NOT NULL,
230 unit_id INTEGER NOT NULL 245 unit_id INTEGER NOT NULL
231 )TYPE = InnoDB; 246 )TYPE = InnoDB;
  247 +ALTER TABLE groups_units_link ADD INDEX fk_group_id (group_id);
  248 +ALTER TABLE groups_units_link ADD INDEX fk_unit_id (unit_id);
232 249
233 CREATE TABLE help ( 250 CREATE TABLE help (
234 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 251 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
@@ -243,12 +260,6 @@ url CHAR(100) NOT NULL, @@ -243,12 +260,6 @@ url CHAR(100) NOT NULL,
243 rank INTEGER NOT NULL 260 rank INTEGER NOT NULL
244 )TYPE = InnoDB; 261 )TYPE = InnoDB;
245 262
246 -CREATE TABLE language_lookup (  
247 -id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,  
248 -name CHAR(100) NOT NULL  
249 -)TYPE = InnoDB;  
250 -  
251 -  
252 CREATE TABLE metadata_lookup ( 263 CREATE TABLE metadata_lookup (
253 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 264 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
254 document_field_id INTEGER NOT NULL, 265 document_field_id INTEGER NOT NULL,
@@ -291,8 +302,8 @@ id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, @@ -291,8 +302,8 @@ id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
291 document_id INTEGER, 302 document_id INTEGER,
292 user_id INTEGER 303 user_id INTEGER
293 ) Type = InnoDB; 304 ) Type = InnoDB;
294 -ALTER TABLE search_document_user_link ADD INDEX search_document_user_link_user_id_indx (user_id);  
295 -ALTER TABLE search_document_user_link ADD INDEX search_document_user_link_document_id_indx (document_id); 305 +ALTER TABLE search_document_user_link ADD INDEX fk_user_id (user_id);
  306 +ALTER TABLE search_document_user_link ADD INDEX fk_document_ids (document_id);
296 307
297 CREATE TABLE status_lookup ( 308 CREATE TABLE status_lookup (
298 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 309 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
@@ -326,6 +337,8 @@ id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, @@ -326,6 +337,8 @@ id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
326 unit_id INTEGER NOT NULL, 337 unit_id INTEGER NOT NULL,
327 organisation_id INTEGER NOT NULL 338 organisation_id INTEGER NOT NULL
328 )TYPE = InnoDB; 339 )TYPE = InnoDB;
  340 +ALTER TABLE units_organisations_link ADD INDEX fk_unit_id (unit_id);
  341 +ALTER TABLE units_organisations_link ADD INDEX fk_organisation_id (organisation_id);
329 342
330 CREATE TABLE users ( 343 CREATE TABLE users (
331 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 344 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
@@ -341,15 +354,15 @@ sms_notification BIT NOT NULL, @@ -341,15 +354,15 @@ sms_notification BIT NOT NULL,
341 ldap_dn CHAR(255), 354 ldap_dn CHAR(255),
342 max_sessions INTEGER, 355 max_sessions INTEGER,
343 language_id INTEGER 356 language_id INTEGER
344 -)  
345 -TYPE = InnoDB; 357 +) TYPE = InnoDB;
346 358
347 CREATE TABLE users_groups_link ( 359 CREATE TABLE users_groups_link (
348 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 360 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
349 user_id INTEGER NOT NULL, 361 user_id INTEGER NOT NULL,
350 group_id INTEGER NOT NULL 362 group_id INTEGER NOT NULL
351 -)  
352 -TYPE = InnoDB; 363 +) TYPE = InnoDB;
  364 +ALTER TABLE users_groups_link ADD INDEX fk_user_id (user_id);
  365 +ALTER TABLE users_groups_link ADD INDEX fk_group_id (group_id);
353 366
354 CREATE TABLE web_documents ( 367 CREATE TABLE web_documents (
355 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT, 368 id INTEGER NOT NULL UNIQUE AUTO_INCREMENT,
@@ -523,22 +536,9 @@ insert into data_types (name) values ('FLOAT'); @@ -523,22 +536,9 @@ insert into data_types (name) values ('FLOAT');
523 -- category field 536 -- category field
524 INSERT INTO document_fields (name, data_type, is_generic) VALUES ("Category", "STRING", 1); 537 INSERT INTO document_fields (name, data_type, is_generic) VALUES ("Category", "STRING", 1);
525 538
526 --- supported languages (not really ;)  
527 -INSERT INTO language_lookup (name) VALUES ("English");  
528 -INSERT INTO language_lookup (name) VALUES ("Chinese");  
529 -INSERT INTO language_lookup (name) VALUES ("Danish");  
530 -INSERT INTO language_lookup (name) VALUES ("Deutsch");  
531 -INSERT INTO language_lookup (name) VALUES ("Dutch");  
532 -INSERT INTO language_lookup (name) VALUES ("Francais");  
533 -INSERT INTO language_lookup (name) VALUES ("Hungarian");  
534 -INSERT INTO language_lookup (name) VALUES ("Italian");  
535 -INSERT INTO language_lookup (name) VALUES ("Norwegian");  
536 -INSERT INTO language_lookup (name) VALUES ("Portuguese");  
537 -INSERT INTO language_lookup (name) VALUES ("Spanish");  
538 -  
539 -- system settings 539 -- system settings
540 INSERT INTO system_settings (name, value) values ("lastIndexUpdate", "0"); 540 INSERT INTO system_settings (name, value) values ("lastIndexUpdate", "0");
541 -INSERT INTO system_settings (name, value) values ("knowledgeTreeVersion", "1.2.2"); 541 +INSERT INTO system_settings (name, value) values ("knowledgeTreeVersion", "1.2.3");
542 542
543 -- document statuses 543 -- document statuses
544 INSERT INTO web_documents_status_lookup (name) VALUES ("Pending"); 544 INSERT INTO web_documents_status_lookup (name) VALUES ("Pending");
sql/mysql/upgrade/1.2.2-to-1.2.3.sql 0 → 100644
  1 +UPDATE system_settings SET value="1.2.3" WHERE name="knowledgeTreeVersion";
  2 +
  3 +-- indexes on important FKs
  4 +ALTER TABLE active_sessions ADD INDEX session_id_idx (session_id);
  5 +ALTER TABLE documents ADD INDEX fk_document_type_id (document_type_id);
  6 +ALTER TABLE documents ADD INDEX fk_creator_id (creator_id);
  7 +ALTER TABLE documents ADD INDEX fk_folder_id (folder_id);
  8 +ALTER TABLE documents ADD INDEX fk_checked_out_user_id (checked_out_user_id);
  9 +ALTER TABLE documents ADD INDEX fk_status_id (status_id);
  10 +ALTER TABLE document_transactions ADD INDEX fk_document_id (document_id);
  11 +ALTER TABLE document_transactions ADD INDEX fk_user_id (user_id);
  12 +ALTER TABLE document_transactions ADD INDEX fk_transaction_id (transaction_id);
  13 +ALTER TABLE folders ADD INDEX fk_parent_id (parent_id);
  14 +ALTER TABLE folders ADD INDEX fk_creator_id (creator_id);
  15 +ALTER TABLE folders ADD INDEX fk_unit_id (unit_id);
  16 +ALTER TABLE folder_doctypes_link ADD INDEX fk_folder_id (folder_id);
  17 +ALTER TABLE folder_doctypes_link ADD INDEX fk_document_type_id (document_type_id);
  18 +ALTER TABLE groups_folders_link ADD INDEX fk_group_id (group_id);
  19 +ALTER TABLE groups_folders_link ADD INDEX fk_folder_id (folder_id);
  20 +ALTER TABLE groups_units_link ADD INDEX fk_group_id (group_id);
  21 +ALTER TABLE groups_units_link ADD INDEX fk_unit_id (unit_id);
  22 +ALTER TABLE search_document_user_link ADD INDEX fk_user_id (user_id);
  23 +ALTER TABLE search_document_user_link ADD INDEX fk_document_ids (document_id);
  24 +ALTER TABLE units_organisations_link ADD INDEX fk_unit_id (unit_id);
  25 +ALTER TABLE units_organisations_link ADD INDEX fk_organisation_id (organisation_id);
  26 +ALTER TABLE users_groups_link ADD INDEX fk_user_id (user_id);
  27 +ALTER TABLE users_groups_link ADD INDEX fk_group_id (group_id);
  28 +
  29 +-- char -> varchar
  30 +ALTER TABLE active_sessions MODIFY session_id VARCHAR(255), MODIFY ip VARCHAR(30);
  31 +ALTER TABLE archiving_type_lookup MODIFY name VARCHAR(100);
  32 +ALTER TABLE data_types MODIFY name VARCHAR(255);
  33 +ALTER TABLE documents MODIFY description VARCHAR(200);
  34 +ALTER TABLE document_fields MODIFY name VARCHAR(255), MODIFY data_type VARCHAR(100);
  35 +ALTER TABLE document_fields_link MODIFY value VARCHAR(255);
  36 +ALTER TABLE document_transactions MODIFY version VARCHAR(50), MODIFY ip VARCHAR(30), MODIFY filename VARCHAR(255), MODIFY comment VARCHAR(255);
  37 +ALTER TABLE document_transaction_types_lookup MODIFY name VARCHAR(100);
  38 +ALTER TABLE document_types_lookup MODIFY name VARCHAR(100);
  39 +ALTER TABLE folders MODIFY name VARCHAR(255), MODIFY description VARCHAR(255);
  40 +ALTER TABLE groups_lookup MODIFY name VARCHAR(100);
  41 +ALTER TABLE links MODIFY name VARCHAR(100), MODIFY url VARCHAR(100);
  42 +ALTER TABLE metadata_lookup MODIFY name VARCHAR(255);
  43 +ALTER TABLE mime_types MODIFY filetypes VARCHAR(100), MODIFY mimetypes VARCHAR(100), MODIFY icon_path VARCHAR(255);
  44 +ALTER TABLE organisations_lookup MODIFY name VARCHAR(100);
  45 +ALTER TABLE roles MODIFY name VARCHAR(255);
  46 +ALTER TABLE status_lookup MODIFY name VARCHAR(255);
  47 +ALTER TABLE system_settings MODIFY name VARCHAR(255), MODIFY value VARCHAR(255);
  48 +ALTER TABLE time_unit_lookup MODIFY name VARCHAR(100);
  49 +ALTER TABLE units_lookup MODIFY name VARCHAR(100);
  50 +ALTER TABLE users MODIFY username VARCHAR(255), MODIFY name VARCHAR(255), MODIFY password VARCHAR(255), MODIFY email VARCHAR(255), MODIFY mobile VARCHAR(255), MODIFY ldap_dn VARCHAR(255);
  51 +ALTER TABLE web_documents_status_lookup MODIFY name VARCHAR(50);
  52 +ALTER TABLE web_sites MODIFY web_site_name VARCHAR(100), MODIFY web_site_url VARCHAR(50);
0 \ No newline at end of file 53 \ No newline at end of file