Commit 066489b9 authored by Daniel Henninger's avatar Daniel Henninger Committed by dhenninger

Finished fixes of upgrade scripts and testing of DBs.


git-svn-id: http://svn.igniterealtime.org/svn/repos/openfire/trunk@10813 b35dd754-fafc-0310-a699-88a17e54d16e
parent cf015dff
......@@ -16,22 +16,17 @@ CREATE TABLE mucServiceProp (
);
# add new indexed column to mucRoom
ALTER TABLE mucRoom ADD COLUMN serviceID BIGINT FIRST;
ALTER TABLE mucRoom ADD COLUMN serviceID BIGINT NOT NULL DEFAULT 1 FIRST;
ALTER TABLE mucRoom ADD INDEX mucRoom_serviceid_idx (serviceID);
# change mucRooms primary key to be referenced around serviceID
ALTER TABLE mucRoom DROP PRIMARY KEY;
ALTER TABLE mucRoom ADD PRIMARY KEY (serviceID,name);
# add default entry for conference service and associated jiveID value
INSERT INTO mucService (serviceID, subdomain) VALUES (1, 'conference');
INSERT INTO jiveID (idType, id) VALUES (26, 1);
# update all entries in mucRoom to be set to the default conference service
UPDATE mucRoom set serviceID = 1;
# complete change mucRooms primary key to be referenced around serviceID
ALTER TABLE mucRoom ADD PRIMARY KEY (serviceID,name);
# update conference name/desc if theres a custom one set
UPDATE mucService SET mucService.subdomain = ( SELECT jiveProperty.propValue FROM jiveProperty WHERE jiveProperty.name = 'xmpp.muc.service' )
WHERE EXISTS ( SELECT jiveProperty.propValue FROM jiveProperty WHERE jiveProperty.name = 'xmpp.muc.service' );
......
......@@ -19,19 +19,17 @@ CREATE TABLE mucServiceProp (
ALTER TABLE mucRoom ADD serviceID INT;
CREATE INDEX mucRm_serviceid_idx ON mucRoom (serviceID);
-- update all entries in mucRoom to be set to the default conference service
UPDATE mucRoom set serviceID = 1;
-- change mucRoom primary key to be referenced around serviceID
ALTER TABLE mucRoom DROP CONSTRAINT mucRoom_pk;
ALTER TABLE mucRoom ADD CONSTRAINT mucRoom_pk PRIMARY KEY (serviceID, name);
-- add default entry for conference service and associated jiveID value
INSERT INTO mucService (serviceID, subdomain) VALUES (1, 'conference');
INSERT INTO jiveID (idType, id) VALUES (26, 1);
-- update all entries in mucRoom to be set to the default conference service
UPDATE mucRoom set serviceID = 1;
-- finish change mucRoom primary key to be referenced around serviceID
ALTER TABLE mucRoom ADD CONSTRAINT mucRoom_pk PRIMARY KEY (serviceID, name);
-- update conference name/desc if there is a custom one set
UPDATE mucService SET mucService.subdomain = ( SELECT jiveProperty.propValue FROM jiveProperty WHERE jiveProperty.name = 'xmpp.muc.service' )
WHERE EXISTS ( SELECT jiveProperty.propValue FROM jiveProperty WHERE jiveProperty.name = 'xmpp.muc.service' );
......
......@@ -16,12 +16,9 @@ CREATE TABLE mucServiceProp (
);
-- add new indexed column to mucRoom
ALTER TABLE mucRoom ADD COLUMN serviceID INTEGER;
ALTER TABLE mucRoom ADD COLUMN serviceID INTEGER NOT NULL DEFAULT 1;
CREATE INDEX mucRoom_serviceid_idx ON mucRoom (serviceID);
-- update all entries in mucRoom to be set to the default conference service
UPDATE mucRoom set serviceID = 1;
-- change mucRoom primary key to be referenced around serviceID
ALTER TABLE mucRoom DROP CONSTRAINT mucRoom__pk;
ALTER TABLE mucRoom ADD CONSTRAINT mucRoom__pk PRIMARY KEY (serviceID, name);
......
......@@ -16,22 +16,17 @@ CREATE TABLE mucServiceProp (
);
/* add new indexed column to mucRoom */
ALTER TABLE mucRoom ADD serviceID INT;
ALTER TABLE mucRoom ADD serviceID INT NOT NULL DEFAULT 1;
CREATE INDEX mucRoom_serviceid_idx ON mucRoom(serviceID);
/* change mucRoom primary key to be referenced around serviceID */
ALTER TABLE mucRoom DROP CONSTRAINT mucRoom_pk;
ALTER TABLE mucRoom DROP CONSTRAINT mucRoom__pk;
ALTER TABLE mucRoom ADD CONSTRAINT mucRoom__pk PRIMARY KEY (serviceID, name);
/* add default entry for conference service and associated jiveID value */
INSERT INTO mucService (serviceID, subdomain) VALUES (1, 'conference');
INSERT INTO jiveID (idType, id) VALUES (26, 1);
/* update all entries in mucRoom to be set to the default conference service */
UPDATE mucRoom set serviceID = 1;
/* finish change mucRoom primary key to be referenced around serviceID */
ALTER TABLE mucRoom ADD CONSTRAINT mucRoom_pk PRIMARY KEY (serviceID, name);
/* update conference name/desc if there is a custom one set */
UPDATE mucService SET mucService.subdomain = ( SELECT jiveProperty.propValue FROM jiveProperty WHERE jiveProperty.name = 'xmpp.muc.service' )
WHERE EXISTS ( SELECT jiveProperty.propValue FROM jiveProperty WHERE jiveProperty.name = 'xmpp.muc.service' );
......
......@@ -16,22 +16,17 @@ CREATE TABLE mucServiceProp (
);
/* add new indexed column to mucRoom */
ALTER TABLE mucRoom ADD COLUMN serviceID INT;
ALTER TABLE mucRoom ADD COLUMN serviceID INT NOT NULL DEFAULT 1;
CREATE INDEX mucRoom_serviceid_idx ON mucRoom(serviceID);
/* change mucRoom primary key to be referenced around serviceID */
ALTER TABLE mucRoom DROP CONSTRAINT mucRoom_pk;
ALTER TABLE mucRoom ADD CONSTRAINT mucRoom_pk PRIMARY KEY (serviceID, name);
/* add default entry for conference service and associated jiveID value */
INSERT INTO mucService (serviceID, subdomain) VALUES (1, 'conference');
INSERT INTO jiveID (idType, id) VALUES (26, 1);
/* update all entries in mucRoom to be set to the default conference service */
UPDATE mucRoom set serviceID = 1;
/* finish change mucRoom primary key to be referenced around serviceID */
ALTER TABLE mucRoom ADD CONSTRAINT mucRoom_pk PRIMARY KEY (serviceID, name);
/* update conference name/desc if there is a custom one set */
UPDATE mucService SET mucService.subdomain = ( SELECT jiveProperty.propValue FROM jiveProperty WHERE jiveProperty.name = 'xmpp.muc.service' )
WHERE EXISTS ( SELECT jiveProperty.propValue FROM jiveProperty WHERE jiveProperty.name = 'xmpp.muc.service' );
......
......@@ -137,7 +137,7 @@ ALTER TABLE ofMucServiceProp ADD CONSTRAINT ofMucServiceProp_pk PRIMARY KEY (ser
/* Rename mucRoom to ofMucRoom */
DROP INDEX mucRoom.mucRoom_roomID_idx;
DROP INDEX mucRoom.mucRoom_serviceID_idx;
ALTER TABLE mucRoom DROP CONSTRAINT mucRoom_pk;
ALTER TABLE mucRoom DROP CONSTRAINT mucRoom__pk;
sp_rename 'mucRoom', 'ofMucRoom';
ALTER TABLE ofMucRoom ADD CONSTRAINT ofMucRoom_pk PRIMARY KEY (serviceID, name);
CREATE INDEX ofMucRoom_roomid_idx on ofMucRoom(roomID);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment