mirror of
https://github.com/opensim/opensim.git
synced 2026-08-06 01:06:30 +08:00
Fix to solve mantis 717 problem. Makes sure the region DB schema is up to date and consistent
This commit is contained in:
@@ -23,9 +23,10 @@ CREATE TABLE `regions` (
|
||||
`regionUserRecvKey` varchar(128) default NULL,
|
||||
`regionUserSendKey` varchar(128) default NULL, `regionMapTexture` varchar(36) default NULL,
|
||||
`serverHttpPort` int(10) default NULL, `serverRemotingPort` int(10) default NULL,
|
||||
`owner_uuid` varchar(36) default '00000000-0000-0000-0000-000000000000' not null,
|
||||
`originUUID` varchar(36),
|
||||
PRIMARY KEY (`uuid`),
|
||||
KEY `regionName` (`regionName`),
|
||||
KEY `regionHandle` (`regionHandle`),
|
||||
KEY `overrideHandles` (`eastOverrideHandle`,`westOverrideHandle`,`southOverrideHandle`,`northOverrideHandle`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Rev. 2';
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Rev. 3';
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
DROP PROCEDURE IF EXISTS upgraderegions3;
|
||||
|
||||
create procedure upgraderegions3()
|
||||
BEGIN
|
||||
DECLARE db_name varchar(64);
|
||||
select database() into db_name;
|
||||
IF ((select count(*) from information_schema.columns where table_name='regions' and column_name='owner_uuid' and table_schema=db_name) > 0)
|
||||
THEN
|
||||
ALTER TABLE `regions`, COMMENT='Rev. 3';
|
||||
ELSE
|
||||
ALTER TABLE `regions`
|
||||
ADD COLUMN `owner_uuid` varchar(36) default '00000000-0000-0000-0000-000000000000' not null after serverRemotingPort, COMMENT='Rev. 3';
|
||||
END IF;
|
||||
END;
|
||||
|
||||
call upgraderegions3();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user