mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Fix of testcases after merge.
Small improvement to write caching. Docs/manual.texi: Updated Changelog mysql-test/r/rpl000013.result: Fix after merge mysql-test/r/rpl000016.result: Fix after merge mysys/mf_iocache2.c: Small improvement to write caching. sql/sql_select.cc: Removed warning
This commit is contained in:
@ -46340,6 +46340,10 @@ Fixed bug when joining with caching (unlikely to happen).
|
|||||||
Fixed race condition when using the binary log and @code{INSERT DELAYED}
|
Fixed race condition when using the binary log and @code{INSERT DELAYED}
|
||||||
which could cause the binary log to have rows that was not yet written
|
which could cause the binary log to have rows that was not yet written
|
||||||
to MyISAM tables.
|
to MyISAM tables.
|
||||||
|
@item
|
||||||
|
Changed caching of binary log to make replication slightly faster.
|
||||||
|
@item
|
||||||
|
Fixed bug in replication on Mac OS X.
|
||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
@node News-3.23.45, News-3.23.44, News-3.23.46, News-3.23.x
|
@node News-3.23.45, News-3.23.44, News-3.23.46, News-3.23.x
|
||||||
|
@ -10,7 +10,7 @@ insert into t1 values(1),(2),(3);
|
|||||||
insert into t2 select * from t1;
|
insert into t2 select * from t1;
|
||||||
create temporary table t1 (n int);
|
create temporary table t1 (n int);
|
||||||
insert into t1 values (4),(5);
|
insert into t1 values (4),(5);
|
||||||
insert into t2 select * from t1;
|
insert into t2 select * from t1 as t10;
|
||||||
insert into t2 values(6);
|
insert into t2 values(6);
|
||||||
select * from t2;
|
select * from t2;
|
||||||
n
|
n
|
||||||
|
@ -2,11 +2,11 @@ slave start;
|
|||||||
Could not initialize master info structure, check permisions on master.info
|
Could not initialize master info structure, check permisions on master.info
|
||||||
slave start;
|
slave start;
|
||||||
Could not initialize master info structure, check permisions on master.info
|
Could not initialize master info structure, check permisions on master.info
|
||||||
change master to master_host='127.0.0.1',master_port=$MASTER_MYPORT,
|
change master to master_host='127.0.0.1',master_port=9306,
|
||||||
master_user='root';
|
master_user='root';
|
||||||
Could not initialize master info
|
Could not initialize master info
|
||||||
reset slave;
|
reset slave;
|
||||||
change master to master_host='127.0.0.1',master_port=$MASTER_MYPORT,
|
change master to master_host='127.0.0.1',master_port=9306,
|
||||||
master_user='root';
|
master_user='root';
|
||||||
reset master;
|
reset master;
|
||||||
slave start;
|
slave start;
|
||||||
@ -15,14 +15,14 @@ create table t1 (s text);
|
|||||||
insert into t1 values('Could not break slave'),('Tried hard');
|
insert into t1 values('Could not break slave'),('Tried hard');
|
||||||
show slave status;
|
show slave status;
|
||||||
Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Last_log_seq
|
Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Last_log_seq
|
||||||
127.0.0.1 root $MASTER_MYPORT 60 master-bin.001 234 Yes 0 0 3
|
127.0.0.1 root 9306 60 master-bin.001 234 Yes 0 0 3
|
||||||
select * from t1;
|
select * from t1;
|
||||||
s
|
s
|
||||||
Could not break slave
|
Could not break slave
|
||||||
Tried hard
|
Tried hard
|
||||||
flush logs;
|
flush logs;
|
||||||
drop table if exists t2;
|
drop table if exists t2;
|
||||||
create table t2(m int not null primary key);
|
create table t2(m int not null auto_increment primary key);
|
||||||
insert into t2 values (34),(67),(123);
|
insert into t2 values (34),(67),(123);
|
||||||
flush logs;
|
flush logs;
|
||||||
show master logs;
|
show master logs;
|
||||||
@ -31,7 +31,8 @@ master-bin.001
|
|||||||
master-bin.002
|
master-bin.002
|
||||||
master-bin.003
|
master-bin.003
|
||||||
insert into t2 values(1234);
|
insert into t2 values(1234);
|
||||||
insert into t2 values(1234);
|
set insert_id=1234;
|
||||||
|
insert into t2 values(NULL);
|
||||||
slave stop;
|
slave stop;
|
||||||
set sql_slave_skip_counter=1;
|
set sql_slave_skip_counter=1;
|
||||||
slave start;
|
slave start;
|
||||||
@ -42,7 +43,7 @@ master-bin.003
|
|||||||
insert into t2 values (65);
|
insert into t2 values (65);
|
||||||
show slave status;
|
show slave status;
|
||||||
Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Last_log_seq
|
Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Last_log_seq
|
||||||
127.0.0.1 root $MASTER_MYPORT 60 master-bin.003 127 Yes 0 0 2
|
127.0.0.1 root 9306 60 master-bin.003 155 Yes 0 0 3
|
||||||
select * from t2;
|
select * from t2;
|
||||||
m
|
m
|
||||||
34
|
34
|
||||||
@ -60,12 +61,12 @@ master-bin.005
|
|||||||
master-bin.006
|
master-bin.006
|
||||||
show master status;
|
show master status;
|
||||||
File Position Binlog_do_db Binlog_ignore_db
|
File Position Binlog_do_db Binlog_ignore_db
|
||||||
master-bin.006 382
|
master-bin.006 445
|
||||||
slave stop;
|
slave stop;
|
||||||
slave start;
|
slave start;
|
||||||
show slave status;
|
show slave status;
|
||||||
Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Last_log_seq
|
Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Last_log_seq
|
||||||
127.0.0.1 root $MASTER_MYPORT 60 master-bin.006 382 Yes 0 0 6
|
127.0.0.1 root 9306 60 master-bin.006 445 Yes 0 0 7
|
||||||
lock tables t3 read;
|
lock tables t3 read;
|
||||||
select count(*) from t3 where n >= 4;
|
select count(*) from t3 where n >= 4;
|
||||||
count(*)
|
count(*)
|
||||||
|
@ -60,16 +60,20 @@ void my_b_seek(IO_CACHE *info,my_off_t pos)
|
|||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
}
|
}
|
||||||
flush_io_cache(info);
|
flush_io_cache(info);
|
||||||
|
/* Correct buffer end so that we write in increments of IO_SIZE */
|
||||||
|
info->write_end=(info->write_buffer+info->buffer_length-
|
||||||
|
(pos & (IO_SIZE-1)));
|
||||||
}
|
}
|
||||||
info->pos_in_file=pos;
|
info->pos_in_file=pos;
|
||||||
info->seek_not_done=1;
|
info->seek_not_done=1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Fill buffer. Note that this assumes that you have already used
|
Fill buffer. Note that this assumes that you have already used
|
||||||
** all characters in the CACHE, independent of the read_pos value!
|
all characters in the CACHE, independent of the read_pos value!
|
||||||
** return: 0 on error or EOF (info->error = -1 on error)
|
return: 0 on error or EOF (info->error = -1 on error)
|
||||||
** number of characters
|
number of characters
|
||||||
*/
|
*/
|
||||||
|
|
||||||
uint my_b_fill(IO_CACHE *info)
|
uint my_b_fill(IO_CACHE *info)
|
||||||
@ -109,11 +113,12 @@ uint my_b_fill(IO_CACHE *info)
|
|||||||
return length;
|
return length;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Read a string ended by '\n' into a buffer of 'max_length' size.
|
Read a string ended by '\n' into a buffer of 'max_length' size.
|
||||||
** Returns number of characters read, 0 on error.
|
Returns number of characters read, 0 on error.
|
||||||
** last byte is set to '\0'
|
last byte is set to '\0'
|
||||||
** If buffer is full then to[max_length-1] will be set to \0.
|
If buffer is full then to[max_length-1] will be set to \0.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
uint my_b_gets(IO_CACHE *info, char *to, uint max_length)
|
uint my_b_gets(IO_CACHE *info, char *to, uint max_length)
|
||||||
@ -151,6 +156,7 @@ uint my_b_gets(IO_CACHE *info, char *to, uint max_length)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Simple printf version. Supports '%s', '%d', '%u', "%ld" and "%lu"
|
Simple printf version. Supports '%s', '%d', '%u', "%ld" and "%lu"
|
||||||
Used for logging in MySQL
|
Used for logging in MySQL
|
||||||
|
@ -2322,7 +2322,7 @@ make_join_select(JOIN *join,SQL_SELECT *select,COND *cond)
|
|||||||
used_tables|=current_map;
|
used_tables|=current_map;
|
||||||
|
|
||||||
if (tab->type == JT_REF && tab->quick &&
|
if (tab->type == JT_REF && tab->quick &&
|
||||||
tab->ref.key == tab->quick->index &&
|
(uint) tab->ref.key == tab->quick->index &&
|
||||||
tab->ref.key_length < tab->quick->max_used_key_length)
|
tab->ref.key_length < tab->quick->max_used_key_length)
|
||||||
{
|
{
|
||||||
/* Range uses longer key; Use this instead of ref on key */
|
/* Range uses longer key; Use this instead of ref on key */
|
||||||
|
Reference in New Issue
Block a user