PATH:
home
/
centosnipponia
/
public_html
/
ticketing.nipponia.com
/
include
/
upgrader
/
streams
/
core
/** * Merge ticket thread tables into one * * Replace the ticket_{message,response,note} tables with a single * ticket_thread table that will contain data for all three current message * types. This simplifies much of the ticket thread code and paves the way * for other types of messages in the future. * * This patch automagically moves the data from the three federated tables * into the one combined table. */ DROP TABLE IF EXISTS `%TABLE_PREFIX%ticket_thread`; CREATE TABLE `%TABLE_PREFIX%ticket_thread` ( `id` int(11) unsigned NOT NULL auto_increment, `pid` int(11) unsigned NOT NULL default '0', `ticket_id` int(11) unsigned NOT NULL default '0', `staff_id` int(11) unsigned NOT NULL default '0', `thread_type` enum('M','R','N') NOT NULL, `poster` varchar(128) NOT NULL default '', `source` varchar(32) NOT NULL default '', `title` varchar(255), `body` text NOT NULL, `ip_address` varchar(64) NOT NULL default '', `created` datetime NOT NULL, `updated` datetime NOT NULL, `old_pk` int(11) unsigned NOT NULL, `old_pid` int(11) unsigned, PRIMARY KEY (`id`), KEY `ticket_id` (`ticket_id`), KEY `staff_id` (`staff_id`), KEY `old_pk` (`old_pk`), KEY `created` (`created`) ) DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS `%TABLE_PREFIX%ticket_email_info`; CREATE TABLE `%TABLE_PREFIX%ticket_email_info` ( `message_id` int(11) unsigned NOT NULL, `email_mid` varchar(255) NOT NULL, `headers` text, KEY `message_id` (`email_mid`) ) DEFAULT CHARSET=utf8; -- Transfer messages INSERT INTO `%TABLE_PREFIX%ticket_thread` (`ticket_id`, `thread_type`, `body`, `ip_address`, `created`, `updated`, `old_pk`) SELECT `ticket_id`, 'M', `message`, `ip_address`, `created`, COALESCE(`updated`, NOW()), `msg_id` FROM `%TABLE_PREFIX%ticket_message`; -- Transfer responses INSERT INTO `%TABLE_PREFIX%ticket_thread` (`ticket_id`, `staff_id`, `thread_type`, `poster`, `body`, `ip_address`, `created`, `updated`, `old_pk`, `old_pid`) SELECT `ticket_id`, `staff_id`, 'R', `staff_name`, `response`, `ip_address`, `created`, COALESCE(`updated`, NOW()), `response_id`, `msg_id` FROM `%TABLE_PREFIX%ticket_response`; -- Connect responses to (new) messages CREATE TABLE `%TABLE_PREFIX%T_resp_links` SELECT `id`, `old_pk` FROM `%TABLE_PREFIX%ticket_thread` WHERE `thread_type` = 'M'; -- Add an index to speed up the linking process ALTER TABLE `%TABLE_PREFIX%T_resp_links` ADD KEY `old_pk` (`old_pk`, `id`); UPDATE `%TABLE_PREFIX%ticket_thread` SET `pid` = ( SELECT T2.`id` FROM `%TABLE_PREFIX%T_resp_links` T2 WHERE `old_pid` = T2.`old_pk` ) WHERE `thread_type` = 'R' AND `old_pid` IS NOT NULL; DROP TABLE `%TABLE_PREFIX%T_resp_links`; -- Transfer notes INSERT INTO `%TABLE_PREFIX%ticket_thread` (`ticket_id`, `staff_id`, `thread_type`, `body`, `title`, `source`, `poster`, `created`, `updated`, `old_pk`) SELECT `ticket_id`, N.staff_id, 'N', `note`, `title`, `source`, CONCAT_WS(' ', S.`firstname`, S.`lastname`), N.created, NOW(), `note_id` FROM `%TABLE_PREFIX%ticket_note` N LEFT JOIN `%TABLE_PREFIX%staff` S ON(S.staff_id=N.staff_id); -- Transfer email information from messages INSERT INTO `%TABLE_PREFIX%ticket_email_info` (`message_id`, `email_mid`, `headers`) SELECT ( SELECT T2.`id` FROM `%TABLE_PREFIX%ticket_thread` T2 WHERE `msg_id` = T2.`old_pk` AND `thread_type` = 'M' ), `messageId`, `headers` FROM `%TABLE_PREFIX%ticket_message` WHERE `messageId` IS NOT NULL AND `messageId` <>''; -- Change collation to utf8_general_ci - to avoid Illegal mix of collations error ALTER TABLE `%TABLE_PREFIX%ticket_attachment` CHANGE `ref_type` `ref_type` ENUM('M','R','N') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'M'; -- Update attachment table UPDATE `%TABLE_PREFIX%ticket_attachment` SET `ref_id` = ( SELECT T2.`id` FROM `%TABLE_PREFIX%ticket_thread` T2 WHERE `ref_id` = T2.`old_pk` AND `ref_type` = T2.`thread_type` ); -- Drop temporary columns ALTER TABLE `%TABLE_PREFIX%ticket_thread` DROP COLUMN `old_pk`; ALTER TABLE `%TABLE_PREFIX%ticket_thread` DROP COLUMN `old_pid`; -- Drop old tables DROP TABLE `%TABLE_PREFIX%ticket_message`; DROP TABLE `%TABLE_PREFIX%ticket_response`; DROP TABLE `%TABLE_PREFIX%ticket_note`; -- Finished with patch UPDATE `%TABLE_PREFIX%config` SET `schema_signature`='abe9c0cb845be52c10fcd7b3e626a589';
[+]
..
[-] 16fcef4a-d51f303a.patch.sql
[edit]
[-] e2b4e5cb-f0d2e14d.cleanup.sql
[edit]
[-] 61c9d5d7-6de40a4d.patch.sql
[edit]
[-] 15af7cd3-98ae1ed2.patch.sql
[edit]
[-] ed60ba20-934954de.patch.sql
[edit]
[-] 32de1766-852ca89e.patch.sql
[edit]
[-] 5cd0a25a-2d590ffa.task.php
[edit]
[-] e2b4e5cb-f0d2e14d.task.php
[edit]
[-] 740428f9-8aeda901.patch.sql
[edit]
[-] 9ef33a06-8f99b8bf.patch.sql
[edit]
[-] 8f99b8bf-03ff59bf.patch.sql
[edit]
[-] 852ca89e-740428f9.patch.sql
[edit]
[-] 9f3b454c-c0fd16f4.patch.sql
[edit]
[-] 36f6b328-5cd0a25a.task.php
[edit]
[-] e7038ce9-ddbe2e76.patch.sql
[edit]
[-] c0fd16f4-d959a00e.patch.sql
[edit]
[-] 00ff231f-9f3b454c.patch.sql
[edit]
[-] 98ae1ed2-e342f869.task.php
[edit]
[-] 15b30765-dd0022fb.task.php
[edit]
[-] d51f303a-dad45ca2.patch.sql
[edit]
[-] d51f303a-dad45ca2.task.php
[edit]
[-] 6de40a4d-1b0fce99.patch.sql
[edit]
[-] c37e1656-e2b4e5cb.task.php
[edit]
[-] 15719536-dd0022fb.patch.sql
[edit]
[-] 2e20a0eb-98ae1ed2.patch.sql
[edit]
[-] 5cd0a25a-2d590ffa.cleanup.sql
[edit]
[-] 435c62c3-2e7531a2.cleanup.sql
[edit]
[-] 70921d5c-26fd79dc.patch.sql
[edit]
[-] 98ae1ed2-e342f869.patch.sql
[edit]
[-] 1da1bcba-15b30765.patch.sql
[edit]
[-] 03ff59bf-b26f29a6.patch.sql
[edit]
[-] add62892-c37e1656.patch.sql
[edit]
[-] b26f29a6-1ee831c8.task.php
[edit]
[-] 9143a511-0d6099a6.cleanup.sql
[edit]
[-] 15b30765-dd0022fb.cleanup.sql
[edit]
[-] e2b4e5cb-f0d2e14d.patch.sql
[edit]
[-] 1b0fce99-ed60ba20.patch.sql
[edit]
[-] 934954de-f1ccd3bb.task.php
[edit]
[-] c00511c7-7be60a84.patch.sql
[edit]
[-] 26fd79dc-00c949a6.patch.sql
[edit]
[-] 1ee831c8-36f6b328.cleanup.sql
[edit]
[-] e7038ce9-ddbe2e76.task.php
[edit]
[-] dad45ca2-61c9d5d7.cleanup.sql
[edit]
[-] 61c9d5d7-6de40a4d.task.php
[edit]
[-] c2d2fabf-aa4664af.patch.sql
[edit]
[-] 0d6099a6-98ad7d55.cleanup.sql
[edit]
[-] 9143a511-0d6099a6.patch.sql
[edit]
[-] 934b8db8-ad9d0a5f.patch.sql
[edit]
[-] 98ad7d55-934b8db8.patch.sql
[edit]
[-] 87d4a323-4bd47d94.patch.sql
[edit]
[-] dd0022fb-f4da0c9b.patch.sql
[edit]
[-] cce1ba43-e7dfe821.patch.sql
[edit]
[-] 36f6b328-5cd0a25a.patch.sql
[edit]
[-] dad45ca2-61c9d5d7.task.php
[edit]
[-] 8aeda901-16fcef4a.task.php
[edit]
[-] 8f99b8bf-03ff59bf.cleanup.sql
[edit]
[-] bbb021fb-49478749.patch.sql
[edit]
[-] ad9d0a5f-0ca85857.patch.sql
[edit]
[-] f0d2e14d-83a22ba2.patch.sql
[edit]
[-] 03ff59bf-b26f29a6.cleanup.sql
[edit]
[-] f8856d56-abe9c0cb.patch.sql
[edit]
[-] 0d6099a6-98ad7d55.patch.sql
[edit]
[-] e342f869-c00511c7.patch.sql
[edit]
[-] 00c949a6-8b923d61.patch.sql
[edit]
[-] 00c949a6-8b923d61.task.php
[edit]
[-] dad45ca2-61c9d5d7.patch.sql
[edit]
[-] f0d2e14d-83a22ba2.task.php
[edit]
[-] e6978154-cc6d1b03.patch.sql
[edit]
[-] 86707325-526c601b.patch.sql
[edit]
[-] c00511c7-7be60a84.cleanup.sql
[edit]
[-] b26f29a6-1ee831c8.cleanup.sql
[edit]
[-] 4bd47d94-e7038ce9.cleanup.sql
[edit]
[-] 934954de-f1ccd3bb.patch.sql
[edit]
[-] 1ee831c8-36f6b328.task.php
[edit]
[-] d0e37dca-1da1bcba.patch.sql
[edit]
[-] ddbe2e76-add62892.patch.sql
[edit]
[-] f1ccd3bb-f5692e24.patch.sql
[edit]
[-] 36f6b328-5cd0a25a.cleanup.sql
[edit]
[-] b19dc97d-435c62c3.patch.sql
[edit]
[-] abe9c0cb-bbb021fb.patch.sql
[edit]
[-] 87d4a323-4bd47d94.task.php
[edit]
[-] f1ccd3bb-f5692e24.task.php
[edit]
[-] 1ee831c8-36f6b328.patch.sql
[edit]
[-] cc6d1b03-914098f4.patch.sql
[edit]
[-] f5692e24-4323a6a8.task.php
[edit]
[-] b26f29a6-1ee831c8.patch.sql
[edit]
[-] aee589ab-98ae1ed2.patch.sql
[edit]
[-] 60fcbee1-f8856d56.patch.sql
[edit]
[-] 8b923d61-9b5550da.patch.sql
[edit]
[-] 86707325-526c601b.cleanup.sql
[edit]
[-] 914098f4-87d4a323.patch.sql
[edit]
[-] 435c62c3-2e7531a2.patch.sql
[edit]
[-] 2d590ffa-9143a511.patch.sql
[edit]
[-] 8f99b8bf-03ff59bf.task.php
[edit]
[-] 49478749-c2d2fabf.patch.sql
[edit]
[-] aa4664af-b19dc97d.patch.sql
[edit]
[-] f5692e24-4323a6a8.patch.sql
[edit]
[-] f1ccd3bb-f5692e24.cleanup.sql
[edit]
[-] 0ca85857-86707325.patch.sql
[edit]
[-] 4bd47d94-e7038ce9.patch.sql
[edit]
[-] 26fd79dc-00c949a6.cleanup.sql
[edit]
[-] 526c601b-cce1ba43.patch.sql
[edit]
[-] 522e5b78-02decaa2.patch.sql
[edit]
[-] 15b30765-dd0022fb.patch.sql
[edit]
[-] d959a00e-32de1766.patch.sql
[edit]
[-] 9b5550da-e6978154.patch.sql
[edit]
[-] 4bd47d94-e7038ce9.task.php
[edit]
[-] 934b8db8-ad9d0a5f.task.php
[edit]
[-] f0d2e14d-83a22ba2.cleanup.sql
[edit]
[-] c37e1656-e2b4e5cb.patch.sql
[edit]
[-] 435c62c3-2e7531a2.task.php
[edit]
[-] 5cd0a25a-2d590ffa.patch.sql
[edit]
[-] 8aeda901-16fcef4a.patch.sql
[edit]
[-] 98ae1ed2-e342f869.cleanup.sql
[edit]
[-] 26fd79dc-00c949a6.task.php
[edit]
[-] 0d6099a6-98ad7d55.task.php
[edit]
[-] 2e7531a2-d0e37dca.patch.sql
[edit]
[-] 4323a6a8-9ef33a06.patch.sql
[edit]
[-] e7dfe821-70921d5c.patch.sql
[edit]
[-] f4da0c9b-00ff231f.patch.sql
[edit]
[-] 02decaa2-60fcbee1.patch.sql
[edit]
[-] 7be60a84-522e5b78.patch.sql
[edit]
[-] c00511c7-7be60a84.task.php
[edit]
[-] 9143a511-0d6099a6.task.php
[edit]
[-] 83a22ba2-5fb92bef.patch.sql
[edit]
[-] a67ba35e-98ae1ed2.patch.sql
[edit]