Commit 5962cadc authored by Marko Mäkelä's avatar Marko Mäkelä

Merge mysql-5.1 to mysql-5.5.

parents 34a71efc 6f8a8027
...@@ -63,42 +63,42 @@ row_format=compressed; ...@@ -63,42 +63,42 @@ row_format=compressed;
create table t14(a int primary key) engine=innodb key_block_size=9; create table t14(a int primary key) engine=innodb key_block_size=9;
Warnings: Warnings:
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=9. Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=9.
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
table_schema table_name row_format table_schema table_name row_format data_length index_length
test t0 Compact test t0 Compact 16384 0
test t00 Compact test t00 Compact 16384 0
test t1 Compact test t1 Compact 16384 0
test t10 Dynamic test t10 Dynamic 16384 0
test t11 Compressed test t11 Compressed 1024 0
test t12 Compressed test t12 Compressed 1024 0
test t13 Compressed test t13 Compressed 8192 0
test t14 Compact test t14 Compact 16384 0
test t2 Redundant test t2 Redundant 16384 0
test t3 Compact test t3 Compact 16384 0
test t4 Compact test t4 Compact 16384 0
test t5 Redundant test t5 Redundant 16384 0
test t6 Redundant test t6 Redundant 16384 0
test t7 Redundant test t7 Redundant 16384 0
test t8 Compact test t8 Compact 16384 0
test t9 Compact test t9 Compact 16384 0
drop table t0,t00,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14; drop table t0,t00,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14;
alter table t1 key_block_size=0; alter table t1 key_block_size=0;
alter table t1 row_format=dynamic; alter table t1 row_format=dynamic;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
table_schema table_name row_format table_schema table_name row_format data_length index_length
test t1 Dynamic test t1 Dynamic 16384 0
alter table t1 row_format=compact; alter table t1 row_format=compact;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
table_schema table_name row_format table_schema table_name row_format data_length index_length
test t1 Compact test t1 Compact 16384 0
alter table t1 row_format=redundant; alter table t1 row_format=redundant;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
table_schema table_name row_format table_schema table_name row_format data_length index_length
test t1 Redundant test t1 Redundant 16384 0
drop table t1; drop table t1;
create table t1(a int not null, b text, index(b(10))) engine=innodb create table t1(a int not null, b text, index(b(10))) engine=innodb
key_block_size=1; key_block_size=1;
...@@ -115,11 +115,11 @@ rollback; ...@@ -115,11 +115,11 @@ rollback;
select a,left(b,40) from t1 natural join t2; select a,left(b,40) from t1 natural join t2;
a left(b,40) a left(b,40)
1 1abcdefghijklmnopqrstuvwxyzAAAAAAAAAAAAA 1 1abcdefghijklmnopqrstuvwxyzAAAAAAAAAAAAA
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
table_schema table_name row_format table_schema table_name row_format data_length index_length
test t1 Compressed test t1 Compressed 2048 1024
test t2 Compact test t2 Compact 16384 0
drop table t1,t2; drop table t1,t2;
SET SESSION innodb_strict_mode = off; SET SESSION innodb_strict_mode = off;
CREATE TABLE t1( CREATE TABLE t1(
...@@ -207,19 +207,19 @@ create table t8 (id int primary key) engine = innodb row_format = compressed; ...@@ -207,19 +207,19 @@ create table t8 (id int primary key) engine = innodb row_format = compressed;
create table t9 (id int primary key) engine = innodb row_format = dynamic; create table t9 (id int primary key) engine = innodb row_format = dynamic;
create table t10(id int primary key) engine = innodb row_format = compact; create table t10(id int primary key) engine = innodb row_format = compact;
create table t11(id int primary key) engine = innodb row_format = redundant; create table t11(id int primary key) engine = innodb row_format = redundant;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
table_schema table_name row_format table_schema table_name row_format data_length index_length
test t1 Compact test t1 Compact 16384 0
test t10 Compact test t10 Compact 16384 0
test t11 Redundant test t11 Redundant 16384 0
test t3 Compressed test t3 Compressed 1024 0
test t4 Compressed test t4 Compressed 2048 0
test t5 Compressed test t5 Compressed 4096 0
test t6 Compressed test t6 Compressed 8192 0
test t7 Compressed test t7 Compressed 16384 0
test t8 Compressed test t8 Compressed 8192 0
test t9 Dynamic test t9 Dynamic 16384 0
drop table t1, t3, t4, t5, t6, t7, t8, t9, t10, t11; drop table t1, t3, t4, t5, t6, t7, t8, t9, t10, t11;
create table t1 (id int primary key) engine = innodb create table t1 (id int primary key) engine = innodb
key_block_size = 8 row_format = compressed; key_block_size = 8 row_format = compressed;
...@@ -246,11 +246,11 @@ Warning 1478 InnoDB: cannot specify ROW_FORMAT = DYNAMIC with KEY_BLOCK_SIZE. ...@@ -246,11 +246,11 @@ Warning 1478 InnoDB: cannot specify ROW_FORMAT = DYNAMIC with KEY_BLOCK_SIZE.
Error 1005 Can't create table 'test.t4' (errno: 1478) Error 1005 Can't create table 'test.t4' (errno: 1478)
create table t5 (id int primary key) engine = innodb create table t5 (id int primary key) engine = innodb
key_block_size = 8 row_format = default; key_block_size = 8 row_format = default;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
table_schema table_name row_format table_schema table_name row_format data_length index_length
test t1 Compressed test t1 Compressed 8192 0
test t5 Compressed test t5 Compressed 8192 0
drop table t1, t5; drop table t1, t5;
create table t1 (id int primary key) engine = innodb create table t1 (id int primary key) engine = innodb
key_block_size = 9 row_format = redundant; key_block_size = 9 row_format = redundant;
...@@ -276,9 +276,9 @@ Level Code Message ...@@ -276,9 +276,9 @@ Level Code Message
Warning 1478 InnoDB: invalid KEY_BLOCK_SIZE = 9. Valid values are [1, 2, 4, 8, 16] Warning 1478 InnoDB: invalid KEY_BLOCK_SIZE = 9. Valid values are [1, 2, 4, 8, 16]
Warning 1478 InnoDB: cannot specify ROW_FORMAT = DYNAMIC with KEY_BLOCK_SIZE. Warning 1478 InnoDB: cannot specify ROW_FORMAT = DYNAMIC with KEY_BLOCK_SIZE.
Error 1005 Can't create table 'test.t2' (errno: 1478) Error 1005 Can't create table 'test.t2' (errno: 1478)
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
table_schema table_name row_format table_schema table_name row_format data_length index_length
set global innodb_file_per_table = off; set global innodb_file_per_table = off;
create table t1 (id int primary key) engine = innodb key_block_size = 1; create table t1 (id int primary key) engine = innodb key_block_size = 1;
ERROR HY000: Can't create table 'test.t1' (errno: 1478) ERROR HY000: Can't create table 'test.t1' (errno: 1478)
...@@ -324,11 +324,11 @@ Warning 1478 InnoDB: ROW_FORMAT=DYNAMIC requires innodb_file_per_table. ...@@ -324,11 +324,11 @@ Warning 1478 InnoDB: ROW_FORMAT=DYNAMIC requires innodb_file_per_table.
Error 1005 Can't create table 'test.t7' (errno: 1478) Error 1005 Can't create table 'test.t7' (errno: 1478)
create table t8 (id int primary key) engine = innodb row_format = compact; create table t8 (id int primary key) engine = innodb row_format = compact;
create table t9 (id int primary key) engine = innodb row_format = redundant; create table t9 (id int primary key) engine = innodb row_format = redundant;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
table_schema table_name row_format table_schema table_name row_format data_length index_length
test t8 Compact test t8 Compact 16384 0
test t9 Redundant test t9 Redundant 16384 0
drop table t8, t9; drop table t8, t9;
set global innodb_file_per_table = on; set global innodb_file_per_table = on;
set global innodb_file_format = `0`; set global innodb_file_format = `0`;
...@@ -376,11 +376,11 @@ Warning 1478 InnoDB: ROW_FORMAT=DYNAMIC requires innodb_file_format > Antelope. ...@@ -376,11 +376,11 @@ Warning 1478 InnoDB: ROW_FORMAT=DYNAMIC requires innodb_file_format > Antelope.
Error 1005 Can't create table 'test.t7' (errno: 1478) Error 1005 Can't create table 'test.t7' (errno: 1478)
create table t8 (id int primary key) engine = innodb row_format = compact; create table t8 (id int primary key) engine = innodb row_format = compact;
create table t9 (id int primary key) engine = innodb row_format = redundant; create table t9 (id int primary key) engine = innodb row_format = redundant;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
table_schema table_name row_format table_schema table_name row_format data_length index_length
test t8 Compact test t8 Compact 16384 0
test t9 Redundant test t9 Redundant 16384 0
drop table t8, t9; drop table t8, t9;
set global innodb_file_per_table=0; set global innodb_file_per_table=0;
set global innodb_file_format=Antelope; set global innodb_file_format=Antelope;
......
...@@ -39,19 +39,19 @@ create table t13(a int primary key) engine=innodb ...@@ -39,19 +39,19 @@ create table t13(a int primary key) engine=innodb
row_format=compressed; row_format=compressed;
create table t14(a int primary key) engine=innodb key_block_size=9; create table t14(a int primary key) engine=innodb key_block_size=9;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
drop table t0,t00,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14; drop table t0,t00,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14;
alter table t1 key_block_size=0; alter table t1 key_block_size=0;
alter table t1 row_format=dynamic; alter table t1 row_format=dynamic;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
alter table t1 row_format=compact; alter table t1 row_format=compact;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
alter table t1 row_format=redundant; alter table t1 row_format=redundant;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
drop table t1; drop table t1;
...@@ -84,7 +84,7 @@ connection default; ...@@ -84,7 +84,7 @@ connection default;
disconnect a; disconnect a;
disconnect b; disconnect b;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
drop table t1,t2; drop table t1,t2;
...@@ -195,7 +195,7 @@ create table t9 (id int primary key) engine = innodb row_format = dynamic; ...@@ -195,7 +195,7 @@ create table t9 (id int primary key) engine = innodb row_format = dynamic;
create table t10(id int primary key) engine = innodb row_format = compact; create table t10(id int primary key) engine = innodb row_format = compact;
create table t11(id int primary key) engine = innodb row_format = redundant; create table t11(id int primary key) engine = innodb row_format = redundant;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
drop table t1, t3, t4, t5, t6, t7, t8, t9, t10, t11; drop table t1, t3, t4, t5, t6, t7, t8, t9, t10, t11;
...@@ -221,7 +221,7 @@ show warnings; ...@@ -221,7 +221,7 @@ show warnings;
create table t5 (id int primary key) engine = innodb create table t5 (id int primary key) engine = innodb
key_block_size = 8 row_format = default; key_block_size = 8 row_format = default;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
drop table t1, t5; drop table t1, t5;
...@@ -241,7 +241,7 @@ create table t2 (id int primary key) engine = innodb ...@@ -241,7 +241,7 @@ create table t2 (id int primary key) engine = innodb
key_block_size = 9 row_format = dynamic; key_block_size = 9 row_format = dynamic;
show warnings; show warnings;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
#test valid values with innodb_file_per_table unset #test valid values with innodb_file_per_table unset
...@@ -271,7 +271,7 @@ show warnings; ...@@ -271,7 +271,7 @@ show warnings;
create table t8 (id int primary key) engine = innodb row_format = compact; create table t8 (id int primary key) engine = innodb row_format = compact;
create table t9 (id int primary key) engine = innodb row_format = redundant; create table t9 (id int primary key) engine = innodb row_format = redundant;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
drop table t8, t9; drop table t8, t9;
...@@ -303,7 +303,7 @@ show warnings; ...@@ -303,7 +303,7 @@ show warnings;
create table t8 (id int primary key) engine = innodb row_format = compact; create table t8 (id int primary key) engine = innodb row_format = compact;
create table t9 (id int primary key) engine = innodb row_format = redundant; create table t9 (id int primary key) engine = innodb row_format = redundant;
SELECT table_schema, table_name, row_format SELECT table_schema, table_name, row_format, data_length, index_length
FROM information_schema.tables WHERE engine='innodb'; FROM information_schema.tables WHERE engine='innodb';
drop table t8, t9; drop table t8, t9;
......
...@@ -7898,6 +7898,8 @@ ha_innobase::info_low( ...@@ -7898,6 +7898,8 @@ ha_innobase::info_low(
if (flag & HA_STATUS_VARIABLE) { if (flag & HA_STATUS_VARIABLE) {
ulint page_size;
dict_table_stats_lock(ib_table, RW_S_LATCH); dict_table_stats_lock(ib_table, RW_S_LATCH);
n_rows = ib_table->stat_n_rows; n_rows = ib_table->stat_n_rows;
...@@ -7940,14 +7942,19 @@ ha_innobase::info_low( ...@@ -7940,14 +7942,19 @@ ha_innobase::info_low(
prebuilt->autoinc_last_value = 0; prebuilt->autoinc_last_value = 0;
} }
page_size = dict_table_zip_size(ib_table);
if (page_size == 0) {
page_size = UNIV_PAGE_SIZE;
}
stats.records = (ha_rows)n_rows; stats.records = (ha_rows)n_rows;
stats.deleted = 0; stats.deleted = 0;
stats.data_file_length = ((ulonglong) stats.data_file_length
ib_table->stat_clustered_index_size) = ((ulonglong) ib_table->stat_clustered_index_size)
* UNIV_PAGE_SIZE; * page_size;
stats.index_file_length = ((ulonglong) stats.index_file_length =
ib_table->stat_sum_of_other_index_sizes) ((ulonglong) ib_table->stat_sum_of_other_index_sizes)
* UNIV_PAGE_SIZE; * page_size;
dict_table_stats_unlock(ib_table, RW_S_LATCH); dict_table_stats_unlock(ib_table, RW_S_LATCH);
......
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