Fix for BUG#12003 "assertion failure in testsuite (double lock of
LOCK_thread_count)" and for BUG#12004 "SHOW BINARY LOGS reports 0 for the size of all binlogs but the current one". There are a lot of 4.1->5.0 unmerged changes (hardest are in the optimizer), can't merge; still pushing in 4.1 because my changes are very small. Feel free to ask me if you have problems merging them. mysql-test/r/rpl_log.result: correcting binlog sizes mysql-test/r/rpl_rotate_logs.result: correcting binlog sizes sql/mysqld.cc: don't lock LOCK_thread_count when you already have it sql/sql_repl.cc: my_open() needs the complete name, not only the base name
This commit is contained in:
parent
3ee0803855
commit
750eedd9ab
@ -68,12 +68,12 @@ master-bin.000002 168 Query 1 168 use `test`; insert into t1 values (1)
|
|||||||
master-bin.000002 228 Query 1 228 use `test`; drop table t1
|
master-bin.000002 228 Query 1 228 use `test`; drop table t1
|
||||||
show binary logs;
|
show binary logs;
|
||||||
Log_name File_size
|
Log_name File_size
|
||||||
master-bin.000001 0
|
master-bin.000001 1171
|
||||||
master-bin.000002 276
|
master-bin.000002 276
|
||||||
start slave;
|
start slave;
|
||||||
show binary logs;
|
show binary logs;
|
||||||
Log_name File_size
|
Log_name File_size
|
||||||
slave-bin.000001 0
|
slave-bin.000001 1285
|
||||||
slave-bin.000002 170
|
slave-bin.000002 170
|
||||||
show binlog events in 'slave-bin.000001' from 4;
|
show binlog events in 'slave-bin.000001' from 4;
|
||||||
Log_name Pos Event_type Server_id Orig_log_pos Info
|
Log_name Pos Event_type Server_id Orig_log_pos Info
|
||||||
|
@ -27,8 +27,8 @@ insert into t2 values (34),(67),(123);
|
|||||||
flush logs;
|
flush logs;
|
||||||
show binary logs;
|
show binary logs;
|
||||||
Log_name File_size
|
Log_name File_size
|
||||||
master-bin.000001 0
|
master-bin.000001 461
|
||||||
master-bin.000002 0
|
master-bin.000002 213
|
||||||
master-bin.000003 4
|
master-bin.000003 4
|
||||||
create table t3 select * from temp_table;
|
create table t3 select * from temp_table;
|
||||||
select * from t3;
|
select * from t3;
|
||||||
@ -43,12 +43,12 @@ start slave;
|
|||||||
purge master logs to 'master-bin.000002';
|
purge master logs to 'master-bin.000002';
|
||||||
show master logs;
|
show master logs;
|
||||||
Log_name File_size
|
Log_name File_size
|
||||||
master-bin.000002 0
|
master-bin.000002 213
|
||||||
master-bin.000003 229
|
master-bin.000003 229
|
||||||
purge binary logs to 'master-bin.000002';
|
purge binary logs to 'master-bin.000002';
|
||||||
show binary logs;
|
show binary logs;
|
||||||
Log_name File_size
|
Log_name File_size
|
||||||
master-bin.000002 0
|
master-bin.000002 213
|
||||||
master-bin.000003 229
|
master-bin.000003 229
|
||||||
purge master logs before now();
|
purge master logs before now();
|
||||||
show binary logs;
|
show binary logs;
|
||||||
@ -74,7 +74,7 @@ count(*)
|
|||||||
create table t4 select * from temp_table;
|
create table t4 select * from temp_table;
|
||||||
show binary logs;
|
show binary logs;
|
||||||
Log_name File_size
|
Log_name File_size
|
||||||
master-bin.000003 0
|
master-bin.000003 4167
|
||||||
master-bin.000004 2886
|
master-bin.000004 2886
|
||||||
show master status;
|
show master status;
|
||||||
File Position Binlog_Do_DB Binlog_Ignore_DB
|
File Position Binlog_Do_DB Binlog_Ignore_DB
|
||||||
|
@ -663,7 +663,7 @@ static void close_connections(void)
|
|||||||
project. This will wake up the socket on Windows and prevent the
|
project. This will wake up the socket on Windows and prevent the
|
||||||
printing of the error message that we are force closing a connection.
|
printing of the error message that we are force closing a connection.
|
||||||
*/
|
*/
|
||||||
close_connection(tmp, 0, 1);
|
close_connection(tmp, 0, 0);
|
||||||
if (tmp->mysys_var)
|
if (tmp->mysys_var)
|
||||||
{
|
{
|
||||||
tmp->mysys_var->abort=1;
|
tmp->mysys_var->abort=1;
|
||||||
|
@ -1384,7 +1384,7 @@ int show_binlogs(THD* thd)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* this is an old log, open it and find the size */
|
/* this is an old log, open it and find the size */
|
||||||
if ((file= my_open(fname+dir_len, O_RDONLY | O_SHARE | O_BINARY,
|
if ((file= my_open(fname, O_RDONLY | O_SHARE | O_BINARY,
|
||||||
MYF(0))) >= 0)
|
MYF(0))) >= 0)
|
||||||
{
|
{
|
||||||
file_length= (ulonglong) my_seek(file, 0L, MY_SEEK_END, MYF(0));
|
file_length= (ulonglong) my_seek(file, 0L, MY_SEEK_END, MYF(0));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user