3536 Vasil Dimov 2011-03-14
Set the max len of innodb stats columns to the actual limit
The max len for database/table/index name is 64 characters and is
defined in mysql_com.h:
#define NAME_CHAR_LEN 64 /* Field/table name length */
This change fixes loading the persistent_storage.sql script and syncs it
with innodb_stats_bootstrap.inc
Spotted by: Michael
modified:
mysql-test/suite/innodb/include/innodb_stats_bootstrap.inc
storage/innobase/scripts/persistent_storage.sql
3535 Vasil Dimov 2011-03-14
Fix compilation warnings under Windows:
6>.\srv\srv0start.c(621) : warning C4244: 'function' : conversion from
'ib_uint64_t' to 'ulint', possible loss of data
6>.\srv\srv0start.c(622) : warning C4244: 'function' : conversion from
'ib_uint64_t' to 'ulint', possible loss of data
6>.\srv\srv0start.c(630) : warning C4244: 'function' : conversion from
'ib_uint64_t' to 'ulint', possible loss of data
6>.\srv\srv0start.c(631) : warning C4244: 'function' : conversion from
'ib_uint64_t' to 'ulint', possible loss of data
6>.\srv\srv0start.c(658) : warning C4244: 'function' : conversion from
'ib_uint64_t' to 'ulint', possible loss of data
6>.\srv\srv0start.c(659) : warning C4244: 'function' : conversion from
'ib_uint64_t' to 'ulint', possible loss of data
6>.\srv\srv0start.c(683) : warning C4244: 'function' : conversion from
'ib_uint64_t' to 'ulint', possible loss of data
6>.\log\log0recv.c(472) : warning C4244: 'function' : conversion from
'lsn_t' to 'ulint', possible loss of data
6>.\log\log0recv.c(490) : warning C4244: 'function' : conversion from
'ib_uint64_t' to 'ulint', possible loss of data
6>.\log\log0recv.c(546) : warning C4244: 'function' : conversion from
'ib_uint64_t' to 'ulint', possible loss of data
Reported by: Calvin
modified:
storage/innobase/log/log0recv.c
storage/innobase/srv/srv0start.c
=== modified file 'mysql-test/suite/innodb/include/innodb_stats_bootstrap.inc'
--- a/mysql-test/suite/innodb/include/innodb_stats_bootstrap.inc revid:vasil.dimov@stripped
+++ b/mysql-test/suite/innodb/include/innodb_stats_bootstrap.inc revid:vasil.dimov@stripped
@@ -4,22 +4,22 @@ DROP DATABASE IF EXISTS innodb;
CREATE DATABASE innodb;
CREATE TABLE innodb.table_stats (
- database_name VARCHAR(512) NOT NULL,
- table_name VARCHAR(512) NOT NULL,
+ database_name VARCHAR(64) NOT NULL,
+ table_name VARCHAR(64) NOT NULL,
stats_timestamp TIMESTAMP NOT NULL,
n_rows BIGINT UNSIGNED NOT NULL,
clustered_index_size BIGINT UNSIGNED NOT NULL,
sum_of_other_index_sizes BIGINT UNSIGNED NOT NULL,
PRIMARY KEY (database_name, table_name)
-) ENGINE=INNODB;
+) ENGINE=INNODB DEFAULT CHARSET=utf8;
CREATE TABLE innodb.index_stats (
- database_name VARCHAR(512) NOT NULL,
- table_name VARCHAR(512) NOT NULL,
- index_name VARCHAR(512) NOT NULL,
+ database_name VARCHAR(64) NOT NULL,
+ table_name VARCHAR(64) NOT NULL,
+ index_name VARCHAR(64) NOT NULL,
stat_timestamp TIMESTAMP NOT NULL,
/* there are at least:
- stat_name='index_size'
+ stat_name='size'
stat_name='n_leaf_pages'
stat_name='n_diff_pfx%' */
stat_name VARCHAR(64) NOT NULL,
@@ -29,7 +29,7 @@ CREATE TABLE innodb.index_stats (
PRIMARY KEY (database_name, table_name, index_name, stat_name),
FOREIGN KEY (database_name, table_name)
REFERENCES table_stats (database_name, table_name)
-) ENGINE=INNODB;
+) ENGINE=INNODB DEFAULT CHARSET=utf8;
-- enable_warnings
-- enable_query_log
=== modified file 'storage/innobase/scripts/persistent_storage.sql'
--- a/storage/innobase/scripts/persistent_storage.sql revid:vasil.dimov@stripped
+++ b/storage/innobase/scripts/persistent_storage.sql revid:vasil.dimov@stripped
@@ -3,8 +3,8 @@ CREATE DATABASE innodb;
-- DROP TABLE IF EXISTS innodb.table_stats;
CREATE TABLE innodb.table_stats (
- database_name VARCHAR(512) NOT NULL,
- table_name VARCHAR(512) NOT NULL,
+ database_name VARCHAR(64) NOT NULL,
+ table_name VARCHAR(64) NOT NULL,
stats_timestamp TIMESTAMP NOT NULL,
n_rows BIGINT UNSIGNED NOT NULL,
clustered_index_size BIGINT UNSIGNED NOT NULL,
@@ -14,9 +14,9 @@ CREATE TABLE innodb.table_stats (
-- DROP TABLE IF EXISTS innodb.index_stats;
CREATE TABLE innodb.index_stats (
- database_name VARCHAR(512) NOT NULL,
- table_name VARCHAR(512) NOT NULL,
- index_name VARCHAR(512) NOT NULL,
+ database_name VARCHAR(64) NOT NULL,
+ table_name VARCHAR(64) NOT NULL,
+ index_name VARCHAR(64) NOT NULL,
stat_timestamp TIMESTAMP NOT NULL,
/* there are at least:
stat_name='size'
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-trunk-innodb branch (vasil.dimov:3535 to 3536) | vasil.dimov | 14 Mar |