BUG#11756869: Merge from mysql-5.1 to mysql-5.5
This commit is contained in:
commit
5068aec9c1
@ -2438,6 +2438,19 @@ Table Op Msg_type Msg_text
|
|||||||
test.t1 check status OK
|
test.t1 check status OK
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
SET GLOBAL myisam_use_mmap=default;
|
SET GLOBAL myisam_use_mmap=default;
|
||||||
|
#
|
||||||
|
# BUG 11756869 - 48848: MYISAMCHK DOING SORT RECOVER IN CERTAIN
|
||||||
|
# CASES RESETS DATA POINTER TO SMAL
|
||||||
|
#
|
||||||
|
CREATE TABLE t1(a INT, KEY(a));
|
||||||
|
ALTER TABLE t1 DISABLE KEYS;
|
||||||
|
SET @before:= (SELECT MAX_DATA_LENGTH FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME='t1' AND TABLE_SCHEMA='test');
|
||||||
|
FLUSH TABLES;
|
||||||
|
SET @after:= (SELECT MAX_DATA_LENGTH FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME='t1' AND TABLE_SCHEMA='test');
|
||||||
|
SELECT @before=@after;
|
||||||
|
@before=@after
|
||||||
|
1
|
||||||
|
DROP TABLE t1;
|
||||||
End of 5.1 tests
|
End of 5.1 tests
|
||||||
#
|
#
|
||||||
# Bug#51327 MyISAM table is automatically repaired on ALTER
|
# Bug#51327 MyISAM table is automatically repaired on ALTER
|
||||||
|
@ -1665,6 +1665,20 @@ CHECK TABLE t1;
|
|||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
SET GLOBAL myisam_use_mmap=default;
|
SET GLOBAL myisam_use_mmap=default;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # BUG 11756869 - 48848: MYISAMCHK DOING SORT RECOVER IN CERTAIN
|
||||||
|
--echo # CASES RESETS DATA POINTER TO SMAL
|
||||||
|
--echo #
|
||||||
|
CREATE TABLE t1(a INT, KEY(a));
|
||||||
|
ALTER TABLE t1 DISABLE KEYS;
|
||||||
|
let $MYSQLD_DATADIR= `select @@datadir`;
|
||||||
|
SET @before:= (SELECT MAX_DATA_LENGTH FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME='t1' AND TABLE_SCHEMA='test');
|
||||||
|
FLUSH TABLES;
|
||||||
|
--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR
|
||||||
|
--exec $MYISAMCHK -sn $MYSQLD_DATADIR/test/t1
|
||||||
|
SET @after:= (SELECT MAX_DATA_LENGTH FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME='t1' AND TABLE_SCHEMA='test');
|
||||||
|
SELECT @before=@after;
|
||||||
|
DROP TABLE t1;
|
||||||
--echo End of 5.1 tests
|
--echo End of 5.1 tests
|
||||||
|
|
||||||
|
|
||||||
|
@ -4303,14 +4303,6 @@ int recreate_table(MI_CHECK *param, MI_INFO **org_info, char *filename)
|
|||||||
u_ptr->seg=keyseg;
|
u_ptr->seg=keyseg;
|
||||||
keyseg+=u_ptr->keysegs+1;
|
keyseg+=u_ptr->keysegs+1;
|
||||||
}
|
}
|
||||||
if (share.options & HA_OPTION_COMPRESS_RECORD)
|
|
||||||
share.base.records=max_records=info.state->records;
|
|
||||||
else if (share.base.min_pack_length)
|
|
||||||
max_records=(ha_rows) (mysql_file_seek(info.dfile, 0L, MY_SEEK_END,
|
|
||||||
MYF(0)) /
|
|
||||||
(ulong) share.base.min_pack_length);
|
|
||||||
else
|
|
||||||
max_records=0;
|
|
||||||
unpack= (share.options & HA_OPTION_COMPRESS_RECORD) &&
|
unpack= (share.options & HA_OPTION_COMPRESS_RECORD) &&
|
||||||
(param->testflag & T_UNPACK);
|
(param->testflag & T_UNPACK);
|
||||||
share.options&= ~HA_OPTION_TEMP_COMPRESS_RECORD;
|
share.options&= ~HA_OPTION_TEMP_COMPRESS_RECORD;
|
||||||
@ -4320,10 +4312,17 @@ int recreate_table(MI_CHECK *param, MI_INFO **org_info, char *filename)
|
|||||||
set_if_bigger(file_length,param->max_data_file_length);
|
set_if_bigger(file_length,param->max_data_file_length);
|
||||||
set_if_bigger(file_length,tmp_length);
|
set_if_bigger(file_length,tmp_length);
|
||||||
set_if_bigger(file_length,(ulonglong) share.base.max_data_file_length);
|
set_if_bigger(file_length,(ulonglong) share.base.max_data_file_length);
|
||||||
|
|
||||||
|
if (share.options & HA_OPTION_COMPRESS_RECORD)
|
||||||
|
share.base.records= max_records= info.state->records;
|
||||||
|
else if (!(share.options & HA_OPTION_PACK_RECORD))
|
||||||
|
max_records= (ha_rows) (file_length / share.base.pack_reclength);
|
||||||
|
else
|
||||||
|
max_records= 0;
|
||||||
|
|
||||||
(void) mi_close(*org_info);
|
(void) mi_close(*org_info);
|
||||||
bzero((char*) &create_info,sizeof(create_info));
|
bzero((char*) &create_info,sizeof(create_info));
|
||||||
create_info.max_rows=max(max_records,share.base.records);
|
create_info.max_rows= max_records;
|
||||||
create_info.reloc_rows=share.base.reloc;
|
create_info.reloc_rows=share.base.reloc;
|
||||||
create_info.old_options=(share.options |
|
create_info.old_options=(share.options |
|
||||||
(unpack ? HA_OPTION_TEMP_COMPRESS_RECORD : 0));
|
(unpack ? HA_OPTION_TEMP_COMPRESS_RECORD : 0));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user