mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
Merge from HEAD to WCM-DEV2.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3659 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
-- ------------------------------------------------------
|
||||
-- Alfresco Schema conversion V1.3 to V1.4 Part 1
|
||||
--
|
||||
-- Adds the columns required to enforce the duplicate name detection
|
||||
--
|
||||
-- Author: Derek Hulley
|
||||
-- ------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Delete intermediate tables from previous upgrades
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS T_access_control_entry;
|
||||
DROP TABLE IF EXISTS T_access_control_list;
|
||||
DROP TABLE IF EXISTS T_applied_patch;
|
||||
DROP TABLE IF EXISTS T_auth_ext_keys;
|
||||
DROP TABLE IF EXISTS T_authority;
|
||||
DROP TABLE IF EXISTS T_child_assoc;
|
||||
DROP TABLE IF EXISTS T_node;
|
||||
DROP TABLE IF EXISTS T_node_aspects;
|
||||
DROP TABLE IF EXISTS T_node_assoc;
|
||||
DROP TABLE IF EXISTS T_node_properties;
|
||||
DROP TABLE IF EXISTS T_node_status;
|
||||
DROP TABLE IF EXISTS T_permission;
|
||||
DROP TABLE IF EXISTS T_store;
|
||||
DROP TABLE IF EXISTS T_version_count;
|
||||
|
||||
--
|
||||
-- Unique name constraint
|
||||
--
|
||||
|
||||
-- Apply new schema changes to child assoc table
|
||||
ALTER TABLE child_assoc
|
||||
ADD COLUMN child_node_name VARCHAR(50) NOT NULL DEFAULT 'V1.4 upgrade' AFTER type_qname,
|
||||
ADD COLUMN child_node_name_crc bigint(20) NOT NULL DEFAULT -1 AFTER child_node_name;
|
||||
|
||||
UPDATE child_assoc
|
||||
SET child_node_name_crc = id * -1;
|
||||
|
||||
ALTER TABLE child_assoc
|
||||
ADD UNIQUE INDEX IDX_CHILD_NAMECRC(parent_node_id, type_qname, child_node_name, child_node_name_crc);
|
||||
|
||||
-- Apply unique index for node associations
|
||||
ALTER TABLE node_assoc
|
||||
ADD UNIQUE INDEX IDX_ASSOC(source_node_id, type_qname, target_node_id);
|
||||
|
||||
--
|
||||
-- Rename tables to give 'alf_' prefix
|
||||
--
|
||||
ALTER TABLE access_control_entry RENAME TO alf_access_control_entry;
|
||||
ALTER TABLE access_control_list RENAME TO alf_access_control_list;
|
||||
ALTER TABLE applied_patch RENAME TO alf_applied_patch;
|
||||
ALTER TABLE auth_ext_keys RENAME TO alf_auth_ext_keys;
|
||||
ALTER TABLE authority RENAME TO alf_authority;
|
||||
ALTER TABLE child_assoc RENAME TO alf_child_assoc;
|
||||
ALTER TABLE node RENAME TO alf_node;
|
||||
ALTER TABLE node_aspects RENAME TO alf_node_aspects;
|
||||
ALTER TABLE node_assoc RENAME TO alf_node_assoc;
|
||||
ALTER TABLE node_properties RENAME TO alf_node_properties;
|
||||
ALTER TABLE node_status RENAME TO alf_node_status;
|
||||
ALTER TABLE permission RENAME TO alf_permission;
|
||||
ALTER TABLE store RENAME TO alf_store;
|
||||
ALTER TABLE version_count RENAME TO alf_version_count;
|
||||
|
||||
--
|
||||
-- Record script finish
|
||||
--
|
||||
delete from alf_applied_patch where id = 'patch.schemaUpdateScript-V1.4-1';
|
||||
insert into alf_applied_patch
|
||||
(id, description, fixes_from_schema, fixes_to_schema, applied_to_schema, target_schema, applied_on_date, applied_to_server, was_executed, succeeded, report)
|
||||
values
|
||||
(
|
||||
'patch.schemaUpdateScript-V1.4-1', 'Manually execute script upgrade V1.4 part 1',
|
||||
0, 19, -1, 20, now(), 'UNKOWN', 1, 1, 'Script completed'
|
||||
);
|
@@ -0,0 +1,59 @@
|
||||
-- ------------------------------------------------------
|
||||
-- Alfresco Schema conversion V1.3 to V1.4 Part 2
|
||||
--
|
||||
-- Adds the alf_transaction and alf_server tables to keep track of the sources
|
||||
-- of transactions.
|
||||
--
|
||||
-- Author: Derek Hulley
|
||||
-- ------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Create server and transaction tables
|
||||
--
|
||||
|
||||
CREATE TABLE alf_server (
|
||||
id bigint(20) NOT NULL auto_increment,
|
||||
ip_address varchar(15) NOT NULL,
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE KEY ip_address (ip_address)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||
insert into alf_server (id, ip_address) values (0, '0.0.0.0');
|
||||
|
||||
CREATE TABLE alf_transaction (
|
||||
id bigint(20) NOT NULL auto_increment,
|
||||
server_id bigint(20) default NULL,
|
||||
change_txn_id varchar(56) NOT NULL,
|
||||
PRIMARY KEY (id),
|
||||
KEY FKB8761A3A9AE340B7 (server_id),
|
||||
KEY IDX_CHANGE_TXN (change_txn_id),
|
||||
CONSTRAINT FKB8761A3A9AE340B7 FOREIGN KEY (server_id) REFERENCES alf_server (id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||
insert into alf_transaction
|
||||
(
|
||||
server_id, change_txn_id
|
||||
)
|
||||
select (select max(id) from alf_server), change_txn_id from alf_node_status group by change_txn_id;
|
||||
|
||||
-- Alter node status
|
||||
ALTER TABLE alf_node_status
|
||||
ADD COLUMN transaction_id bigint(20) NOT NULL DEFAULT 0 AFTER node_id;
|
||||
-- Update FK column
|
||||
UPDATE alf_node_status ns SET ns.transaction_id =
|
||||
(
|
||||
select t.id from alf_transaction t where t.change_txn_id = ns.change_txn_id
|
||||
);
|
||||
ALTER TABLE alf_node_status
|
||||
DROP COLUMN change_txn_id,
|
||||
ADD CONSTRAINT FK71C2002B9E57C13D FOREIGN KEY (transaction_id) REFERENCES alf_transaction (id);
|
||||
|
||||
--
|
||||
-- Record script finish
|
||||
--
|
||||
delete from alf_applied_patch where id = 'patch.schemaUpdateScript-V1.4-2';
|
||||
insert into alf_applied_patch
|
||||
(id, description, fixes_from_schema, fixes_to_schema, applied_to_schema, target_schema, applied_on_date, applied_to_server, was_executed, succeeded, report)
|
||||
values
|
||||
(
|
||||
'patch.schemaUpdateScript-V1.4-2', 'Manually execute script upgrade V1.4 part 2',
|
||||
0, 20, -1, 21, now(), 'UNKOWN', 1, 1, 'Script completed'
|
||||
);
|
Reference in New Issue
Block a user