From 6a402e7c7a29ed9de1ad6269a62218e91789f60a Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 3 Feb 2010 15:49:20 +0800 Subject: [PATCH] Bug #50414 valgrind warnings: invalid file descriptor -1 in syscall write()/read() Sometimes stop/restart master or stop/restart salve can cause network error, which can cause the 'invalid file descriptor -1 in syscall write()/read()' warnings. All involved test cases except rpl_slave_load_remove_tmpfile belong to the kind of network error. So they are expected. The 'rpl_slave_load_remove_tmpfile' belongs to file error, but it is testing the file error as following code: DBUG_EXECUTE_IF("remove_slave_load_file_before_write", my_close(fd,MYF(0)); fd= -1; my_delete(fname, MYF(0));); So it's expected too. To fix the problem, add the valgrind warnings to the global suppression list to suppress it. mysql-test/include/mtr_warnings.sql: Added code to suppress valgrind warnings: invalid file descriptor -1 in syscall write()/read(). --- mysql-test/include/mtr_warnings.sql | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/mysql-test/include/mtr_warnings.sql b/mysql-test/include/mtr_warnings.sql index 89a6a981311..291c4c1cbe6 100644 --- a/mysql-test/include/mtr_warnings.sql +++ b/mysql-test/include/mtr_warnings.sql @@ -182,6 +182,12 @@ INSERT INTO global_suppressions VALUES ("==[0-9]*== For more details"), /* This comes with innodb plugin tests */ ("==[0-9]*== Warning: set address range perms: large range"), + + /* valgrind warnings: invalid file descriptor -1 in syscall + write()/read(). Bug #50414 */ + ("==[0-9]*== Warning: invalid file descriptor -1 in syscall write()"), + ("==[0-9]*== Warning: invalid file descriptor -1 in syscall read()"), + /* Transient network failures that cause warnings on reconnect. BUG#47743 and BUG#47983.