Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0007799opensim[REGION] OpenSim Corepublic2016-01-08 04:252018-08-27 04:35
Reporteraiaustin 
Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
StatusacknowledgedResolutionopen 
PlatformPCOSWindowsOS Version10
Product Versionmaster (dev code) 
Target Versionmaster (dev code)Fixed in Version 
Summary0007799: MySQL Table storage engine for 'regions' doesn't have this option (ROW_FORMAT=FIXED)
DescriptionI have a working OpenSim database on MySQL 5.6.21 Community Edition and have done a mysqldump on that. I set up a new server with MySQL 5.7.10 Community Edition and created the opensim database as usual... I then wanted to load in the dumped mysql from the other server.

I got an error ERROR 1031 (HY000) at line 3016: Table storage engine for 'regions' doesn't have this option

The SQL file is too large to edit directly, but after looking round on the web a bit and using a suggestion there I did extract the current CREATE TABLE equivalent for the for "regions" table from the previous working system and when I try to load that separately on the new MYSQL setup that gives the same error.

ERROR 1031 (HY000) at line 3015: Table storage engine for 'regions' doesn't have this option
Steps To ReproduceOn a MySQL 5.6 setup:
mysqldump -u ****** -p opensim > 2016-01-08-opensim-contents.sql

On a new MySQL 5.7 setup:
mysql -u root -p opensim < 2016-01-08-opensim-contents.sql


