| List: | Commits | « Previous MessageNext Message » | |
| From: | Daogang Qu | Date: | September 9 2010 8:28am |
| Subject: | Re: bzr commit into mysql-trunk-bugfixing branch (alfranio.correia:3258) Bug#55377 | ||
| View as plain text | |||
于 2010年09月09日 16:09, Alfranio Correia 写道: > Hi Daogang, > > See comments in-line. > > Cheers. > > On 09/09/2010 04:51 AM, Daogang Qu wrote: > >> Hi Alfranio, >> Nice work. See comments in-line. Thanks! >> >> >> STATUS >> ----------- >> Not Approved! >> >> Best Regards, >> >> Daogang >> >> 2010-09-07 00:21, Alfranio Correia wrote: >> >>> #At > file:///home/acorreia/workspace.sun/repository.mysql.new/bzrwork/bug-55377/mysql-trunk-bugfixing/ > based on revid:wlad@stripped >>> >>> 3258 Alfranio Correia 2010-09-06 >>> BUG#55377 max_binlog_cache_size does not work as specified >>> >>> The binary log is created with a maximum size defined by >>> max (max_binlog_cache_size, binlog_cache_size) and not by >>> the max_binlog_cache_size as one expects. >>> >>> To fix this behavior, we issue a warning message when the >>> binlog_cache_size is greater than the max_binlog_cache_size >>> and set binlog_cache_size to max_binlog_cache_size. >>> @ mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test >>> Suppressed the warning message that is issued when the > binlog_cache_size >>> is greater than the max_binlog_cache_size. Besides, the > binlog_cache_size's >>> value is restored as it is changed when the binary log is openned. >>> @ mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result >>> Updated the result file. >>> @ mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result >>> Updated the result file. >>> @ mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result >>> Updated the result file. >>> @ mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size-master.opt >>> Set the binlog_cache_size's value to be greater than the > max_binlog_cache_size. >>> @ mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size-master.opt >>> Set the binlog_cache_size's value to be greater than the > max_binlog_cache_size. >>> @ mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size-master.opt >>> Set the binlog_cache_size's value to be greater than the > max_binlog_cache_size. >>> @ sql/binlog.cc >>> Added the body of function to check if binlog_cache_size<= > max_binlog_cache_size. >>> @ sql/binlog.h >>> Added the definition of function to check if binlog_cache_size<= > max_binlog_cache_size. >>> @ sql/mysqld.cc >>> Checked if binlog_cache_size<= max_binlog_cache_size during > startup. >>> @ sql/share/errmsg-utf8.txt >>> Created a new error message. >>> @ sql/sys_vars.cc >>> Checked if binlog_cache_size<= max_binlog_cache_size after > calling "SET". >>> >>> >>> >>> >> [snip] >> >>> > +######################################################################################## >>> # CLEAN >>> > ######################################################################################## >>> DROP TABLE t1; >>> >>> === modified file > 'mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size-master.opt' >>> --- > a/mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size-master.opt 2009-11-03 19:02:56 > +0000 >>> +++ > b/mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size-master.opt 2010-09-06 16:21:15 > +0000 >>> @@ -1 +1 @@ >>> ---binlog_cache_size=4096 --max_binlog_cache_size=7680 >>> +--binlog_cache_size=15360 --max_binlog_cache_size=7680 > --default-storage-engine=MyISAM >>> >>> >> The patch didn't test the change. We expect the value of two variables >> should be 7680 right after master restart. >> But the patch display the following values: >> >> +SHOW VARIABLES LIKE 'MAX_BINLOG_CACHE_SIZE'; >> +Variable_name Value >> +max_binlog_cache_size 4096 >> +SHOW VARIABLES LIKE 'BINLOG_CACHE_SIZE'; >> +Variable_name Value >> +binlog_cache_size 4096 >> > > The *binlog_cache_size is defined in block size which is by default 4096. For this > reason, > --max_binlog_cache_size is set to > > round(value / block) * block > Yes. Then please add the test for verifying the change. Thanks! Best Regards, Daogang > Cheers. >
