3193 Andrei Elkin 2010-08-26 [merge]
merging to next-mr-wl3656 from 5.5-trunk-based tree
modified:
libmysqld/libmysqld.c
mysql-test/suite/rpl/r/rpl_ps_slave_status.result
mysql-test/suite/rpl/t/rpl_ps_slave_status.test
3192 Andrei Elkin 2010-08-25 [merge]
wl#3656 PERFORMANCE SCHEMA table for SHOW SLAVE STATUS
auto/manual merging from 5.5-mysql-trunk based tree
modified:
mysql-test/suite/perfschema/r/information_schema.result
mysql-test/suite/perfschema/r/pfs_upgrade_lc0.result
mysql-test/suite/perfschema/r/pfs_upgrade_lc1.result
mysql-test/suite/perfschema/r/pfs_upgrade_lc2.result
mysql-test/suite/perfschema/r/schema.result
mysql-test/suite/perfschema/r/start_server_no_cond_class.result
mysql-test/suite/perfschema/r/start_server_no_cond_inst.result
mysql-test/suite/perfschema/r/start_server_no_file_class.result
mysql-test/suite/perfschema/r/start_server_no_file_inst.result
mysql-test/suite/perfschema/r/start_server_no_mutex_class.result
mysql-test/suite/perfschema/r/start_server_no_mutex_inst.result
mysql-test/suite/perfschema/r/start_server_no_rwlock_class.result
mysql-test/suite/perfschema/r/start_server_no_rwlock_inst.result
mysql-test/suite/perfschema/r/start_server_no_table_hdl.result
mysql-test/suite/perfschema/r/start_server_no_table_inst.result
mysql-test/suite/perfschema/r/start_server_no_thread_class.result
mysql-test/suite/perfschema/r/start_server_no_thread_inst.result
mysql-test/suite/perfschema/r/start_server_nothing.result
mysql-test/suite/perfschema/r/start_server_off.result
mysql-test/suite/perfschema/r/start_server_on.result
=== modified file 'libmysqld/libmysqld.c'
--- a/libmysqld/libmysqld.c 2010-07-15 11:16:06 +0000
+++ b/libmysqld/libmysqld.c 2010-08-26 19:57:38 +0000
@@ -51,6 +51,13 @@
#define INADDR_NONE -1
#endif
+/*
+ Added as a workaround to resolve extern ref to active_mi from pfs slave_status
+ TODO/FIXME: make sure pfs object files are not added to libmysqld.a
+*/
+struct Master_info {};
+struct Master_info *active_mi;
+
extern ulong net_buffer_length;
extern ulong max_allowed_packet;
=== modified file 'mysql-test/suite/rpl/r/rpl_ps_slave_status.result'
--- a/mysql-test/suite/rpl/r/rpl_ps_slave_status.result 2010-07-16 15:05:34 +0000
+++ b/mysql-test/suite/rpl/r/rpl_ps_slave_status.result 2010-08-26 19:54:20 +0000
@@ -7,6 +7,46 @@ start slave;
CREATE TABLE t1 (n INT);
insert into t1 value (1);
include/stop_slave.inc
+select `Slave_IO_State` from performance_schema.SLAVE_STATUS;
+select `Master_Host` from performance_schema.SLAVE_STATUS;
+select `Master_User` from performance_schema.SLAVE_STATUS;
+select `Master_Port` from performance_schema.SLAVE_STATUS;
+select `Connect_Retry` from performance_schema.SLAVE_STATUS;
+select `Master_Log_File` from performance_schema.SLAVE_STATUS;
+select `Read_Master_Log_Pos` from performance_schema.SLAVE_STATUS;
+select `Relay_Log_File` from performance_schema.SLAVE_STATUS;
+select `Relay_Log_Pos` from performance_schema.SLAVE_STATUS;
+select `Relay_Master_Log_File` from performance_schema.SLAVE_STATUS;
+select `Slave_IO_Running` from performance_schema.SLAVE_STATUS;
+select `Slave_SQL_Running` from performance_schema.SLAVE_STATUS;
+select `Replicate_Do_DB` from performance_schema.SLAVE_STATUS;
+select `Replicate_Ignore_DB` from performance_schema.SLAVE_STATUS;
+select `Replicate_Do_Table` from performance_schema.SLAVE_STATUS;
+select `Replicate_Ignore_Table` from performance_schema.SLAVE_STATUS;
+select `Replicate_Wild_Do_Table` from performance_schema.SLAVE_STATUS;
+select `Replicate_Wild_Ignore_Table` from performance_schema.SLAVE_STATUS;
+select `Last_Errno` from performance_schema.SLAVE_STATUS;
+select `Last_Error` from performance_schema.SLAVE_STATUS;
+select `Skip_Counter` from performance_schema.SLAVE_STATUS;
+select `Exec_Master_Log_Pos` from performance_schema.SLAVE_STATUS;
+select `Relay_Log_Space` from performance_schema.SLAVE_STATUS;
+select `Until_Condition` from performance_schema.SLAVE_STATUS;
+select `Until_Log_File` from performance_schema.SLAVE_STATUS;
+select `Until_Log_Pos` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_Allowed` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_CA_File` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_CA_Path` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_Cert` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_Cipher` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_Key` from performance_schema.SLAVE_STATUS;
+select `Seconds_Behind_Master` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_Verify_Server_Cert` from performance_schema.SLAVE_STATUS;
+select `Last_IO_Errno` from performance_schema.SLAVE_STATUS;
+select `Last_IO_Error` from performance_schema.SLAVE_STATUS;
+select `Last_SQL_Errno` from performance_schema.SLAVE_STATUS;
+select `Last_SQL_Error` from performance_schema.SLAVE_STATUS;
+select `Replicate_Ignore_Server_Ids` from performance_schema.SLAVE_STATUS;
+select `Master_Server_Id` from performance_schema.SLAVE_STATUS;
include/start_slave.inc
DROP TABLE t1;
End of tests
=== modified file 'mysql-test/suite/rpl/t/rpl_ps_slave_status.test'
--- a/mysql-test/suite/rpl/t/rpl_ps_slave_status.test 2010-07-16 15:05:34 +0000
+++ b/mysql-test/suite/rpl/t/rpl_ps_slave_status.test 2010-08-26 19:54:20 +0000
@@ -16,7 +16,7 @@ sync_slave_with_master;
--exec $MYSQL -e "show slave status\G" > $MYSQLTEST_VARDIR/tmp/show_slave_status.out
--exec $MYSQL -e "select * from performance_schema.SLAVE_STATUS\G" > $MYSQLTEST_VARDIR/tmp/ps_slave_status.out
-# Comparing outputs when SLAVE is UP
+# Comparing outputs when SLAVE is UP to prove equivalence with Show-Slave-Status
diff_files $MYSQLTEST_VARDIR/tmp/show_slave_status.out $MYSQLTEST_VARDIR/tmp/ps_slave_status.out;
--remove_file $MYSQLTEST_VARDIR/tmp/show_slave_status.out
@@ -26,7 +26,53 @@ diff_files $MYSQLTEST_VARDIR/tmp/show_sl
--exec $MYSQL -e "show slave status\G" > $MYSQLTEST_VARDIR/tmp/show_slave_status.out
--exec $MYSQL -e "select * from performance_schema.SLAVE_STATUS\G" > $MYSQLTEST_VARDIR/tmp/ps_slave_status.out
-# Comparing outputs when SLAVE is DOWN
+# proving that SELECT per each field works
+--disable_result_log
+
+select `Slave_IO_State` from performance_schema.SLAVE_STATUS;
+select `Master_Host` from performance_schema.SLAVE_STATUS;
+select `Master_User` from performance_schema.SLAVE_STATUS;
+select `Master_Port` from performance_schema.SLAVE_STATUS;
+select `Connect_Retry` from performance_schema.SLAVE_STATUS;
+select `Master_Log_File` from performance_schema.SLAVE_STATUS;
+select `Read_Master_Log_Pos` from performance_schema.SLAVE_STATUS;
+select `Relay_Log_File` from performance_schema.SLAVE_STATUS;
+select `Relay_Log_Pos` from performance_schema.SLAVE_STATUS;
+select `Relay_Master_Log_File` from performance_schema.SLAVE_STATUS;
+select `Slave_IO_Running` from performance_schema.SLAVE_STATUS;
+select `Slave_SQL_Running` from performance_schema.SLAVE_STATUS;
+select `Replicate_Do_DB` from performance_schema.SLAVE_STATUS;
+select `Replicate_Ignore_DB` from performance_schema.SLAVE_STATUS;
+select `Replicate_Do_Table` from performance_schema.SLAVE_STATUS;
+select `Replicate_Ignore_Table` from performance_schema.SLAVE_STATUS;
+select `Replicate_Wild_Do_Table` from performance_schema.SLAVE_STATUS;
+select `Replicate_Wild_Ignore_Table` from performance_schema.SLAVE_STATUS;
+select `Last_Errno` from performance_schema.SLAVE_STATUS;
+select `Last_Error` from performance_schema.SLAVE_STATUS;
+select `Skip_Counter` from performance_schema.SLAVE_STATUS;
+select `Exec_Master_Log_Pos` from performance_schema.SLAVE_STATUS;
+select `Relay_Log_Space` from performance_schema.SLAVE_STATUS;
+select `Until_Condition` from performance_schema.SLAVE_STATUS;
+select `Until_Log_File` from performance_schema.SLAVE_STATUS;
+select `Until_Log_Pos` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_Allowed` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_CA_File` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_CA_Path` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_Cert` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_Cipher` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_Key` from performance_schema.SLAVE_STATUS;
+select `Seconds_Behind_Master` from performance_schema.SLAVE_STATUS;
+select `Master_SSL_Verify_Server_Cert` from performance_schema.SLAVE_STATUS;
+select `Last_IO_Errno` from performance_schema.SLAVE_STATUS;
+select `Last_IO_Error` from performance_schema.SLAVE_STATUS;
+select `Last_SQL_Errno` from performance_schema.SLAVE_STATUS;
+select `Last_SQL_Error` from performance_schema.SLAVE_STATUS;
+select `Replicate_Ignore_Server_Ids` from performance_schema.SLAVE_STATUS;
+select `Master_Server_Id` from performance_schema.SLAVE_STATUS;
+
+--enable_result_log
+
+# Comparing outputs when SLAVE is DOWN to prove equivalence with Show-Slave-Status
diff_files $MYSQLTEST_VARDIR/tmp/show_slave_status.out $MYSQLTEST_VARDIR/tmp/ps_slave_status.out;
--remove_file $MYSQLTEST_VARDIR/tmp/show_slave_status.out
Attachment: [text/bzr-bundle] bzr/aelkin@mysql.com-20100826195738-pvatu23kq511ozgu.bundle
| Thread |
|---|
| • bzr push into mysql-next-mr branch (aelkin:3192 to 3193) | Andrei Elkin | 26 Aug |