------------
If "region" table ROW_FORMAT=FIXED changed to "Don't Use" in DB admin interface, the dumped SQL from MySQL 5.6 will load into MySQL 5.7.
Additional InformationCREATE TABLE `regions` (
  `uuid` varchar(36) NOT NULL,
  `regionHandle` bigint(20) unsigned NOT NULL,
  `regionName` varchar(128) DEFAULT NULL,
  `regionRecvKey` varchar(128) DEFAULT NULL,
  `regionSendKey` varchar(128) DEFAULT NULL,
  `regionSecret` varchar(128) DEFAULT NULL,
  `regionDataURI` varchar(255) DEFAULT NULL,
  `serverIP` varchar(64) DEFAULT NULL,
  `serverPort` int(10) unsigned DEFAULT NULL,
  `serverURI` varchar(255) DEFAULT NULL,
  `locX` int(10) unsigned DEFAULT NULL,
  `locY` int(10) unsigned DEFAULT NULL,
  `locZ` int(10) unsigned DEFAULT NULL,
  `eastOverrideHandle` bigint(20) unsigned DEFAULT NULL,
  `westOverrideHandle` bigint(20) unsigned DEFAULT NULL,
  `southOverrideHandle` bigint(20) unsigned DEFAULT NULL,
  `northOverrideHandle` bigint(20) unsigned DEFAULT NULL,
  `regionAssetURI` varchar(255) DEFAULT NULL,
  `regionAssetRecvKey` varchar(128) DEFAULT NULL,
  `regionAssetSendKey` varchar(128) DEFAULT NULL,
  `regionUserURI` varchar(255) DEFAULT NULL,
  `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) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
  `originUUID` varchar(36) DEFAULT NULL,
  `access` int(10) unsigned DEFAULT '1',
  `ScopeID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
  `sizeX` int(11) NOT NULL DEFAULT '0',
  `sizeY` int(11) NOT NULL DEFAULT '0',
  `flags` int(11) NOT NULL DEFAULT '0',
  `last_seen` int(11) NOT NULL DEFAULT '0',
  `PrincipalID` char(36) NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000',
  `Token` varchar(255) NOT NULL,
  `parcelMapTexture` varchar(36) DEFAULT NULL,
  PRIMARY KEY (`uuid`),
  KEY `regionName` (`regionName`),
  KEY `regionHandle` (`regionHandle`),
  KEY `overrideHandles` (`eastOverrideHandle`,`westOverrideHandle`,`southOverrideHandle`,`northOverrideHandle`),
  KEY `ScopeID` (`ScopeID`),
  KEY `flags` (`flags`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Rev. 3'

TagsNo tags attached.
Git Revision or version number
Run Mode Grid (Multiple Regions per Sim)
Physics EngineBulletSim
Environment.NET / Windows64
Mono VersionNone
ViewerN/A
Attached Files

- Relationships

-  Notes
(0029921)
aiaustin (developer)
2016-01-08 11:27

Tom Frost wrote:

https://dev.mysql.com/doc/refman/5.6/en/innodb-row-format-specification.html [^] does not specify FIXED as a valid valie for ROW_FORMAT in 5.6, so I assume it is a deprecated setting that was ignored in 5.6 and completely removed in 5.7.

In any case, the ROW_FORMAT option determines the way mysql stored rows in binary format in the underlying database files. The worst that can happen is that performance is impacted if this setting is 'incorrect'. Given that this is in the region table, which normally doesn't have many rows anyway, it's rather a moot point what you set it to.
(0029922)
aiaustin (developer)
2016-01-08 11:36
edited on: 2016-01-08 14:18

I have tested Openvue and AiLand grids with the regions table options with ROW_FORMAT=FIXED changed to unspecified.. i.e. "Don't Use" in the MySQL GUI. That works fine as far as I can tell.

I then tried a MySQL dump from a MySQL 5.6 setup and was able to successfully mount that on a fresh sever on version 5.7.10 and I am now running Openvue grid on that.

So I think the fix is very simple... the regions table schema needs to have the ROW_FORMAT=FIXED removed..

I am not sure how to set up migrations like this, so can a dev experienced in migrations do this for MySQL and consider if its needed for all other supported data bases?

(0029923)
aiaustin (developer)
2016-01-08 14:22

Migration SQL required is

ALTER TABLE `opensim`.`regions` ROW_FORMAT = DEFAULT ;
(0031829)
johnfelipe (reporter)
2017-05-07 01:29

I have this:

03:21:53 - [PASS AUTH]: got 7e04da88cbb8cc933c7b89fbfe121cca; hashed = 04a4f84ea90ac1939896ce518bee3efb; stored = 04a4f84ea90ac1939896ce518bee3efb
03:21:53 - Table 'opensimebim.tokens' doesn't existMySql.Data.MySqlClient.MySqlException: Table 'opensimebim.tokens' doesn't exist
  at MySql.Data.MySqlClient.MySqlStream.ReadPacket () [0x00000]: in <filename unknown>:0
  at MySql.Data.MySqlClient.NativeDriver.GetResult (System.Int32& affectedRow, System.Int32& insertedId) [0x00000] in <filename unknown>:0

03:21:53 - Table 'opensimebim.tokens' doesn't existMySql.Data.MySqlClient.MySqlException: Table 'opensimebim.tokens' doesn't exist
  at MySql.Data.MySqlClient.MySqlStream.ReadPacket () [0x00000]: in <filename unknown>:0
  at MySql.Data.MySqlClient.NativeDriver.GetResult (System.Int32& affectedRow, System.Int32& insertedId) [0x00000] in <filename unknown>:0

03:21:53 - [LLOGIN SERVICE]: Login failed for felipe urrego, reason: authentication failed

ubuntu
Mysql 5.6.36

How fix it?
(0032895)
Fly-Man- (developer)
2018-08-27 04:35

ROW_FORMAT=FIXED will be giving an error on MariaDB databases as well

- Issue History
Date Modified Username Field Change
2016-01-08 04:25 aiaustin New Issue
2016-01-08 11:27 aiaustin Note Added: 0029921
2016-01-08 11:36 aiaustin Note Added: 0029922
2016-01-08 14:18 aiaustin Note Edited: 0029922 View Revisions
2016-01-08 14:22 aiaustin Note Added: 0029923
2017-05-07 01:29 johnfelipe Note Added: 0031829
2018-08-27 04:35 Fly-Man- Note Added: 0032895
2018-08-27 04:35 Fly-Man- Status new => acknowledged


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker