Merge lp:~stewart/percona-server/5.5.30 into lp:percona-server/5.5

Proposed by Stewart Smith
Status: Merged
Approved by: Stewart Smith
Approved revision: no longer in the source branch.
Merged at revision: 461
Proposed branch: lp:~stewart/percona-server/5.5.30
Merge into: lp:percona-server/5.5
Diff against target: 10633 lines (+3746/-1991)
166 files modified
Percona-Server/.bzrignore (+2/-0)
Percona-Server/README (+1/-1)
Percona-Server/VERSION (+1/-1)
Percona-Server/client/mysql.cc (+7/-5)
Percona-Server/client/mysqlbinlog.cc (+4/-0)
Percona-Server/client/mysqldump.c (+4/-16)
Percona-Server/client/mysqltest.cc (+1/-1)
Percona-Server/extra/yassl/src/handshake.cpp (+7/-1)
Percona-Server/include/my_sys.h (+3/-0)
Percona-Server/include/mysql/service_my_snprintf.h (+1/-0)
Percona-Server/include/mysql/thread_pool_priv.h (+1/-0)
Percona-Server/include/welcome_copyright_notice.h (+2/-2)
Percona-Server/mysql-test/CMakeLists.txt (+4/-2)
Percona-Server/mysql-test/collections/default.daily (+1/-1)
Percona-Server/mysql-test/collections/default.experimental (+0/-5)
Percona-Server/mysql-test/collections/default.push (+6/-5)
Percona-Server/mysql-test/collections/default.release.in (+4/-4)
Percona-Server/mysql-test/include/get_binlog_dump_thread_id.inc (+0/-22)
Percona-Server/mysql-test/lib/My/SafeProcess/CMakeLists.txt (+1/-1)
Percona-Server/mysql-test/lib/My/SafeProcess/safe_process.cc (+12/-8)
Percona-Server/mysql-test/lib/My/SafeProcess/safe_process.pl (+0/-166)
Percona-Server/mysql-test/lib/mtr_cases.pm (+5/-12)
Percona-Server/mysql-test/lib/mtr_report.pm (+11/-1)
Percona-Server/mysql-test/mysql-test-run.pl (+89/-64)
Percona-Server/mysql-test/r/ddl_i18n_koi8r.result (+8/-8)
Percona-Server/mysql-test/r/ddl_i18n_utf8.result (+8/-8)
Percona-Server/mysql-test/r/group_min_max_innodb.result (+1/-1)
Percona-Server/mysql-test/r/mysqlbinlog.result (+32/-0)
Percona-Server/mysql-test/r/mysqldump.result (+86/-13)
Percona-Server/mysql-test/r/percona_innodb_version.result (+1/-1)
Percona-Server/mysql-test/r/percona_server_variables_debug.result (+4/-0)
Percona-Server/mysql-test/r/percona_server_variables_release.result (+2/-0)
Percona-Server/mysql-test/r/user_var-binlog.result (+2/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_base64_flag.result (+2/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog2.result (+54/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row.result (+2/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_innodb.result (+8/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_myisam.result (+8/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_trans.result (+2/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_row_ctype_ucs.result (+2/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_stm_ctype_ucs.result (+2/-0)
Percona-Server/mysql-test/suite/engines/funcs/r/rpl_row_until.result (+59/-211)
Percona-Server/mysql-test/suite/engines/funcs/t/disabled.def (+0/-2)
Percona-Server/mysql-test/suite/engines/funcs/t/rpl_row_until.test (+114/-78)
Percona-Server/mysql-test/suite/innodb/r/innodb-index.result (+1/-1)
Percona-Server/mysql-test/suite/innodb/r/innodb_bug14147491.result (+17/-0)
Percona-Server/mysql-test/suite/innodb/r/innodb_bug14676111.result (+53/-0)
Percona-Server/mysql-test/suite/innodb/r/innodb_mysql.result (+4/-4)
Percona-Server/mysql-test/suite/innodb/t/innodb_bug14147491-master.opt (+1/-0)
Percona-Server/mysql-test/suite/innodb/t/innodb_bug14147491.test (+75/-0)
Percona-Server/mysql-test/suite/innodb/t/innodb_bug14676111.test (+128/-0)
Percona-Server/mysql-test/suite/parts/r/partition_alter4_innodb.result (+24/-24)
Percona-Server/mysql-test/suite/perfschema/r/start_server_no_waits_history.result (+63/-0)
Percona-Server/mysql-test/suite/perfschema/r/start_server_no_waits_history_long.result (+63/-0)
Percona-Server/mysql-test/suite/perfschema/r/start_server_nothing.result (+122/-0)
Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history-master.opt (+2/-0)
Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history.test (+14/-0)
Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history_long-master.opt (+2/-0)
Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history_long.test (+14/-0)
Percona-Server/mysql-test/suite/perfschema/t/start_server_nothing-master.opt (+19/-0)
Percona-Server/mysql-test/suite/perfschema/t/start_server_nothing.test (+30/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_bug31076.result (+2/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_mdev382.result (+4/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_report_port.result (+2/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_rotate_logs.result (+11/-23)
Percona-Server/mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result (+10/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_sp.result (+2/-0)
Percona-Server/mysql-test/suite/rpl/t/disabled.def (+0/-1)
Percona-Server/mysql-test/suite/rpl/t/rpl_bug31076.test (+2/-0)
Percona-Server/mysql-test/suite/rpl/t/rpl_report_port.test (+6/-0)
Percona-Server/mysql-test/suite/rpl/t/rpl_rotate_logs.test (+52/-7)
Percona-Server/mysql-test/suite/sys_vars/r/innodb_limit_optimistic_insert_debug_basic.result (+58/-0)
Percona-Server/mysql-test/suite/sys_vars/r/innodb_print_all_deadlocks_basic.result (+22/-0)
Percona-Server/mysql-test/suite/sys_vars/r/innodb_trx_purge_view_update_only_debug_basic.result (+61/-0)
Percona-Server/mysql-test/suite/sys_vars/r/ndb_log_update_as_write_basic.result (+0/-14)
Percona-Server/mysql-test/suite/sys_vars/r/ndb_log_updated_only_basic.result (+0/-14)
Percona-Server/mysql-test/suite/sys_vars/r/pseudo_slave_mode_basic.result (+119/-0)
Percona-Server/mysql-test/suite/sys_vars/t/innodb_limit_optimistic_insert_debug_basic.test (+50/-0)
Percona-Server/mysql-test/suite/sys_vars/t/innodb_print_all_deadlocks_basic.test (+48/-0)
Percona-Server/mysql-test/suite/sys_vars/t/innodb_trx_purge_view_update_only_debug_basic.test (+53/-0)
Percona-Server/mysql-test/suite/sys_vars/t/ndb_log_update_as_write_basic.test (+0/-216)
Percona-Server/mysql-test/suite/sys_vars/t/ndb_log_updated_only_basic.test (+0/-216)
Percona-Server/mysql-test/suite/sys_vars/t/pseudo_slave_mode_basic.test (+168/-0)
Percona-Server/mysql-test/t/mysqldump.test (+9/-3)
Percona-Server/mysql-test/t/percona_innodb_version.test (+1/-1)
Percona-Server/mysys/errors.c (+18/-6)
Percona-Server/mysys/mf_pack.c (+5/-4)
Percona-Server/mysys/my_access.c (+64/-0)
Percona-Server/mysys/my_error.c (+22/-0)
Percona-Server/mysys/my_lib.c (+6/-4)
Percona-Server/mysys/my_write.c (+4/-0)
Percona-Server/mysys/thr_rwlock.c (+1/-1)
Percona-Server/packaging/WiX/custom_ui.wxs (+2/-2)
Percona-Server/packaging/rpm-uln/mysql.spec.sh (+26/-11)
Percona-Server/scripts/mysqld_safe.sh (+2/-2)
Percona-Server/sql/field.cc (+4/-4)
Percona-Server/sql/ha_partition.cc (+20/-2)
Percona-Server/sql/item_cmpfunc.cc (+11/-11)
Percona-Server/sql/item_func.cc (+21/-8)
Percona-Server/sql/item_func.h (+16/-2)
Percona-Server/sql/item_subselect.cc (+2/-1)
Percona-Server/sql/item_sum.cc (+9/-6)
Percona-Server/sql/item_xmlfunc.cc (+5/-1)
Percona-Server/sql/log_event.cc (+16/-5)
Percona-Server/sql/log_event.h (+16/-2)
Percona-Server/sql/mdl.h (+8/-2)
Percona-Server/sql/mysqld.cc (+43/-10)
Percona-Server/sql/opt_range.cc (+1/-1)
Percona-Server/sql/protocol.cc (+1/-1)
Percona-Server/sql/rpl_utility.cc (+7/-2)
Percona-Server/sql/sql_admin.cc (+24/-4)
Percona-Server/sql/sql_base.cc (+28/-21)
Percona-Server/sql/sql_base.h (+26/-1)
Percona-Server/sql/sql_cache.cc (+15/-15)
Percona-Server/sql/sql_class.cc (+52/-42)
Percona-Server/sql/sql_class.h (+1/-1)
Percona-Server/sql/sql_parse.cc (+8/-2)
Percona-Server/sql/sql_repl.cc (+4/-0)
Percona-Server/sql/sql_select.cc (+55/-26)
Percona-Server/sql/sql_select.h (+15/-1)
Percona-Server/sql/sql_table.cc (+127/-106)
Percona-Server/sql/sql_yacc.yy (+2/-2)
Percona-Server/sql/strfunc.cc (+1/-1)
Percona-Server/sql/sys_vars.cc (+64/-0)
Percona-Server/sql/transaction.cc (+17/-3)
Percona-Server/sql/tztime.cc (+3/-18)
Percona-Server/storage/archive/ha_archive.cc (+7/-6)
Percona-Server/storage/heap/hp_delete.c (+14/-4)
Percona-Server/storage/innobase/btr/btr0btr.c (+33/-5)
Percona-Server/storage/innobase/btr/btr0cur.c (+8/-0)
Percona-Server/storage/innobase/buf/buf0buf.c (+78/-79)
Percona-Server/storage/innobase/buf/buf0flu.c (+24/-0)
Percona-Server/storage/innobase/buf/buf0lru.c (+39/-3)
Percona-Server/storage/innobase/dict/dict0load.c (+2/-1)
Percona-Server/storage/innobase/fil/fil0fil.c (+60/-3)
Percona-Server/storage/innobase/handler/ha_innodb.cc (+41/-96)
Percona-Server/storage/innobase/handler/handler0alter.cc (+0/-2)
Percona-Server/storage/innobase/include/btr0cur.h (+5/-0)
Percona-Server/storage/innobase/include/btr0cur.ic (+13/-0)
Percona-Server/storage/innobase/include/buf0buf.h (+24/-5)
Percona-Server/storage/innobase/include/buf0buf.ic (+5/-6)
Percona-Server/storage/innobase/include/buf0lru.h (+4/-1)
Percona-Server/storage/innobase/include/data0type.ic (+7/-25)
Percona-Server/storage/innobase/include/fil0fil.h (+15/-0)
Percona-Server/storage/innobase/include/lock0lock.h (+10/-2)
Percona-Server/storage/innobase/include/rem0rec.h (+42/-38)
Percona-Server/storage/innobase/include/srv0srv.h (+14/-0)
Percona-Server/storage/innobase/include/trx0purge.h (+4/-0)
Percona-Server/storage/innobase/include/univ.i (+9/-13)
Percona-Server/storage/innobase/lock/lock0lock.c (+192/-78)
Percona-Server/storage/innobase/log/log0recv.c (+11/-4)
Percona-Server/storage/innobase/rem/rem0rec.c (+191/-66)
Percona-Server/storage/innobase/row/row0ins.c (+4/-1)
Percona-Server/storage/innobase/row/row0merge.c (+94/-27)
Percona-Server/storage/innobase/row/row0mysql.c (+7/-0)
Percona-Server/storage/innobase/row/row0umod.c (+3/-0)
Percona-Server/storage/innobase/row/row0undo.c (+1/-1)
Percona-Server/storage/innobase/srv/srv0srv.c (+60/-7)
Percona-Server/storage/innobase/trx/trx0purge.c (+17/-0)
Percona-Server/storage/innobase/trx/trx0rec.c (+20/-0)
Percona-Server/storage/myisam/mi_open.c (+6/-0)
Percona-Server/storage/myisam/mi_search.c (+9/-6)
Percona-Server/storage/perfschema/pfs_events_waits.cc (+6/-0)
Percona-Server/strings/decimal.c (+17/-16)
Percona-Server/strings/my_vsnprintf.c (+2/-0)
Percona-Server/support-files/mysql.spec.sh (+0/-1)
To merge this branch: bzr merge lp:~stewart/percona-server/5.5.30
Reviewer Review Type Date Requested Status
Stewart Smith (community) Approve
Laurynas Biveinis (community) Approve
Review via email: mp+148984@code.launchpad.net

Description of the change

Some details in the commit messages. This was one of the less obvious merges, which is a bit disappointing, but it is what it is. Laurynas took care of most of the InnoDB tricky bits.

http://jenkins.percona.com/view/PS%205.5/job/percona-server-5.5-param/677/

(this fresh proposal fixes a few things from the previous one, noticed we missed some test suite updates due to how laurynas and I exchanged patch halfway through merge)

To post a comment you must log in.
Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

Approving everything except buf0 changes, because I did them.

However, the fix for a merge regression bug 1072573 was requested but does not seem to be present.

As it is now too late to take care of this, let's push this to the next merge, which should also fix another merge regression bug 1132109.

review: Approve
Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

After this one is merged, have to check if https://code.launchpad.net/~stewart/percona-server/5.1.67/+merge/142635 becomes mergeable too.

Revision history for this message
Stewart Smith (stewart) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'Percona-Server/.bzrignore'
2--- Percona-Server/.bzrignore 2012-05-30 10:47:29 +0000
3+++ Percona-Server/.bzrignore 2013-02-18 05:17:25 +0000
4@@ -1313,6 +1313,7 @@
5 mysql-test/*.vcproj
6 mysql-test/.DS_Store
7 mysql-test/collections/default.release
8+mysql-test/collections/default.release.done
9 mysql-test/funcs_1.log
10 mysql-test/funcs_1.tar
11 mysql-test/gmon.out
12@@ -3066,4 +3067,5 @@
13 Docs/INFO_BIN
14 Docs/INFO_SRC
15 Testing
16+FilesCopied
17 source_downloads
18
19=== modified file 'Percona-Server/README'
20--- Percona-Server/README 2012-02-28 11:50:23 +0000
21+++ Percona-Server/README 2013-02-18 05:17:25 +0000
22@@ -5,7 +5,7 @@
23 is released under the version 2 of the GNU General Public License.
24 MySQL is brought to you by Oracle.
25
26-Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
27+Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
28
29 License information can be found in the COPYING file.
30
31
32=== modified file 'Percona-Server/VERSION'
33--- Percona-Server/VERSION 2013-01-09 23:45:25 +0000
34+++ Percona-Server/VERSION 2013-02-18 05:17:25 +0000
35@@ -1,4 +1,4 @@
36 MYSQL_VERSION_MAJOR=5
37 MYSQL_VERSION_MINOR=5
38-MYSQL_VERSION_PATCH=29
39+MYSQL_VERSION_PATCH=30
40 MYSQL_VERSION_EXTRA=
41
42=== modified file 'Percona-Server/client/mysql.cc'
43--- Percona-Server/client/mysql.cc 2013-01-17 22:50:22 +0000
44+++ Percona-Server/client/mysql.cc 2013-02-18 05:17:25 +0000
45@@ -2338,17 +2338,19 @@
46 {
47 uint length=(uint) (out-line);
48
49- if (!truncated &&
50- (length < 9 ||
51- my_strnncoll (charset_info,
52- (uchar *)line, 9, (const uchar *) "delimiter", 9)))
53+ if (!truncated && (length < 9 ||
54+ my_strnncoll (charset_info, (uchar *)line, 9,
55+ (const uchar *) "delimiter", 9) ||
56+ (*in_string || *ml_comment)))
57 {
58 /*
59 Don't add a new line in case there's a DELIMITER command to be
60 added to the glob buffer (e.g. on processing a line like
61 "<command>;DELIMITER <non-eof>") : similar to how a new line is
62 not added in the case when the DELIMITER is the first command
63- entered with an empty glob buffer.
64+ entered with an empty glob buffer. However, if the delimiter is
65+ part of a string or a comment, the new line should be added. (e.g.
66+ SELECT '\ndelimiter\n';\n)
67 */
68 *out++='\n';
69 length++;
70
71=== modified file 'Percona-Server/client/mysqlbinlog.cc'
72--- Percona-Server/client/mysqlbinlog.cc 2013-01-17 22:50:22 +0000
73+++ Percona-Server/client/mysqlbinlog.cc 2013-02-18 05:17:25 +0000
74@@ -2120,6 +2120,8 @@
75 else
76 load_processor.init_by_cur_dir();
77
78+ fprintf(result_file, "/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;\n");
79+
80 fprintf(result_file,
81 "/*!40019 SET @@session.max_insert_delayed_threads=0*/;\n");
82
83@@ -2170,6 +2172,8 @@
84 "/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;\n"
85 "/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;\n");
86
87+ fprintf(result_file, "/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;\n");
88+
89 if (tmpdir.list)
90 free_tmpdir(&tmpdir);
91 if (result_file != stdout)
92
93=== modified file 'Percona-Server/client/mysqldump.c'
94--- Percona-Server/client/mysqldump.c 2013-01-18 03:34:53 +0000
95+++ Percona-Server/client/mysqldump.c 2013-02-18 05:17:25 +0000
96@@ -2277,7 +2277,6 @@
97 const char *routine_type[]= {"FUNCTION", "PROCEDURE"};
98 char db_name_buff[NAME_LEN*2+3], name_buff[NAME_LEN*2+3];
99 char *routine_name;
100- char *query_str;
101 int i;
102 FILE *sql_file= md_result_file;
103 MYSQL_RES *routine_res, *routine_list_res;
104@@ -2371,17 +2370,6 @@
105 fprintf(sql_file, "/*!50003 DROP %s IF EXISTS %s */;\n",
106 routine_type[i], routine_name);
107
108- query_str= cover_definer_clause(row[2], strlen(row[2]),
109- C_STRING_WITH_LEN("50020"),
110- C_STRING_WITH_LEN("50003"),
111- C_STRING_WITH_LEN(" FUNCTION"));
112-
113- if (!query_str)
114- query_str= cover_definer_clause(row[2], strlen(row[2]),
115- C_STRING_WITH_LEN("50020"),
116- C_STRING_WITH_LEN("50003"),
117- C_STRING_WITH_LEN(" PROCEDURE"));
118-
119 if (mysql_num_fields(routine_res) >= 6)
120 {
121 if (switch_db_collation(sql_file, db_name_buff, ";",
122@@ -2419,9 +2407,9 @@
123
124 fprintf(sql_file,
125 "DELIMITER ;;\n"
126- "/*!50003 %s */;;\n"
127+ "%s ;;\n"
128 "DELIMITER ;\n",
129- (const char *) (query_str != NULL ? query_str : row[2]));
130+ (const char *) row[2]);
131
132 restore_sql_mode(sql_file, ";");
133
134@@ -2436,7 +2424,6 @@
135 }
136 }
137
138- my_free(query_str);
139 }
140 } /* end of routine printing */
141 mysql_free_result(routine_res);
142@@ -3708,7 +3695,8 @@
143 if (!opt_events && !my_strcasecmp(&my_charset_latin1, db, "mysql") &&
144 !my_strcasecmp(&my_charset_latin1, table, "event"))
145 {
146- verbose_msg("-- Skipping data table mysql.event, --skip-events was used\n");
147+ fprintf(stderr, "-- Warning: Skipping the data of table mysql.event."
148+ " Specify the --events option explicitly.\n");
149 DBUG_VOID_RETURN;
150 }
151
152
153=== modified file 'Percona-Server/client/mysqltest.cc'
154--- Percona-Server/client/mysqltest.cc 2013-01-17 22:50:22 +0000
155+++ Percona-Server/client/mysqltest.cc 2013-02-18 05:17:25 +0000
156@@ -1312,7 +1312,7 @@
157 void free_used_memory()
158 {
159 uint i;
160- DBUG_ENTER("free_used_memory");
161+ // Do not use DBUG_ENTER("free_used_memory"); here, see below.
162
163 if (connections)
164 close_connections();
165
166=== modified file 'Percona-Server/extra/yassl/src/handshake.cpp'
167--- Percona-Server/extra/yassl/src/handshake.cpp 2012-02-13 12:44:54 +0000
168+++ Percona-Server/extra/yassl/src/handshake.cpp 2013-02-18 05:17:25 +0000
169@@ -767,8 +767,14 @@
170
171 while (buffer.get_current() < hdr.length_ + RECORD_HEADER + offset) {
172 // each message in record, can be more than 1 if not encrypted
173- if (ssl.getSecurity().get_parms().pending_ == false) // cipher on
174+ if (ssl.getSecurity().get_parms().pending_ == false) { // cipher on
175+ // sanity check for malicious/corrupted/illegal input
176+ if (buffer.get_remaining() < hdr.length_) {
177+ ssl.SetError(bad_input);
178+ return 0;
179+ }
180 decrypt_message(ssl, buffer, hdr.length_);
181+ }
182
183 mySTL::auto_ptr<Message> msg(mf.CreateObject(hdr.type_));
184 if (!msg.get()) {
185
186=== modified file 'Percona-Server/include/my_sys.h'
187--- Percona-Server/include/my_sys.h 2013-01-30 09:55:26 +0000
188+++ Percona-Server/include/my_sys.h 2013-02-18 05:17:25 +0000
189@@ -210,6 +210,7 @@
190 extern void (*error_handler_hook)(uint my_err, const char *str,myf MyFlags);
191 extern void (*fatal_error_handler_hook)(uint my_err, const char *str,
192 myf MyFlags);
193+extern void(*sql_print_warning_hook)(const char *format,...);
194 extern uint my_file_limit;
195 extern ulong my_thread_stack_size;
196
197@@ -606,6 +607,7 @@
198
199 extern int check_if_legal_filename(const char *path);
200 extern int check_if_legal_tablename(const char *path);
201+extern my_bool is_filename_allowed(const char *name, size_t length);
202
203 #ifdef _WIN32
204 extern int nt_share_delete(const char *name,myf MyFlags);
205@@ -642,6 +644,7 @@
206 va_list ap);
207 extern int my_error_register(const char** (*get_errmsgs) (),
208 int first, int last);
209+extern void my_printf_warning (const char * format, ...);
210 extern const char **my_error_unregister(int first, int last);
211 extern void my_message(uint my_err, const char *str,myf MyFlags);
212 extern void my_message_stderr(uint my_err, const char *str, myf MyFlags);
213
214=== modified file 'Percona-Server/include/mysql/service_my_snprintf.h'
215--- Percona-Server/include/mysql/service_my_snprintf.h 2011-06-30 15:46:53 +0000
216+++ Percona-Server/include/mysql/service_my_snprintf.h 2013-02-18 05:17:25 +0000
217@@ -49,6 +49,7 @@
218 string will be quoted according to MySQL identifier quoting rules.
219
220 Both <width> and <precision> can be specified as numbers or '*'.
221+ If an asterisk is used, an argument of type int is consumed.
222
223 <length modifier> can be 'l', 'll', or 'z'.
224
225
226=== modified file 'Percona-Server/include/mysql/thread_pool_priv.h'
227--- Percona-Server/include/mysql/thread_pool_priv.h 2012-08-28 14:13:03 +0000
228+++ Percona-Server/include/mysql/thread_pool_priv.h 2013-02-18 05:17:25 +0000
229@@ -61,6 +61,7 @@
230 void thd_set_mysys_var(THD *thd, st_my_thread_var *mysys_var);
231 ulong thd_get_net_wait_timeout(THD *thd);
232 my_socket thd_get_fd(THD *thd);
233+int thd_store_globals(THD* thd);
234
235 THD *first_global_thread();
236 THD *next_global_thread(THD *thd);
237
238=== modified file 'Percona-Server/include/welcome_copyright_notice.h'
239--- Percona-Server/include/welcome_copyright_notice.h 2012-08-07 13:37:13 +0000
240+++ Percona-Server/include/welcome_copyright_notice.h 2013-02-18 05:17:25 +0000
241@@ -1,4 +1,4 @@
242-/* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
243+/* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
244
245 This program is free software; you can redistribute it and/or modify
246 it under the terms of the GNU General Public License as published by
247@@ -16,7 +16,7 @@
248 #ifndef _welcome_copyright_notice_h_
249 #define _welcome_copyright_notice_h_
250
251-#define COPYRIGHT_NOTICE_CURRENT_YEAR "2012"
252+#define COPYRIGHT_NOTICE_CURRENT_YEAR "2013"
253
254 /*
255 This define specifies copyright notice which is displayed by every MySQL
256
257=== modified file 'Percona-Server/mysql-test/CMakeLists.txt'
258--- Percona-Server/mysql-test/CMakeLists.txt 2012-02-16 09:48:16 +0000
259+++ Percona-Server/mysql-test/CMakeLists.txt 2013-02-18 05:17:25 +0000
260@@ -1,4 +1,4 @@
261-# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
262+# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
263 #
264 # This program is free software; you can redistribute it and/or modify
265 # it under the terms of the GNU General Public License as published by
266@@ -150,8 +150,10 @@
267 FILE(GLOB infiles "collections/*.in")
268 FOREACH(collin ${infiles})
269 STRING(REPLACE ".in" "" collection ${collin})
270+ STRING(REPLACE ".in" ".done" colldone ${collin})
271 # Only generate file once
272- IF(NOT EXISTS ${collection})
273+ IF(NOT EXISTS ${colldone})
274 PROCESS_COLLECTION_INCLUDE(${collin} ${collection})
275+ FILE(APPEND ${colldone} "${collin}\n")
276 ENDIF()
277 ENDFOREACH()
278
279=== modified file 'Percona-Server/mysql-test/collections/default.daily'
280--- Percona-Server/mysql-test/collections/default.daily 2011-03-11 09:12:58 +0000
281+++ Percona-Server/mysql-test/collections/default.daily 2013-02-18 05:17:25 +0000
282@@ -1,5 +1,5 @@
283
284-perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=normal --vardir=var-normal --report-features --skip-test-list=collections/disabled-daily.list --unit-tests
285+perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=normal --vardir=var-normal --report-features --skip-test-list=collections/disabled-daily.list
286 perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=n_mix --vardir=var-n_mix --mysqld=--binlog-format=mixed --skip-test-list=collections/disabled-daily.list
287 perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=row --vardir=var-row --mysqld=--binlog-format=row --skip-test-list=collections/disabled-daily.list
288 perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=ps_row --vardir=var-ps_row --mysqld=--binlog-format=row --ps-protocol --skip-test-list=collections/disabled-daily.list
289
290=== modified file 'Percona-Server/mysql-test/collections/default.experimental'
291--- Percona-Server/mysql-test/collections/default.experimental 2012-02-03 14:23:33 +0000
292+++ Percona-Server/mysql-test/collections/default.experimental 2013-02-18 05:17:25 +0000
293@@ -18,9 +18,4 @@
294 sys_vars.max_sp_recursion_depth_func @solaris # Bug#11753919 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
295 sys_vars.wait_timeout_func # Bug#11750645 2010-04-26 alik wait_timeout_func fails
296
297-# BUG #59055 : All ndb tests should be removed from the repository
298-# Leaving the sys_vars tests for now. sys_vars.all_vars.test fails on removing ndb tests
299-sys_vars.ndb_log_update_as_write_basic
300-sys_vars.have_ndbcluster_basic
301-sys_vars.ndb_log_updated_only_basic
302 sys_vars.rpl_init_slave_func # Bug#12535301 2011-05-09 andrei sys_vars.rpl_init_slave_func mismatches in daily-5.5
303
304=== modified file 'Percona-Server/mysql-test/collections/default.push'
305--- Percona-Server/mysql-test/collections/default.push 2011-02-21 12:56:43 +0000
306+++ Percona-Server/mysql-test/collections/default.push 2013-02-18 05:17:25 +0000
307@@ -1,5 +1,6 @@
308-perl mysql-test-run.pl --timer --force --parallel=auto --comment=n_mix --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-ndb --skip-test-list=collections/disabled-per-push.list --unit-tests
309-perl mysql-test-run.pl --timer --force --parallel=auto --comment=ps_row --vardir=var-ps_row --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-ndb --skip-test-list=collections/disabled-per-push.list
310-perl mysql-test-run.pl --timer --force --parallel=auto --comment=embedded --vardir=var-emebbed --embedded --experimental=collections/default.experimental --skip-ndb
311-perl mysql-test-run.pl --timer --force --parallel=auto --comment=rpl_binlog_row --vardir=var-rpl_binlog_row --suite=rpl,binlog --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-ndb --skip-test-list=collections/disabled-per-push.list
312-perl mysql-test-run.pl --timer --force --parallel=auto --comment=funcs_1 --vardir=var-funcs_1 --suite=funcs_1 --experimental=collections/default.experimental --skip-ndb
313+perl mysql-test-run.pl --timer --force --parallel=auto --comment=n_mix --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list
314+perl mysql-test-run.pl --timer --force --parallel=auto --comment=ps_row --vardir=var-ps_row --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list
315+perl mysql-test-run.pl --timer --force --parallel=auto --comment=embedded --vardir=var-emebbed --embedded --experimental=collections/default.experimental
316+perl mysql-test-run.pl --timer --force --parallel=auto --comment=rpl_binlog_row --vardir=var-rpl_binlog_row --suite=rpl,binlog --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list
317+perl mysql-test-run.pl --timer --force --parallel=auto --comment=funcs_1 --vardir=var-funcs_1 --suite=funcs_1 --experimental=collections/default.experimental
318+
319
320=== modified file 'Percona-Server/mysql-test/collections/default.release.in'
321--- Percona-Server/mysql-test/collections/default.release.in 2011-09-29 08:42:23 +0000
322+++ Percona-Server/mysql-test/collections/default.release.in 2013-02-18 05:17:25 +0000
323@@ -4,14 +4,14 @@
324 # include default.daily
325 # include default.weekly
326
327-perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=debug --vardir=var-debug --skip-ndbcluster --skip-rpl --report-features --debug-server
328-perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=normal --vardir=var-normal --skip-ndbcluster --report-features
329-perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=ps --vardir=var-ps --skip-ndbcluster --ps-protocol
330+perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=debug --vardir=var-debug --skip-rpl --report-features --debug-server
331+perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=normal --vardir=var-normal --report-features
332+perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=ps --vardir=var-ps --ps-protocol
333 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=funcs1+ps --vardir=var-funcs_1_ps --suite=funcs_1 --ps-protocol
334 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=funcs2 --vardir=var-funcs2 --suite=funcs_2
335 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=partitions --vardir=var-parts --suite=parts
336 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=stress --vardir=var-stress --suite=stress
337 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=jp --vardir=var-jp --suite=jp
338-perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=embedded --vardir=var-embedded --embedded-server --skip-rpl --skip-ndbcluster
339+perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=embedded --vardir=var-embedded --embedded-server --skip-rpl
340 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=nist --vardir=var-nist --suite=nist
341 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=nist+ps --vardir=var-nist_ps --suite=nist --ps-protocol
342
343=== removed file 'Percona-Server/mysql-test/include/get_binlog_dump_thread_id.inc'
344--- Percona-Server/mysql-test/include/get_binlog_dump_thread_id.inc 2007-02-26 08:16:22 +0000
345+++ Percona-Server/mysql-test/include/get_binlog_dump_thread_id.inc 1970-01-01 00:00:00 +0000
346@@ -1,22 +0,0 @@
347---exec $MYSQL test -e "show processlist" > $MYSQLTEST_VARDIR/tmp/bl_dump_thread_id
348---disable_warnings
349-drop table if exists t999;
350---enable_warnings
351-# Create a table to hold the process list
352-create temporary table t999(
353- id int,
354- user char(255),
355- host char(255),
356- db char(255),
357- Command char(255),
358- time int,
359- State char(255),
360- info char(255)
361-);
362-# Load processlist into table, headers will create seom warnings
363---disable_warnings
364---replace_result $MYSQLTEST_VARDIR "."
365-eval LOAD DATA INFILE "$MYSQLTEST_VARDIR/tmp/bl_dump_thread_id" into table t999;
366---enable_warnings
367-let $id = `select Id from t999 where Command="Binlog Dump"`;
368-drop table t999;
369
370=== modified file 'Percona-Server/mysql-test/lib/My/SafeProcess/CMakeLists.txt'
371--- Percona-Server/mysql-test/lib/My/SafeProcess/CMakeLists.txt 2011-01-18 10:21:37 +0000
372+++ Percona-Server/mysql-test/lib/My/SafeProcess/CMakeLists.txt 2013-02-18 05:17:25 +0000
373@@ -29,4 +29,4 @@
374 IF(WIN32)
375 INSTALL(TARGETS my_safe_kill DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test)
376 ENDIF()
377-INSTALL(FILES safe_process.pl Base.pm DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test)
378+INSTALL(FILES Base.pm DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test)
379
380=== modified file 'Percona-Server/mysql-test/lib/My/SafeProcess/safe_process.cc'
381--- Percona-Server/mysql-test/lib/My/SafeProcess/safe_process.cc 2012-10-09 10:50:16 +0000
382+++ Percona-Server/mysql-test/lib/My/SafeProcess/safe_process.cc 2013-02-18 05:17:25 +0000
383@@ -152,15 +152,19 @@
384 pid_t own_pid= getpid();
385 pid_t parent_pid= getppid();
386 bool nocore = false;
387- struct sigaction sigchld_action;
388-
389- sigchld_action.sa_handler= handle_signal;
390- sigchld_action.sa_flags= SA_NOCLDSTOP;
391+ struct sigaction sa,sa_abort;
392+
393+ sa.sa_handler= handle_signal;
394+ sa.sa_flags= SA_NOCLDSTOP;
395+ sigemptyset(&sa.sa_mask);
396+
397+ sa_abort.sa_handler= handle_abort;
398+ sigemptyset(&sa_abort.sa_mask);
399 /* Install signal handlers */
400- signal(SIGTERM, handle_signal);
401- signal(SIGINT, handle_signal);
402- sigaction(SIGCHLD, &sigchld_action, NULL);
403- signal(SIGABRT, handle_abort);
404+ sigaction(SIGTERM, &sa,NULL);
405+ sigaction(SIGINT, &sa,NULL);
406+ sigaction(SIGCHLD, &sa,NULL);
407+ sigaction(SIGABRT, &sa_abort,NULL);
408
409 sprintf(safe_process_name, "safe_process[%ld]", (long) own_pid);
410
411
412=== removed file 'Percona-Server/mysql-test/lib/My/SafeProcess/safe_process.pl'
413--- Percona-Server/mysql-test/lib/My/SafeProcess/safe_process.pl 2011-07-03 23:48:19 +0000
414+++ Percona-Server/mysql-test/lib/My/SafeProcess/safe_process.pl 1970-01-01 00:00:00 +0000
415@@ -1,166 +0,0 @@
416-#!/usr/bin/perl
417-# -*- cperl -*-
418-
419-# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
420-#
421-# This program is free software; you can redistribute it and/or modify
422-# it under the terms of the GNU General Public License as published by
423-# the Free Software Foundation; version 2 of the License.
424-#
425-# This program is distributed in the hope that it will be useful,
426-# but WITHOUT ANY WARRANTY; without even the implied warranty of
427-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
428-# GNU General Public License for more details.
429-#
430-# You should have received a copy of the GNU General Public License
431-# along with this program; if not, write to the Free Software
432-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
433-
434-use strict;
435-use warnings;
436-
437-use lib 'lib';
438-use My::SafeProcess::Base;
439-use POSIX qw(WNOHANG);
440-
441-###########################################################################
442-# Util functions
443-###########################################################################
444-
445-#
446-#Print message to stderr
447-#
448-my $verbose= 0;
449-sub message {
450- if ($verbose > 0){
451- use Time::localtime;
452- my $tm= localtime();
453- my $timestamp= sprintf("%02d%02d%02d %2d:%02d:%02d",
454- $tm->year % 100, $tm->mon+1, $tm->mday,
455- $tm->hour, $tm->min, $tm->sec);
456- print STDERR $timestamp, " monitor[$$]: ", @_, "\n";
457- }
458-}
459-
460-
461-###########################################################################
462-# Main program
463-###########################################################################
464-
465-my $terminated= 0;
466-
467-# Protect against being killed in the middle
468-# of child creation, just set the terminated flag
469-# to make sure the child will be killed off
470-# when program is ready to do that
471-$SIG{TERM}= sub { message("!Got signal @_"); $terminated= 1; };
472-$SIG{INT}= sub { message("!Got signal @_"); $terminated= 1; };
473-
474-my $parent_pid= getppid();
475-
476-my $found_double_dash= 0;
477-while (my $arg= shift(@ARGV)){
478-
479- if ($arg =~ /^--$/){
480- $found_double_dash= 1;
481- last;
482- }
483- elsif ($arg =~ /^--verbose$/){
484- $verbose= 1;
485- }
486- else {
487- die "Unknown option: $arg";
488- }
489-}
490-
491-my $path= shift(@ARGV); # Executable
492-
493-die "usage:\n" .
494- " safe_process.pl [opts] -- <path> [<args> [...<args_n>]]"
495- unless defined $path || $found_double_dash;
496-
497-
498-message("started");
499-#message("path: '$path'");
500-message("parent: $parent_pid");
501-
502-# Start process to monitor
503-my $child_pid=
504- create_process(
505- path => $path,
506- args => \@ARGV,
507- setpgrp => 1,
508- );
509-message("Started child $child_pid");
510-
511-eval {
512- sub handle_signal {
513- $terminated= 1;
514- message("Got signal @_");
515-
516- # Ignore all signals
517- foreach my $name (keys %SIG){
518- $SIG{$name}= 'IGNORE';
519- }
520-
521- die "signaled\n";
522- };
523- local $SIG{TERM}= \&handle_signal;
524- local $SIG{INT}= \&handle_signal;
525- local $SIG{CHLD}= sub {
526- message("Got signal @_");
527- kill('KILL', -$child_pid);
528- my $ret= waitpid($child_pid, 0);
529- if ($? & 127){
530- exit(65); # Killed by signal
531- }
532- exit($? >> 8);
533- };
534-
535- # Monitoring loop
536- while(!$terminated) {
537-
538- # Check if parent is still alive
539- if (kill(0, $parent_pid) < 1){
540- message("Parent is not alive anymore");
541- last;
542- }
543-
544- # Wait for child to terminate but wakeup every
545- # second to also check that parent is still alive
546- my $ret_pid;
547- $ret_pid= waitpid($child_pid, &WNOHANG);
548- if ($ret_pid == $child_pid) {
549- # Process has exited, collect return status
550- my $ret_code= $? >> 8;
551- message("Child exit: $ret_code");
552- # Exit with exit status of the child
553- exit ($ret_code);
554- }
555- sleep(1);
556- }
557-};
558-if ( $@ ) {
559- # The monitoring loop should have been
560- # broken by handle_signal
561- warn "Unexpected: $@" unless ( $@ =~ /signaled/ );
562-}
563-
564-# Use negative pid in order to kill the whole
565-# process group
566-#
567-my $ret= kill('KILL', -$child_pid);
568-message("Killed child: $child_pid, ret: $ret");
569-if ($ret > 0) {
570- message("Killed child: $child_pid");
571- # Wait blocking for the child to return
572- my $ret_pid= waitpid($child_pid, 0);
573- if ($ret_pid != $child_pid){
574- message("unexpected pid $ret_pid returned from waitpid($child_pid)");
575- }
576-}
577-
578-message("DONE!");
579-exit (1);
580-
581-
582
583=== modified file 'Percona-Server/mysql-test/lib/mtr_cases.pm'
584--- Percona-Server/mysql-test/lib/mtr_cases.pm 2013-01-17 22:50:22 +0000
585+++ Percona-Server/mysql-test/lib/mtr_cases.pm 2013-02-18 05:17:25 +0000
586@@ -963,18 +963,11 @@
587 if ( $tinfo->{'ndb_test'} )
588 {
589 # This is a NDB test
590- if ( $::opt_skip_ndbcluster == 2 )
591- {
592- # Ndb is not supported, skip it
593- $tinfo->{'skip'}= 1;
594- $tinfo->{'comment'}= "No ndbcluster support or ndb tests not enabled";
595- return $tinfo;
596- }
597- elsif ( $::opt_skip_ndbcluster )
598- {
599- # All ndb test's should be skipped
600- $tinfo->{'skip'}= 1;
601- $tinfo->{'comment'}= "No ndbcluster tests(--skip-ndbcluster)";
602+ if ( $::ndbcluster_enabled == 0)
603+ {
604+ # ndbcluster is disabled
605+ $tinfo->{'skip'}= 1;
606+ $tinfo->{'comment'}= "ndbcluster disabled";
607 return $tinfo;
608 }
609 }
610
611=== modified file 'Percona-Server/mysql-test/lib/mtr_report.pm'
612--- Percona-Server/mysql-test/lib/mtr_report.pm 2012-05-10 07:49:14 +0000
613+++ Percona-Server/mysql-test/lib/mtr_report.pm 2013-02-18 05:17:25 +0000
614@@ -28,7 +28,7 @@
615 mtr_verbose_restart mtr_report_test_passed
616 mtr_report_test_skipped mtr_print
617 mtr_report_test_subunit
618- mtr_report_test);
619+ mtr_report_test isotime);
620
621 use mtr_match;
622 use Subunit;
623@@ -111,6 +111,8 @@
624 $tinfo->{'result'}= 'MTR_RES_PASSED';
625
626 mtr_report_test($tinfo);
627+
628+ resfile_global("endtime ", isotime (time));
629 }
630
631
632@@ -598,4 +600,12 @@
633 }
634
635
636+# Used by --result-file for for formatting times
637+
638+sub isotime($) {
639+ my ($sec,$min,$hr,$day,$mon,$yr)= gmtime($_[0]);
640+ return sprintf "%d-%02d-%02dT%02d:%02d:%02dZ",
641+ $yr+1900, $mon+1, $day, $hr, $min, $sec;
642+}
643+
644 1;
645
646=== modified file 'Percona-Server/mysql-test/mysql-test-run.pl'
647--- Percona-Server/mysql-test/mysql-test-run.pl 2013-01-09 23:45:25 +0000
648+++ Percona-Server/mysql-test/mysql-test-run.pl 2013-02-18 05:17:25 +0000
649@@ -312,8 +312,9 @@
650
651 our $opt_warnings= 1;
652
653-our $opt_include_ndbcluster= 0;
654-our $opt_skip_ndbcluster= 1;
655+our $ndbcluster_enabled= 0;
656+my $opt_include_ndbcluster= 0;
657+my $opt_skip_ndbcluster= 0;
658
659 my $exe_ndbd;
660 my $exe_ndbmtd;
661@@ -336,14 +337,6 @@
662 select(STDOUT);
663 $| = 1; # Automatically flush STDOUT
664
665-# Used by --result-file for for formatting times
666-
667-sub isotime($) {
668- my ($sec,$min,$hr,$day,$mon,$yr)= gmtime($_[0]);
669- return sprintf "%d-%02d-%02dT%02d:%02d:%02dZ",
670- $yr+1900, $mon+1, $day, $hr, $min, $sec;
671-}
672-
673 main();
674
675
676@@ -367,26 +360,6 @@
677
678 if (!$opt_suites) {
679 $opt_suites= $DEFAULT_SUITES;
680-
681- # Check for any extra suites to enable based on the path name
682- my %extra_suites=
683- (
684- "mysql-5.1-new-ndb" => "ndb_team",
685- "mysql-5.1-new-ndb-merge" => "ndb_team",
686- "mysql-5.1-telco-6.2" => "ndb_team",
687- "mysql-5.1-telco-6.2-merge" => "ndb_team",
688- "mysql-5.1-telco-6.3" => "ndb_team",
689- "mysql-6.0-ndb" => "ndb_team",
690- );
691-
692- foreach my $dir ( reverse splitdir($basedir) ) {
693- my $extra_suite= $extra_suites{$dir};
694- if (defined $extra_suite) {
695- mtr_report("Found extra suite: $extra_suite");
696- $opt_suites= "$extra_suite,$opt_suites";
697- last;
698- }
699- }
700 }
701 mtr_report("Using suites: $opt_suites") unless @opt_cases;
702
703@@ -410,7 +383,6 @@
704 unshift(@$tests, $tinfo);
705 }
706
707- print "vardir: $opt_vardir\n";
708 initialize_servers();
709
710 #######################################################################
711@@ -727,6 +699,10 @@
712 else {
713 mtr_report("\nRetrying test $tname, ".
714 "attempt($retries/$opt_retry)...\n");
715+ #saving the log file as filename.failed in case of retry
716+ my $worker_logdir= $result->{savedir};
717+ my $log_file_name=dirname($worker_logdir)."/".$result->{shortname}.".log";
718+ rename $log_file_name,$log_file_name.".failed";
719 delete($result->{result});
720 $result->{retries}= $retries+1;
721 $result->write_test($sock, 'TESTCASE');
722@@ -1073,7 +1049,7 @@
723 # Control what test suites or cases to run
724 'force' => \$opt_force,
725 'with-ndbcluster-only' => \&collect_option,
726- 'include-ndbcluster' => \$opt_include_ndbcluster,
727+ 'ndb|include-ndbcluster' => \$opt_include_ndbcluster,
728 'skip-ndbcluster|skip-ndb' => \$opt_skip_ndbcluster,
729 'suite|suites=s' => \$opt_suites,
730 'skip-rpl' => \&collect_option,
731@@ -1523,7 +1499,6 @@
732 }
733 $ENV{'PATH'}= "$ENV{'PATH'}".$separator.$lib_mysqld;
734 }
735- $opt_skip_ndbcluster= 1; # Turn off use of NDB cluster
736 $opt_skip_ssl= 1; # Turn off use of SSL
737
738 # Turn off use of bin log
739@@ -2010,7 +1985,7 @@
740
741 $exe_mysql_embedded= mtr_exe_maybe_exists("$basedir/libmysqld/examples/mysql_embedded");
742
743- if ( ! $opt_skip_ndbcluster )
744+ if ( $ndbcluster_enabled )
745 {
746 # Look for single threaded NDB
747 $exe_ndbd=
748@@ -2281,7 +2256,7 @@
749 # --------------------------------------------------------------------------
750 # Add the path where libndbclient can be found
751 # --------------------------------------------------------------------------
752- if ( !$opt_skip_ndbcluster )
753+ if ( $ndbcluster_enabled )
754 {
755 push(@ld_library_paths, "$basedir/storage/ndb/src/.libs");
756 }
757@@ -2369,7 +2344,7 @@
758 # ----------------------------------------------------
759 # Setup env for NDB
760 # ----------------------------------------------------
761- if ( ! $opt_skip_ndbcluster )
762+ if ( $ndbcluster_enabled )
763 {
764 $ENV{'NDB_MGM'}=
765 my_find_bin($bindir,
766@@ -2764,37 +2739,87 @@
767 sub check_ndbcluster_support ($) {
768 my $mysqld_variables= shift;
769
770+ my $ndbcluster_supported = 0;
771+ if ($mysqld_variables{'ndb-connectstring'})
772+ {
773+ $ndbcluster_supported = 1;
774+ }
775+
776+ if ($opt_skip_ndbcluster && $opt_include_ndbcluster)
777+ {
778+ # User is ambivalent. Theoretically the arg which was
779+ # given last on command line should win, but that order is
780+ # unknown at this time.
781+ mtr_error("Ambigous command, both --include-ndbcluster " .
782+ " and --skip-ndbcluster was specified");
783+ }
784+
785 # Check if this is MySQL Cluster, ie. mysql version string ends
786 # with -ndb-Y.Y.Y[-status]
787 if ( defined $mysql_version_extra &&
788- $mysql_version_extra =~ /^-ndb-/ )
789- {
790- mtr_report(" - MySQL Cluster");
791- # Enable ndb engine and add more test suites
792- $opt_include_ndbcluster = 1;
793- $DEFAULT_SUITES.=",ndb";
794- }
795-
796- if ($opt_include_ndbcluster)
797- {
798- $opt_skip_ndbcluster= 0;
799- }
800-
801- if ($opt_skip_ndbcluster)
802- {
803- mtr_report(" - skipping ndbcluster");
804- return;
805- }
806-
807- if ( ! $mysqld_variables{'ndb-connectstring'} )
808- {
809- mtr_report(" - skipping ndbcluster, mysqld not compiled with ndbcluster");
810- $opt_skip_ndbcluster= 2;
811- return;
812- }
813-
814- mtr_report(" - using ndbcluster when necessary, mysqld supports it");
815-
816+ $mysql_version_extra =~ /-ndb-([0-9]*)\.([0-9]*)\.([0-9]*)/ )
817+ {
818+ # MySQL Cluster tree
819+ mtr_report(" - MySQL Cluster detected");
820+
821+ if ($opt_skip_ndbcluster)
822+ {
823+ mtr_report(" - skipping ndbcluster(--skip-ndbcluster)");
824+ return;
825+ }
826+
827+ if (!$ndbcluster_supported)
828+ {
829+ # MySQL Cluster tree, but mysqld was not compiled with
830+ # ndbcluster -> fail unless --skip-ndbcluster was used
831+ mtr_error("This is MySQL Cluster but mysqld does not " .
832+ "support ndbcluster. Use --skip-ndbcluster to " .
833+ "force mtr to run without it.");
834+ }
835+
836+ # mysqld was compiled with ndbcluster -> auto enable
837+ }
838+ else
839+ {
840+ # Not a MySQL Cluster tree
841+ if (!$ndbcluster_supported)
842+ {
843+ if ($opt_include_ndbcluster)
844+ {
845+ mtr_error("Could not detect ndbcluster support ".
846+ "requested with --include-ndbcluster");
847+ }
848+
849+ # Silently skip, mysqld was compiled without ndbcluster
850+ # which is the default case
851+ return;
852+ }
853+
854+ if ($opt_skip_ndbcluster)
855+ {
856+ # Compiled with ndbcluster but ndbcluster skipped
857+ mtr_report(" - skipping ndbcluster(--skip-ndbcluster)");
858+ return;
859+ }
860+
861+
862+ # Not a MySQL Cluster tree, enable ndbcluster
863+ # if --include-ndbcluster was used
864+ if ($opt_include_ndbcluster)
865+ {
866+ # enable ndbcluster
867+ }
868+ else
869+ {
870+ mtr_report(" - skipping ndbcluster(disabled by default)");
871+ return;
872+ }
873+ }
874+
875+ mtr_report(" - enabling ndbcluster");
876+ $ndbcluster_enabled= 1;
877+ # Add MySQL Cluster test suites
878+ $DEFAULT_SUITES.=",ndb,ndb_binlog,rpl_ndb,ndb_rpl,ndb_memcache";
879 return;
880 }
881
882
883=== modified file 'Percona-Server/mysql-test/r/ddl_i18n_koi8r.result'
884--- Percona-Server/mysql-test/r/ddl_i18n_koi8r.result 2011-02-22 14:02:49 +0000
885+++ Percona-Server/mysql-test/r/ddl_i18n_koi8r.result 2013-02-18 05:17:25 +0000
886@@ -734,7 +734,7 @@
887 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
888 /*!50003 SET sql_mode = '' */ ;
889 DELIMITER ;;
890-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p1`(
891+CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`(
892 INOUT ÐÁÒÁÍ1 CHAR(10),
893 OUT ÐÁÒÁÍ2 CHAR(10))
894 BEGIN
895@@ -751,7 +751,7 @@
896 @@character_set_client AS c8;
897 SET ÐÁÒÁÍ1 = 'a';
898 SET ÐÁÒÁÍ2 = 'b';
899-END */;;
900+END ;;
901 DELIMITER ;
902 /*!50003 SET sql_mode = @saved_sql_mode */ ;
903 /*!50003 SET character_set_client = @saved_cs_client */ ;
904@@ -768,7 +768,7 @@
905 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
906 /*!50003 SET sql_mode = '' */ ;
907 DELIMITER ;;
908-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p2`(
909+CREATE DEFINER=`root`@`localhost` PROCEDURE `p2`(
910 INOUT ÐÁÒÁÍ1 CHAR(10) CHARACTER SET utf8,
911 OUT ÐÁÒÁÍ2 CHAR(10) CHARACTER SET utf8)
912 BEGIN
913@@ -785,7 +785,7 @@
914 @@character_set_client AS c8;
915 SET ÐÁÒÁÍ1 = 'a';
916 SET ÐÁÒÁÍ2 = 'b';
917-END */;;
918+END ;;
919 DELIMITER ;
920 /*!50003 SET sql_mode = @saved_sql_mode */ ;
921 /*!50003 SET character_set_client = @saved_cs_client */ ;
922@@ -810,7 +810,7 @@
923 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
924 /*!50003 SET sql_mode = '' */ ;
925 DELIMITER ;;
926-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p3`(
927+CREATE DEFINER=`root`@`localhost` PROCEDURE `p3`(
928 INOUT ÐÁÒÁÍ1 CHAR(10),
929 OUT ÐÁÒÁÍ2 CHAR(10))
930 BEGIN
931@@ -827,7 +827,7 @@
932 @@character_set_client AS c8;
933 SET ÐÁÒÁÍ1 = 'a';
934 SET ÐÁÒÁÍ2 = 'b';
935-END */;;
936+END ;;
937 DELIMITER ;
938 /*!50003 SET sql_mode = @saved_sql_mode */ ;
939 /*!50003 SET character_set_client = @saved_cs_client */ ;
940@@ -844,7 +844,7 @@
941 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
942 /*!50003 SET sql_mode = '' */ ;
943 DELIMITER ;;
944-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p4`(
945+CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`(
946 INOUT ÐÁÒÁÍ1 CHAR(10) CHARACTER SET utf8,
947 OUT ÐÁÒÁÍ2 CHAR(10) CHARACTER SET utf8)
948 BEGIN
949@@ -861,7 +861,7 @@
950 @@character_set_client AS c8;
951 SET ÐÁÒÁÍ1 = 'a';
952 SET ÐÁÒÁÍ2 = 'b';
953-END */;;
954+END ;;
955 DELIMITER ;
956 /*!50003 SET sql_mode = @saved_sql_mode */ ;
957 /*!50003 SET character_set_client = @saved_cs_client */ ;
958
959=== modified file 'Percona-Server/mysql-test/r/ddl_i18n_utf8.result'
960--- Percona-Server/mysql-test/r/ddl_i18n_utf8.result 2011-02-22 14:02:49 +0000
961+++ Percona-Server/mysql-test/r/ddl_i18n_utf8.result 2013-02-18 05:17:25 +0000
962@@ -734,7 +734,7 @@
963 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
964 /*!50003 SET sql_mode = '' */ ;
965 DELIMITER ;;
966-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p1`(
967+CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`(
968 INOUT парам1 CHAR(10),
969 OUT парам2 CHAR(10))
970 BEGIN
971@@ -751,7 +751,7 @@
972 @@character_set_client AS c8;
973 SET парам1 = 'a';
974 SET парам2 = 'b';
975-END */;;
976+END ;;
977 DELIMITER ;
978 /*!50003 SET sql_mode = @saved_sql_mode */ ;
979 /*!50003 SET character_set_client = @saved_cs_client */ ;
980@@ -768,7 +768,7 @@
981 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
982 /*!50003 SET sql_mode = '' */ ;
983 DELIMITER ;;
984-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p2`(
985+CREATE DEFINER=`root`@`localhost` PROCEDURE `p2`(
986 INOUT парам1 CHAR(10) CHARACTER SET utf8,
987 OUT парам2 CHAR(10) CHARACTER SET utf8)
988 BEGIN
989@@ -785,7 +785,7 @@
990 @@character_set_client AS c8;
991 SET парам1 = 'a';
992 SET парам2 = 'b';
993-END */;;
994+END ;;
995 DELIMITER ;
996 /*!50003 SET sql_mode = @saved_sql_mode */ ;
997 /*!50003 SET character_set_client = @saved_cs_client */ ;
998@@ -810,7 +810,7 @@
999 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
1000 /*!50003 SET sql_mode = '' */ ;
1001 DELIMITER ;;
1002-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p3`(
1003+CREATE DEFINER=`root`@`localhost` PROCEDURE `p3`(
1004 INOUT парам1 CHAR(10),
1005 OUT парам2 CHAR(10))
1006 BEGIN
1007@@ -827,7 +827,7 @@
1008 @@character_set_client AS c8;
1009 SET парам1 = 'a';
1010 SET парам2 = 'b';
1011-END */;;
1012+END ;;
1013 DELIMITER ;
1014 /*!50003 SET sql_mode = @saved_sql_mode */ ;
1015 /*!50003 SET character_set_client = @saved_cs_client */ ;
1016@@ -844,7 +844,7 @@
1017 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
1018 /*!50003 SET sql_mode = '' */ ;
1019 DELIMITER ;;
1020-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `p4`(
1021+CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`(
1022 INOUT парам1 CHAR(10) CHARACTER SET utf8,
1023 OUT парам2 CHAR(10) CHARACTER SET utf8)
1024 BEGIN
1025@@ -861,7 +861,7 @@
1026 @@character_set_client AS c8;
1027 SET парам1 = 'a';
1028 SET парам2 = 'b';
1029-END */;;
1030+END ;;
1031 DELIMITER ;
1032 /*!50003 SET sql_mode = @saved_sql_mode */ ;
1033 /*!50003 SET character_set_client = @saved_cs_client */ ;
1034
1035=== modified file 'Percona-Server/mysql-test/r/group_min_max_innodb.result'
1036--- Percona-Server/mysql-test/r/group_min_max_innodb.result 2011-10-19 12:07:14 +0000
1037+++ Percona-Server/mysql-test/r/group_min_max_innodb.result 2013-02-18 05:17:25 +0000
1038@@ -70,7 +70,7 @@
1039 1 SIMPLE t1 index NULL PRIMARY 5 NULL 4 Using index; Using temporary
1040 explain select distinct f1, f2 from t1;
1041 id select_type table type possible_keys key key_len ref rows Extra
1042-1 SIMPLE t1 range NULL PRIMARY 5 NULL 3 Using index for group-by; Using temporary
1043+1 SIMPLE t1 index NULL PRIMARY 5 NULL 4 Using index
1044 drop table t1;
1045 create table t1(pk int primary key) engine=innodb;
1046 create view v1 as select pk from t1 where pk < 20;
1047
1048=== modified file 'Percona-Server/mysql-test/r/mysqlbinlog.result'
1049--- Percona-Server/mysql-test/r/mysqlbinlog.result 2013-01-09 23:45:25 +0000
1050+++ Percona-Server/mysql-test/r/mysqlbinlog.result 2013-02-18 05:17:25 +0000
1051@@ -14,6 +14,7 @@
1052 flush logs;
1053
1054 --- Local --
1055+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1056 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1057 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1058 DELIMITER /*!*/;
1059@@ -95,8 +96,10 @@
1060 # End of log file
1061 ROLLBACK /* added by mysqlbinlog */;
1062 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1063+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1064
1065 --- Broken LOAD DATA --
1066+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1067 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1068 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1069 DELIMITER /*!*/;
1070@@ -131,8 +134,10 @@
1071 # End of log file
1072 ROLLBACK /* added by mysqlbinlog */;
1073 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1074+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1075
1076 --- --database --
1077+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1078 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1079 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1080 DELIMITER /*!*/;
1081@@ -186,8 +191,10 @@
1082 # End of log file
1083 ROLLBACK /* added by mysqlbinlog */;
1084 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1085+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1086
1087 --- --start-position --
1088+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1089 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1090 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1091 DELIMITER /*!*/;
1092@@ -213,8 +220,10 @@
1093 # End of log file
1094 ROLLBACK /* added by mysqlbinlog */;
1095 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1096+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1097
1098 --- Remote --
1099+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1100 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1101 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1102 DELIMITER /*!*/;
1103@@ -296,8 +305,10 @@
1104 # End of log file
1105 ROLLBACK /* added by mysqlbinlog */;
1106 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1107+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1108
1109 --- Broken LOAD DATA --
1110+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1111 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1112 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1113 DELIMITER /*!*/;
1114@@ -332,8 +343,10 @@
1115 # End of log file
1116 ROLLBACK /* added by mysqlbinlog */;
1117 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1118+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1119
1120 --- --database --
1121+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1122 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1123 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1124 DELIMITER /*!*/;
1125@@ -387,8 +400,10 @@
1126 # End of log file
1127 ROLLBACK /* added by mysqlbinlog */;
1128 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1129+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1130
1131 --- --start-position --
1132+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1133 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1134 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1135 DELIMITER /*!*/;
1136@@ -414,8 +429,10 @@
1137 # End of log file
1138 ROLLBACK /* added by mysqlbinlog */;
1139 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1140+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1141
1142 --- reading stdin --
1143+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1144 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1145 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1146 DELIMITER /*!*/;
1147@@ -435,6 +452,8 @@
1148 # End of log file
1149 ROLLBACK /* added by mysqlbinlog */;
1150 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1151+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1152+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1153 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1154 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1155 DELIMITER /*!*/;
1156@@ -453,6 +472,7 @@
1157 # End of log file
1158 ROLLBACK /* added by mysqlbinlog */;
1159 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1160+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1161 drop table t1,t2;
1162 flush logs;
1163 flush logs;
1164@@ -495,6 +515,7 @@
1165 drop procedure p1;
1166 call p1();
1167 ERROR 42000: PROCEDURE test.p1 does not exist
1168+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1169 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1170 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1171 DELIMITER /*!*/;
1172@@ -517,6 +538,7 @@
1173 # End of log file
1174 ROLLBACK /* added by mysqlbinlog */;
1175 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1176+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1177 call p1();
1178 1
1179 1
1180@@ -545,6 +567,7 @@
1181 D0AA
1182 drop table t1;
1183 flush logs;
1184+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1185 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1186 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1187 DELIMITER /*!*/;
1188@@ -634,6 +657,7 @@
1189 # End of log file
1190 ROLLBACK /* added by mysqlbinlog */;
1191 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1192+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1193 CREATE TABLE t1 (c1 CHAR(10));
1194 FLUSH LOGS;
1195 INSERT INTO t1 VALUES ('0123456789');
1196@@ -721,6 +745,7 @@
1197 FLUSH LOGS;
1198 #
1199 # Test if the 'BEGIN', 'ROLLBACK' and 'COMMIT' are output if the database specified exists
1200+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1201 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1202 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1203 DELIMITER /*!*/;
1204@@ -772,8 +797,10 @@
1205 # End of log file
1206 ROLLBACK /* added by mysqlbinlog */;
1207 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1208+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1209 #
1210 # Test if the 'BEGIN', 'ROLLBACK' and 'COMMIT' are output if the database specified does not exist
1211+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1212 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1213 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1214 DELIMITER /*!*/;
1215@@ -806,8 +833,10 @@
1216 # End of log file
1217 ROLLBACK /* added by mysqlbinlog */;
1218 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1219+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1220 #
1221 # Test if the 'SAVEPOINT', 'ROLLBACK TO' are output if the database specified exists
1222+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1223 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1224 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1225 DELIMITER /*!*/;
1226@@ -849,8 +878,10 @@
1227 # End of log file
1228 ROLLBACK /* added by mysqlbinlog */;
1229 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1230+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1231 #
1232 # Test if the 'SAVEPOINT', 'ROLLBACK TO' are output if the database specified does not exist
1233+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1234 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1235 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1236 DELIMITER /*!*/;
1237@@ -877,6 +908,7 @@
1238 # End of log file
1239 ROLLBACK /* added by mysqlbinlog */;
1240 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1241+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1242 End of 5.0 tests
1243 End of 5.1 tests
1244 # Expect deprecation warning.
1245
1246=== modified file 'Percona-Server/mysql-test/r/mysqldump.result'
1247--- Percona-Server/mysql-test/r/mysqldump.result 2012-11-28 05:09:57 +0000
1248+++ Percona-Server/mysql-test/r/mysqldump.result 2013-02-18 05:17:25 +0000
1249@@ -2706,8 +2706,8 @@
1250 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
1251 /*!50003 SET sql_mode = '' */ ;
1252 DELIMITER ;;
1253-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 FUNCTION `bug9056_func1`(a INT, b INT) RETURNS int(11)
1254-RETURN a+b */;;
1255+CREATE DEFINER=`root`@`localhost` FUNCTION `bug9056_func1`(a INT, b INT) RETURNS int(11)
1256+RETURN a+b ;;
1257 DELIMITER ;
1258 /*!50003 SET sql_mode = @saved_sql_mode */ ;
1259 /*!50003 SET character_set_client = @saved_cs_client */ ;
1260@@ -2723,11 +2723,11 @@
1261 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
1262 /*!50003 SET sql_mode = '' */ ;
1263 DELIMITER ;;
1264-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 FUNCTION `bug9056_func2`(f1 char binary) RETURNS char(1) CHARSET latin1
1265+CREATE DEFINER=`root`@`localhost` FUNCTION `bug9056_func2`(f1 char binary) RETURNS char(1) CHARSET latin1
1266 begin
1267 set f1= concat( 'hello', f1 );
1268 return f1;
1269-end */;;
1270+end ;;
1271 DELIMITER ;
1272 /*!50003 SET sql_mode = @saved_sql_mode */ ;
1273 /*!50003 SET character_set_client = @saved_cs_client */ ;
1274@@ -2743,8 +2743,8 @@
1275 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
1276 /*!50003 SET sql_mode = 'REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI' */ ;
1277 DELIMITER ;;
1278-/*!50003 CREATE*/ /*!50020 DEFINER="root"@"localhost"*/ /*!50003 PROCEDURE "a'b"()
1279-select 1 */;;
1280+CREATE DEFINER="root"@"localhost" PROCEDURE "a'b"()
1281+select 1 ;;
1282 DELIMITER ;
1283 /*!50003 SET sql_mode = @saved_sql_mode */ ;
1284 /*!50003 SET character_set_client = @saved_cs_client */ ;
1285@@ -2760,8 +2760,8 @@
1286 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
1287 /*!50003 SET sql_mode = '' */ ;
1288 DELIMITER ;;
1289-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `bug9056_proc1`(IN a INT, IN b INT, OUT c INT)
1290-BEGIN SELECT a+b INTO c; end */;;
1291+CREATE DEFINER=`root`@`localhost` PROCEDURE `bug9056_proc1`(IN a INT, IN b INT, OUT c INT)
1292+BEGIN SELECT a+b INTO c; end ;;
1293 DELIMITER ;
1294 /*!50003 SET sql_mode = @saved_sql_mode */ ;
1295 /*!50003 SET character_set_client = @saved_cs_client */ ;
1296@@ -2777,10 +2777,10 @@
1297 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
1298 /*!50003 SET sql_mode = '' */ ;
1299 DELIMITER ;;
1300-/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `bug9056_proc2`(OUT a INT)
1301+CREATE DEFINER=`root`@`localhost` PROCEDURE `bug9056_proc2`(OUT a INT)
1302 BEGIN
1303 select sum(id) from t1 into a;
1304-END */;;
1305+END ;;
1306 DELIMITER ;
1307 /*!50003 SET sql_mode = @saved_sql_mode */ ;
1308 /*!50003 SET character_set_client = @saved_cs_client */ ;
1309@@ -3766,8 +3766,8 @@
1310 /*!50003 SET @saved_sql_mode = @@sql_mode */ ;
1311 /*!50003 SET sql_mode = '' */ ;
1312 DELIMITER ;;
1313-/*!50003 CREATE*/ /*!50020 DEFINER=`user1`@`%`*/ /*!50003 PROCEDURE `sp1`()
1314-select 'hello' */;;
1315+CREATE DEFINER=`user1`@`%` PROCEDURE `sp1`()
1316+select 'hello' ;;
1317 DELIMITER ;
1318 /*!50003 SET sql_mode = @saved_sql_mode */ ;
1319 /*!50003 SET character_set_client = @saved_cs_client */ ;
1320@@ -5115,9 +5115,82 @@
1321 # Note : In the following dump the transaction
1322 # should start only after the logs are
1323 # flushed, as 'flush logs' causes implicit
1324-# commit starting 5.5.
1325+# commit starting 5.5.Also, as stderr is
1326+# unbuffered, it is redirected to a different
1327+# file to avoid diffs due to bad stdout/stderr
1328+# order in the output.
1329
1330 #### Dump starts here ####
1331+--
1332+-- Host: localhost Database: b12809202_db
1333+-- ------------------------------------------------------
1334+
1335+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
1336+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
1337+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
1338+/*!40101 SET NAMES utf8 */;
1339+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
1340+/*!40103 SET TIME_ZONE='+00:00' */;
1341+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
1342+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
1343+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
1344+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
1345+
1346+--
1347+-- Table structure for table `t1`
1348+--
1349+
1350+DROP TABLE IF EXISTS `t1`;
1351+/*!40101 SET @saved_cs_client = @@character_set_client */;
1352+/*!40101 SET character_set_client = utf8 */;
1353+CREATE TABLE `t1` (
1354+ `c1` int(11) DEFAULT NULL
1355+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
1356+/*!40101 SET character_set_client = @saved_cs_client */;
1357+
1358+--
1359+-- Dumping data for table `t1`
1360+--
1361+
1362+LOCK TABLES `t1` WRITE;
1363+/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
1364+INSERT INTO `t1` VALUES (1),(2),(3);
1365+/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
1366+UNLOCK TABLES;
1367+
1368+--
1369+-- Table structure for table `t2`
1370+--
1371+
1372+DROP TABLE IF EXISTS `t2`;
1373+/*!40101 SET @saved_cs_client = @@character_set_client */;
1374+/*!40101 SET character_set_client = utf8 */;
1375+CREATE TABLE `t2` (
1376+ `c1` int(11) DEFAULT NULL
1377+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
1378+/*!40101 SET character_set_client = @saved_cs_client */;
1379+
1380+--
1381+-- Dumping data for table `t2`
1382+--
1383+
1384+LOCK TABLES `t2` WRITE;
1385+/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
1386+INSERT INTO `t2` VALUES (1),(2),(3);
1387+/*!40000 ALTER TABLE `t2` ENABLE KEYS */;
1388+UNLOCK TABLES;
1389+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
1390+
1391+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
1392+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
1393+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
1394+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
1395+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
1396+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
1397+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
1398+
1399+-- Dump completed
1400+## stderr ##
1401 -- Connecting to localhost...
1402 -- main : logs flushed successfully!
1403 -- Starting transaction...
1404
1405=== modified file 'Percona-Server/mysql-test/r/percona_innodb_version.result'
1406--- Percona-Server/mysql-test/r/percona_innodb_version.result 2012-04-18 23:26:42 +0000
1407+++ Percona-Server/mysql-test/r/percona_innodb_version.result 2013-02-18 05:17:25 +0000
1408@@ -1,3 +1,3 @@
1409 SELECT @@innodb_version;
1410 @@innodb_version
1411-1.1.x-x.x
1412+5.5.x-x.x
1413
1414=== modified file 'Percona-Server/mysql-test/r/percona_server_variables_debug.result'
1415--- Percona-Server/mysql-test/r/percona_server_variables_debug.result 2013-01-30 09:55:26 +0000
1416+++ Percona-Server/mysql-test/r/percona_server_variables_debug.result 2013-02-18 05:17:25 +0000
1417@@ -127,6 +127,7 @@
1418 INNODB_KILL_IDLE_TRANSACTION
1419 INNODB_LARGE_PREFIX
1420 INNODB_LAZY_DROP_TABLE
1421+INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG
1422 INNODB_LOCKING_FAKE_CHANGES
1423 INNODB_LOCKS_UNSAFE_FOR_BINLOG
1424 INNODB_LOCK_WAIT_TIMEOUT
1425@@ -146,6 +147,7 @@
1426 INNODB_OPEN_FILES
1427 INNODB_PAGE_SIZE
1428 INNODB_PERSISTENT_STATS_ROOT_PAGE
1429+INNODB_PRINT_ALL_DEADLOCKS
1430 INNODB_PURGE_BATCH_SIZE
1431 INNODB_PURGE_THREADS
1432 INNODB_RANDOM_READ_AHEAD
1433@@ -173,6 +175,7 @@
1434 INNODB_THREAD_CONCURRENCY_TIMER_BASED
1435 INNODB_THREAD_SLEEP_DELAY
1436 INNODB_TRACK_CHANGED_PAGES
1437+INNODB_TRX_PURGE_VIEW_UPDATE_ONLY_DEBUG
1438 INNODB_TRX_RSEG_N_SLOTS_DEBUG
1439 INNODB_USE_GLOBAL_FLUSH_LOG_AT_TRX_COMMIT
1440 INNODB_USE_NATIVE_AIO
1441@@ -290,6 +293,7 @@
1442 PROFILING_HISTORY_SIZE
1443 PROTOCOL_VERSION
1444 PROXY_USER
1445+PSEUDO_SLAVE_MODE
1446 PSEUDO_THREAD_ID
1447 QUERY_ALLOC_BLOCK_SIZE
1448 QUERY_CACHE_LIMIT
1449
1450=== modified file 'Percona-Server/mysql-test/r/percona_server_variables_release.result'
1451--- Percona-Server/mysql-test/r/percona_server_variables_release.result 2013-01-30 09:55:26 +0000
1452+++ Percona-Server/mysql-test/r/percona_server_variables_release.result 2013-02-18 05:17:25 +0000
1453@@ -142,6 +142,7 @@
1454 INNODB_OLD_BLOCKS_TIME
1455 INNODB_OPEN_FILES
1456 INNODB_PAGE_SIZE
1457+INNODB_PRINT_ALL_DEADLOCKS
1458 INNODB_PURGE_BATCH_SIZE
1459 INNODB_PURGE_THREADS
1460 INNODB_RANDOM_READ_AHEAD
1461@@ -285,6 +286,7 @@
1462 PROFILING_HISTORY_SIZE
1463 PROTOCOL_VERSION
1464 PROXY_USER
1465+PSEUDO_SLAVE_MODE
1466 PSEUDO_THREAD_ID
1467 QUERY_ALLOC_BLOCK_SIZE
1468 QUERY_CACHE_LIMIT
1469
1470=== modified file 'Percona-Server/mysql-test/r/user_var-binlog.result'
1471--- Percona-Server/mysql-test/r/user_var-binlog.result 2013-01-09 23:45:25 +0000
1472+++ Percona-Server/mysql-test/r/user_var-binlog.result 2013-02-18 05:17:25 +0000
1473@@ -18,6 +18,7 @@
1474 master-bin.000001 # Query # # use `test`; insert into t1 values (@var1),(@var2)
1475 master-bin.000001 # Query # # COMMIT
1476 flush logs;
1477+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1478 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1479 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1480 DELIMITER /*!*/;
1481@@ -56,4 +57,5 @@
1482 # End of log file
1483 ROLLBACK /* added by mysqlbinlog */;
1484 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1485+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1486 drop table t1;
1487
1488=== modified file 'Percona-Server/mysql-test/suite/binlog/r/binlog_base64_flag.result'
1489--- Percona-Server/mysql-test/suite/binlog/r/binlog_base64_flag.result 2013-01-09 23:45:25 +0000
1490+++ Percona-Server/mysql-test/suite/binlog/r/binlog_base64_flag.result 2013-02-18 05:17:25 +0000
1491@@ -29,6 +29,7 @@
1492 1
1493 3
1494 ==== Test --base64-output=never on a binlog with row events ====
1495+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1496 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1497 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1498 DELIMITER /*!*/;
1499@@ -51,6 +52,7 @@
1500 # End of log file
1501 ROLLBACK /* added by mysqlbinlog */;
1502 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1503+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1504 ==== Test non-matching FD event and Row event ====
1505 BINLOG '
1506 4CdYRw8BAAAAYgAAAGYAAAAAAAQANS4xLjE1LW5kYi02LjEuMjQtZGVidWctbG9nAAAAAAAAAAAA
1507
1508=== modified file 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog2.result'
1509--- Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog2.result 2013-01-09 23:45:25 +0000
1510+++ Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog2.result 2013-02-18 05:17:25 +0000
1511@@ -15,6 +15,7 @@
1512 insert into t1 values(null, "f");
1513
1514 --- Local --
1515+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1516 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1517 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1518 DELIMITER /*!*/;
1519@@ -85,8 +86,10 @@
1520 # End of log file
1521 ROLLBACK /* added by mysqlbinlog */;
1522 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1523+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1524
1525 --- offset --
1526+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1527 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1528 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1529 DELIMITER /*!*/;
1530@@ -154,8 +157,10 @@
1531 # End of log file
1532 ROLLBACK /* added by mysqlbinlog */;
1533 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1534+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1535
1536 --- start-position --
1537+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1538 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1539 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1540 DELIMITER /*!*/;
1541@@ -203,8 +208,10 @@
1542 # End of log file
1543 ROLLBACK /* added by mysqlbinlog */;
1544 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1545+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1546
1547 --- stop-position --
1548+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1549 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1550 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1551 DELIMITER /*!*/;
1552@@ -245,8 +252,10 @@
1553 # End of log file
1554 ROLLBACK /* added by mysqlbinlog */;
1555 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1556+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1557
1558 --- start and stop positions ---
1559+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1560 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1561 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1562 DELIMITER /*!*/;
1563@@ -271,8 +280,10 @@
1564 # End of log file
1565 ROLLBACK /* added by mysqlbinlog */;
1566 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1567+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1568
1569 --- start-datetime --
1570+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1571 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1572 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1573 DELIMITER /*!*/;
1574@@ -320,8 +331,10 @@
1575 # End of log file
1576 ROLLBACK /* added by mysqlbinlog */;
1577 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1578+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1579
1580 --- stop-datetime --
1581+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1582 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1583 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1584 DELIMITER /*!*/;
1585@@ -362,9 +375,11 @@
1586 # End of log file
1587 ROLLBACK /* added by mysqlbinlog */;
1588 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1589+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1590
1591 --- Local with 2 binlogs on command line --
1592 flush logs;
1593+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1594 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1595 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1596 DELIMITER /*!*/;
1597@@ -456,8 +471,10 @@
1598 # End of log file
1599 ROLLBACK /* added by mysqlbinlog */;
1600 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1601+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1602
1603 --- offset --
1604+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1605 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1606 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1607 DELIMITER /*!*/;
1608@@ -546,8 +563,10 @@
1609 # End of log file
1610 ROLLBACK /* added by mysqlbinlog */;
1611 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1612+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1613
1614 --- start-position --
1615+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1616 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1617 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1618 DELIMITER /*!*/;
1619@@ -616,8 +635,10 @@
1620 # End of log file
1621 ROLLBACK /* added by mysqlbinlog */;
1622 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1623+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1624
1625 --- stop-position --
1626+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1627 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1628 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1629 DELIMITER /*!*/;
1630@@ -702,8 +723,10 @@
1631 # End of log file
1632 ROLLBACK /* added by mysqlbinlog */;
1633 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1634+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1635
1636 --- start-datetime --
1637+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1638 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1639 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1640 DELIMITER /*!*/;
1641@@ -772,8 +795,10 @@
1642 # End of log file
1643 ROLLBACK /* added by mysqlbinlog */;
1644 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1645+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1646
1647 --- stop-datetime --
1648+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1649 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1650 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1651 DELIMITER /*!*/;
1652@@ -814,8 +839,10 @@
1653 # End of log file
1654 ROLLBACK /* added by mysqlbinlog */;
1655 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1656+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1657
1658 --- Remote --
1659+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1660 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1661 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1662 DELIMITER /*!*/;
1663@@ -886,8 +913,10 @@
1664 # End of log file
1665 ROLLBACK /* added by mysqlbinlog */;
1666 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1667+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1668
1669 --- offset --
1670+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1671 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1672 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1673 DELIMITER /*!*/;
1674@@ -955,8 +984,10 @@
1675 # End of log file
1676 ROLLBACK /* added by mysqlbinlog */;
1677 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1678+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1679
1680 --- start-position --
1681+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1682 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1683 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1684 DELIMITER /*!*/;
1685@@ -1003,8 +1034,10 @@
1686 # End of log file
1687 ROLLBACK /* added by mysqlbinlog */;
1688 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1689+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1690
1691 --- stop-position --
1692+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1693 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1694 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1695 DELIMITER /*!*/;
1696@@ -1045,8 +1078,10 @@
1697 # End of log file
1698 ROLLBACK /* added by mysqlbinlog */;
1699 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1700+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1701
1702 --- start and stop positions ---
1703+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1704 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1705 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1706 DELIMITER /*!*/;
1707@@ -1070,8 +1105,10 @@
1708 # End of log file
1709 ROLLBACK /* added by mysqlbinlog */;
1710 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1711+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1712
1713 --- start-datetime --
1714+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1715 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1716 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1717 DELIMITER /*!*/;
1718@@ -1119,8 +1156,10 @@
1719 # End of log file
1720 ROLLBACK /* added by mysqlbinlog */;
1721 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1722+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1723
1724 --- stop-datetime --
1725+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1726 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1727 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1728 DELIMITER /*!*/;
1729@@ -1161,8 +1200,10 @@
1730 # End of log file
1731 ROLLBACK /* added by mysqlbinlog */;
1732 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1733+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1734
1735 --- Remote with 2 binlogs on command line --
1736+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1737 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1738 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1739 DELIMITER /*!*/;
1740@@ -1254,8 +1295,10 @@
1741 # End of log file
1742 ROLLBACK /* added by mysqlbinlog */;
1743 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1744+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1745
1746 --- offset --
1747+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1748 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1749 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1750 DELIMITER /*!*/;
1751@@ -1344,8 +1387,10 @@
1752 # End of log file
1753 ROLLBACK /* added by mysqlbinlog */;
1754 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1755+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1756
1757 --- start-position --
1758+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1759 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1760 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1761 DELIMITER /*!*/;
1762@@ -1413,8 +1458,10 @@
1763 # End of log file
1764 ROLLBACK /* added by mysqlbinlog */;
1765 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1766+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1767
1768 --- stop-position --
1769+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1770 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1771 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1772 DELIMITER /*!*/;
1773@@ -1498,8 +1545,10 @@
1774 # End of log file
1775 ROLLBACK /* added by mysqlbinlog */;
1776 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1777+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1778
1779 --- start-datetime --
1780+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1781 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1782 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1783 DELIMITER /*!*/;
1784@@ -1568,8 +1617,10 @@
1785 # End of log file
1786 ROLLBACK /* added by mysqlbinlog */;
1787 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1788+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1789
1790 --- stop-datetime --
1791+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1792 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1793 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1794 DELIMITER /*!*/;
1795@@ -1610,8 +1661,10 @@
1796 # End of log file
1797 ROLLBACK /* added by mysqlbinlog */;
1798 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1799+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1800
1801 --- to-last-log --
1802+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1803 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1804 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1805 DELIMITER /*!*/;
1806@@ -1692,6 +1745,7 @@
1807 # End of log file
1808 ROLLBACK /* added by mysqlbinlog */;
1809 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1810+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1811
1812 --- end of test --
1813 drop table t1;
1814
1815=== modified file 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row.result'
1816--- Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row.result 2013-01-09 23:45:25 +0000
1817+++ Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row.result 2013-02-18 05:17:25 +0000
1818@@ -328,6 +328,7 @@
1819 UPDATE t1, t2 SET t1.a=10, t2.a=20;
1820 DROP TABLE t1,t2;
1821 flush logs;
1822+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1823 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1824 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1825 DELIMITER /*!*/;
1826@@ -4135,3 +4136,4 @@
1827 # End of log file
1828 ROLLBACK /* added by mysqlbinlog */;
1829 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1830+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1831
1832=== modified file 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_innodb.result'
1833--- Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_innodb.result 2013-01-09 23:45:25 +0000
1834+++ Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_innodb.result 2013-02-18 05:17:25 +0000
1835@@ -2245,6 +2245,7 @@
1836 #
1837 # Call mysqlbinlog to display the log file contents.
1838 #
1839+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1840 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1841 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1842 DELIMITER /*!*/;
1843@@ -3786,6 +3787,7 @@
1844 # End of log file
1845 ROLLBACK /* added by mysqlbinlog */;
1846 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1847+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1848 #
1849 # Cleanup.
1850 #
1851@@ -3868,6 +3870,7 @@
1852 #
1853 # Call mysqlbinlog to display the log file contents.
1854 #
1855+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1856 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1857 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1858 DELIMITER /*!*/;
1859@@ -4077,6 +4080,7 @@
1860 # End of log file
1861 ROLLBACK /* added by mysqlbinlog */;
1862 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1863+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1864 #
1865 # Cleanup.
1866 #
1867@@ -4235,6 +4239,7 @@
1868 #
1869 # Call mysqlbinlog to display the log file contents.
1870 #
1871+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1872 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1873 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1874 DELIMITER /*!*/;
1875@@ -4746,6 +4751,7 @@
1876 # End of log file
1877 ROLLBACK /* added by mysqlbinlog */;
1878 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1879+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1880 #
1881 # Cleanup.
1882 #
1883@@ -4796,6 +4802,7 @@
1884 #
1885 # Call mysqlbinlog to display the log file contents.
1886 #
1887+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1888 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1889 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1890 DELIMITER /*!*/;
1891@@ -4853,6 +4860,7 @@
1892 # End of log file
1893 ROLLBACK /* added by mysqlbinlog */;
1894 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1895+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1896 #
1897 # Cleanup.
1898 #
1899
1900=== modified file 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_myisam.result'
1901--- Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_myisam.result 2013-01-09 23:45:25 +0000
1902+++ Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_myisam.result 2013-02-18 05:17:25 +0000
1903@@ -2245,6 +2245,7 @@
1904 #
1905 # Call mysqlbinlog to display the log file contents.
1906 #
1907+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1908 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1909 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1910 DELIMITER /*!*/;
1911@@ -3808,6 +3809,7 @@
1912 # End of log file
1913 ROLLBACK /* added by mysqlbinlog */;
1914 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1915+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1916 #
1917 # Cleanup.
1918 #
1919@@ -3890,6 +3892,7 @@
1920 #
1921 # Call mysqlbinlog to display the log file contents.
1922 #
1923+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1924 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1925 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1926 DELIMITER /*!*/;
1927@@ -4105,6 +4108,7 @@
1928 # End of log file
1929 ROLLBACK /* added by mysqlbinlog */;
1930 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1931+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1932 #
1933 # Cleanup.
1934 #
1935@@ -4263,6 +4267,7 @@
1936 #
1937 # Call mysqlbinlog to display the log file contents.
1938 #
1939+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1940 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1941 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1942 DELIMITER /*!*/;
1943@@ -4784,6 +4789,7 @@
1944 # End of log file
1945 ROLLBACK /* added by mysqlbinlog */;
1946 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1947+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1948 #
1949 # Cleanup.
1950 #
1951@@ -4834,6 +4840,7 @@
1952 #
1953 # Call mysqlbinlog to display the log file contents.
1954 #
1955+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1956 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1957 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1958 DELIMITER /*!*/;
1959@@ -4893,6 +4900,7 @@
1960 # End of log file
1961 ROLLBACK /* added by mysqlbinlog */;
1962 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1963+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1964 #
1965 # Cleanup.
1966 #
1967
1968=== modified file 'Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_trans.result'
1969--- Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_trans.result 2013-01-09 23:45:25 +0000
1970+++ Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_trans.result 2013-02-18 05:17:25 +0000
1971@@ -124,6 +124,7 @@
1972 #
1973 # Call mysqlbinlog to display the log file contents.
1974 #
1975+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1976 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1977 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1978 DELIMITER /*!*/;
1979@@ -463,6 +464,7 @@
1980 # End of log file
1981 ROLLBACK /* added by mysqlbinlog */;
1982 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
1983+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
1984 #
1985 # Cleanup.
1986 #
1987
1988=== modified file 'Percona-Server/mysql-test/suite/binlog/r/binlog_row_ctype_ucs.result'
1989--- Percona-Server/mysql-test/suite/binlog/r/binlog_row_ctype_ucs.result 2009-11-03 13:54:41 +0000
1990+++ Percona-Server/mysql-test/suite/binlog/r/binlog_row_ctype_ucs.result 2013-02-18 05:17:25 +0000
1991@@ -10,6 +10,7 @@
1992 master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
1993 master-bin.000001 # Query # # COMMIT
1994 flush logs;
1995+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
1996 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
1997 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
1998 DELIMITER /*!*/;
1999@@ -32,4 +33,5 @@
2000 # End of log file
2001 ROLLBACK /* added by mysqlbinlog */;
2002 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
2003+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
2004 drop table t2;
2005
2006=== modified file 'Percona-Server/mysql-test/suite/binlog/r/binlog_stm_ctype_ucs.result'
2007--- Percona-Server/mysql-test/suite/binlog/r/binlog_stm_ctype_ucs.result 2013-01-09 23:45:25 +0000
2008+++ Percona-Server/mysql-test/suite/binlog/r/binlog_stm_ctype_ucs.result 2013-02-18 05:17:25 +0000
2009@@ -10,6 +10,7 @@
2010 master-bin.000001 # Query # # use `test`; insert into t2 values (@v)
2011 master-bin.000001 # Query # # COMMIT
2012 flush logs;
2013+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
2014 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
2015 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
2016 DELIMITER /*!*/;
2017@@ -37,4 +38,5 @@
2018 # End of log file
2019 ROLLBACK /* added by mysqlbinlog */;
2020 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
2021+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
2022 drop table t2;
2023
2024=== modified file 'Percona-Server/mysql-test/suite/engines/funcs/r/rpl_row_until.result'
2025--- Percona-Server/mysql-test/suite/engines/funcs/r/rpl_row_until.result 2011-01-05 06:53:05 +0000
2026+++ Percona-Server/mysql-test/suite/engines/funcs/r/rpl_row_until.result 2013-02-18 05:17:25 +0000
2027@@ -1,212 +1,60 @@
2028-stop slave;
2029-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
2030-reset master;
2031-reset slave;
2032-drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
2033-start slave;
2034-stop slave;
2035-create table t1(n int not null auto_increment primary key);
2036-insert into t1 values (1),(2),(3),(4);
2037-drop table t1;
2038-create table t2(n int not null auto_increment primary key);
2039-insert into t2 values (1),(2);
2040-insert into t2 values (3),(4);
2041-drop table t2;
2042-start slave until master_log_file='master-bin.000001', master_log_pos=311;
2043-select * from t1;
2044-n
2045-1
2046-2
2047-3
2048-4
2049-show slave status;
2050-Slave_IO_State #
2051-Master_Host 127.0.0.1
2052-Master_User root
2053-Master_Port MASTER_MYPORT
2054-Connect_Retry 1
2055-Master_Log_File master-bin.000001
2056-Read_Master_Log_Pos #
2057-Relay_Log_File slave-relay-bin.000004
2058-Relay_Log_Pos #
2059-Relay_Master_Log_File master-bin.000001
2060-Slave_IO_Running #
2061-Slave_SQL_Running No
2062-Replicate_Do_DB
2063-Replicate_Ignore_DB
2064-Replicate_Do_Table
2065-Replicate_Ignore_Table
2066-Replicate_Wild_Do_Table
2067-Replicate_Wild_Ignore_Table
2068-Last_Errno 0
2069-Last_Error
2070-Skip_Counter 0
2071-Exec_Master_Log_Pos #
2072-Relay_Log_Space #
2073-Until_Condition Master
2074-Until_Log_File master-bin.000001
2075-Until_Log_Pos 311
2076-Master_SSL_Allowed No
2077-Master_SSL_CA_File
2078-Master_SSL_CA_Path
2079-Master_SSL_Cert
2080-Master_SSL_Cipher
2081-Master_SSL_Key
2082-Seconds_Behind_Master #
2083-Master_SSL_Verify_Server_Cert No
2084-Last_IO_Errno 0
2085-Last_IO_Error
2086-Last_SQL_Errno 0
2087-Last_SQL_Error
2088-Replicate_Ignore_Server_Ids
2089-Master_Server_Id 1
2090-start slave until master_log_file='master-no-such-bin.000001', master_log_pos=291;
2091-select * from t1;
2092-n 1
2093-n 2
2094-n 3
2095-n 4
2096-show slave status;
2097-Slave_IO_State #
2098-Master_Host 127.0.0.1
2099-Master_User root
2100-Master_Port MASTER_MYPORT
2101-Connect_Retry 1
2102-Master_Log_File master-bin.000001
2103-Read_Master_Log_Pos #
2104-Relay_Log_File slave-relay-bin.000004
2105-Relay_Log_Pos #
2106-Relay_Master_Log_File master-bin.000001
2107-Slave_IO_Running #
2108-Slave_SQL_Running No
2109-Replicate_Do_DB
2110-Replicate_Ignore_DB
2111-Replicate_Do_Table
2112-Replicate_Ignore_Table
2113-Replicate_Wild_Do_Table
2114-Replicate_Wild_Ignore_Table
2115-Last_Errno 0
2116-Last_Error
2117-Skip_Counter 0
2118-Exec_Master_Log_Pos #
2119-Relay_Log_Space #
2120-Until_Condition Master
2121-Until_Log_File master-no-such-bin.000001
2122-Until_Log_Pos 291
2123-Master_SSL_Allowed No
2124-Master_SSL_CA_File
2125-Master_SSL_CA_Path
2126-Master_SSL_Cert
2127-Master_SSL_Cipher
2128-Master_SSL_Key
2129-Seconds_Behind_Master #
2130-Master_SSL_Verify_Server_Cert No
2131-Last_IO_Errno 0
2132-Last_IO_Error
2133-Last_SQL_Errno 0
2134-Last_SQL_Error
2135-Replicate_Ignore_Server_Ids
2136-Master_Server_Id 1
2137-start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=728;
2138-select * from t2;
2139-show slave status;
2140-Slave_IO_State #
2141-Master_Host 127.0.0.1
2142-Master_User root
2143-Master_Port MASTER_MYPORT
2144-Connect_Retry 1
2145-Master_Log_File master-bin.000001
2146-Read_Master_Log_Pos #
2147-Relay_Log_File slave-relay-bin.000004
2148-Relay_Log_Pos #
2149-Relay_Master_Log_File master-bin.000001
2150-Slave_IO_Running #
2151-Slave_SQL_Running No
2152-Replicate_Do_DB
2153-Replicate_Ignore_DB
2154-Replicate_Do_Table
2155-Replicate_Ignore_Table
2156-Replicate_Wild_Do_Table
2157-Replicate_Wild_Ignore_Table
2158-Last_Errno 0
2159-Last_Error
2160-Skip_Counter 0
2161-Exec_Master_Log_Pos #
2162-Relay_Log_Space #
2163-Until_Condition Relay
2164-Until_Log_File slave-relay-bin.000004
2165-Until_Log_Pos 728
2166-Master_SSL_Allowed No
2167-Master_SSL_CA_File
2168-Master_SSL_CA_Path
2169-Master_SSL_Cert
2170-Master_SSL_Cipher
2171-Master_SSL_Key
2172-Seconds_Behind_Master #
2173-Master_SSL_Verify_Server_Cert No
2174-Last_IO_Errno 0
2175-Last_IO_Error
2176-Last_SQL_Errno 0
2177-Last_SQL_Error
2178-Replicate_Ignore_Server_Ids
2179-Master_Server_Id 1
2180-start slave;
2181-stop slave;
2182-start slave until master_log_file='master-bin.000001', master_log_pos=740;
2183-show slave status;
2184-Slave_IO_State #
2185-Master_Host 127.0.0.1
2186-Master_User root
2187-Master_Port MASTER_MYPORT
2188-Connect_Retry 1
2189-Master_Log_File master-bin.000001
2190-Read_Master_Log_Pos #
2191-Relay_Log_File slave-relay-bin.000004
2192-Relay_Log_Pos #
2193-Relay_Master_Log_File master-bin.000001
2194-Slave_IO_Running Yes
2195-Slave_SQL_Running No
2196-Replicate_Do_DB
2197-Replicate_Ignore_DB
2198-Replicate_Do_Table
2199-Replicate_Ignore_Table
2200-Replicate_Wild_Do_Table
2201-Replicate_Wild_Ignore_Table
2202-Last_Errno 0
2203-Last_Error
2204-Skip_Counter 0
2205-Exec_Master_Log_Pos #
2206-Relay_Log_Space #
2207-Until_Condition Master
2208-Until_Log_File master-bin.000001
2209-Until_Log_Pos 740
2210-Master_SSL_Allowed No
2211-Master_SSL_CA_File
2212-Master_SSL_CA_Path
2213-Master_SSL_Cert
2214-Master_SSL_Cipher
2215-Master_SSL_Key
2216-Seconds_Behind_Master #
2217-Master_SSL_Verify_Server_Cert No
2218-Last_IO_Errno 0
2219-Last_IO_Error
2220-Last_SQL_Errno 0
2221-Last_SQL_Error
2222-Replicate_Ignore_Server_Ids
2223-Master_Server_Id 1
2224-start slave until master_log_file='master-bin', master_log_pos=561;
2225-ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
2226-start slave until master_log_file='master-bin.000001', master_log_pos=561, relay_log_pos=12;
2227-ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
2228-start slave until master_log_file='master-bin.000001';
2229-ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
2230-start slave until relay_log_file='slave-relay-bin.000002';
2231-ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
2232-start slave until relay_log_file='slave-relay-bin.000002', master_log_pos=561;
2233-ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
2234-start slave sql_thread;
2235-start slave until master_log_file='master-bin.000001', master_log_pos=740;
2236+include/master-slave.inc
2237+[connection master]
2238+CREATE TABLE t1(n INT NOT NULL AUTO_INCREMENT PRIMARY KEY);
2239+INSERT INTO t1 VALUES (1),(2),(3),(4);
2240+DROP TABLE t1;
2241+CREATE TABLE t2(n INT NOT NULL AUTO_INCREMENT PRIMARY KEY);
2242+INSERT INTO t2 VALUES (1),(2);
2243+INSERT INTO t2 VALUES (3),(4);
2244+DROP TABLE t2;
2245+include/stop_slave.inc
2246+RESET SLAVE;
2247+START SLAVE UNTIL MASTER_LOG_FILE='master-bin.000001', MASTER_LOG_POS=master_pos_drop_t1
2248+include/wait_for_slave_sql_to_stop.inc
2249+SELECT * FROM t1;
2250+n
2251+1
2252+2
2253+3
2254+4
2255+include/check_slave_param.inc [Exec_Master_Log_Pos]
2256+START SLAVE UNTIL MASTER_LOG_FILE='master-no-such-bin.000001', MASTER_LOG_POS=MASTER_LOG_POS;
2257+include/wait_for_slave_sql_to_stop.inc
2258+SELECT * FROM t1;
2259+n
2260+1
2261+2
2262+3
2263+4
2264+include/check_slave_param.inc [Exec_Master_Log_Pos]
2265+START SLAVE UNTIL RELAY_LOG_FILE='slave-relay-bin.000002', RELAY_LOG_POS=relay_pos_insert1_t2
2266+include/wait_for_slave_sql_to_stop.inc
2267+SELECT * FROM t2;
2268+n
2269+1
2270+2
2271+include/check_slave_param.inc [Exec_Master_Log_Pos]
2272+START SLAVE;
2273+include/wait_for_slave_to_start.inc
2274+include/stop_slave.inc
2275+START SLAVE SQL_THREAD UNTIL MASTER_LOG_FILE='master-bin.000001', MASTER_LOG_POS=master_pos_create_t2
2276+include/wait_for_slave_param.inc [Until_Log_Pos]
2277+include/wait_for_slave_sql_to_stop.inc
2278+include/check_slave_param.inc [Exec_Master_Log_Pos]
2279+START SLAVE UNTIL MASTER_LOG_FILE='master-bin', MASTER_LOG_POS=MASTER_LOG_POS;
2280+ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
2281+START SLAVE UNTIL MASTER_LOG_FILE='master-bin.000001', MASTER_LOG_POS=MASTER_LOG_POS, RELAY_LOG_POS=RELAY_LOG_POS;
2282+ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
2283+START SLAVE UNTIL MASTER_LOG_FILE='master-bin.000001';
2284+ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
2285+START SLAVE UNTIL RELAY_LOG_FILE='slave-relay-bin.000009';
2286+ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
2287+START SLAVE UNTIL RELAY_LOG_FILE='slave-relay-bin.000002', MASTER_LOG_POS=MASTER_LOG_POS;
2288+ERROR HY000: Incorrect parameter or combination of parameters for START SLAVE UNTIL
2289+START SLAVE;
2290+START SLAVE UNTIL MASTER_LOG_FILE='master-bin.000001', MASTER_LOG_POS=MASTER_LOG_POS;
2291 Warnings:
2292-Level Note
2293-Code 1254
2294-Message Slave is already running
2295+Note 1254 Slave is already running
2296+include/stop_slave.inc
2297+RESET SLAVE;
2298+include/rpl_end.inc
2299
2300=== modified file 'Percona-Server/mysql-test/suite/engines/funcs/t/disabled.def'
2301--- Percona-Server/mysql-test/suite/engines/funcs/t/disabled.def 2011-01-05 06:53:05 +0000
2302+++ Percona-Server/mysql-test/suite/engines/funcs/t/disabled.def 2013-02-18 05:17:25 +0000
2303@@ -70,7 +70,6 @@
2304 rpl000017 : Result Difference Due To Change In .inc file
2305 rpl_skip_error : Result Difference Due To Change In .inc file
2306
2307-rpl_row_until : Test Present in rpl suite as well . Test Fails table with t2 table not found.
2308 rpl_loaddata_s : Test Present in rpl suite as well . Test Fails due to bin log truncation.
2309 rpl_log_pos : Test Present in rpl suite as well . Test Fails due to bin log truncation.
2310 rpl_row_NOW : Result Difference Due To Change In .inc file
2311@@ -96,4 +95,3 @@
2312 rpl_row_inexist_tbl : Result Difference Due To Change In .inc file
2313 rpl_sp : Result Difference Due To Change In .inc file
2314 rpl_rbr_to_sbr : Result Difference Due To Change In .inc file
2315-rpl_row_until : Test Timesout
2316
2317=== modified file 'Percona-Server/mysql-test/suite/engines/funcs/t/rpl_row_until.test'
2318--- Percona-Server/mysql-test/suite/engines/funcs/t/rpl_row_until.test 2011-01-05 06:53:05 +0000
2319+++ Percona-Server/mysql-test/suite/engines/funcs/t/rpl_row_until.test 2013-02-18 05:17:25 +0000
2320@@ -2,90 +2,126 @@
2321 -- source include/have_binlog_format_row.inc
2322 -- source include/master-slave.inc
2323
2324-# Test is dependent on binlog positions
2325-
2326-# prepare version for substitutions
2327-let $VERSION=`select version()`;
2328-
2329-# stop slave before he will start replication also sync with master
2330-# for avoiding undetermenistic behaviour
2331-save_master_pos;
2332-connection slave;
2333-sync_with_master;
2334-stop slave;
2335-
2336-connection master;
2337-# create some events on master
2338-create table t1(n int not null auto_increment primary key);
2339-insert into t1 values (1),(2),(3),(4);
2340-drop table t1;
2341-create table t2(n int not null auto_increment primary key);
2342-insert into t2 values (1),(2);
2343-insert into t2 values (3),(4);
2344-drop table t2;
2345-
2346-# try to replicate all queries until drop of t1
2347-connection slave;
2348-start slave until master_log_file='master-bin.000001', master_log_pos=311;
2349-sleep 2;
2350-wait_for_slave_to_stop;
2351-# here table should be still not deleted
2352-select * from t1;
2353---vertical_results
2354---replace_result $MASTER_MYPORT MASTER_MYPORT
2355---replace_column 1 # 7 # 9 # 11 # 22 # 23 # 33 #
2356-show slave status;
2357-
2358-# this should fail right after start
2359-start slave until master_log_file='master-no-such-bin.000001', master_log_pos=291;
2360+# Note: The test is dependent on binlog positions
2361+
2362+# Create some events on master
2363+connection master;
2364+CREATE TABLE t1(n INT NOT NULL AUTO_INCREMENT PRIMARY KEY);
2365+INSERT INTO t1 VALUES (1),(2),(3),(4);
2366+DROP TABLE t1;
2367+# Save master log position for query DROP TABLE t1
2368+save_master_pos;
2369+let $master_pos_drop_t1= query_get_value(SHOW BINLOG EVENTS, Pos, 7);
2370+let $master_log_file= query_get_value(SHOW BINLOG EVENTS, Log_name, 7);
2371+
2372+CREATE TABLE t2(n INT NOT NULL AUTO_INCREMENT PRIMARY KEY);
2373+# Save master log position for query CREATE TABLE t2
2374+save_master_pos;
2375+let $master_pos_create_t2= query_get_value(SHOW BINLOG EVENTS, Pos, 8);
2376+
2377+INSERT INTO t2 VALUES (1),(2);
2378+save_master_pos;
2379+# Save master log position for query INSERT INTO t2 VALUES (1),(2);
2380+let $master_pos_insert1_t2= query_get_value(SHOW BINLOG EVENTS, End_log_pos, 12);
2381+sync_slave_with_master;
2382+
2383+# Save relay log position for query INSERT INTO t2 VALUES (1),(2);
2384+let $relay_pos_insert1_t2= query_get_value(show slave status, Relay_Log_Pos, 1);
2385+
2386+connection master;
2387+INSERT INTO t2 VALUES (3),(4);
2388+DROP TABLE t2;
2389+# Save master log position for query INSERT INTO t2 VALUES (1),(2);
2390+let $master_pos_drop_t2= query_get_value(SHOW BINLOG EVENTS, End_log_pos, 17);
2391+sync_slave_with_master;
2392+
2393+--source include/stop_slave.inc
2394+# Reset slave.
2395+RESET SLAVE;
2396+--disable_query_log
2397+eval CHANGE MASTER TO MASTER_USER='root', MASTER_CONNECT_RETRY=1, MASTER_HOST='127.0.0.1', MASTER_PORT=$MASTER_MYPORT;
2398+--enable_query_log
2399+
2400+# Try to replicate all queries until drop of t1
2401+connection slave;
2402+echo START SLAVE UNTIL MASTER_LOG_FILE='$master_log_file', MASTER_LOG_POS=master_pos_drop_t1;
2403+--disable_query_log
2404+eval START SLAVE UNTIL MASTER_LOG_FILE='$master_log_file', MASTER_LOG_POS=$master_pos_drop_t1;
2405+--enable_query_log
2406+--source include/wait_for_slave_sql_to_stop.inc
2407+
2408+# Here table should be still not deleted
2409+SELECT * FROM t1;
2410+--let $slave_param= Exec_Master_Log_Pos
2411+--let $slave_param_value= $master_pos_drop_t1
2412+--source include/check_slave_param.inc
2413+
2414+# This should fail right after start
2415+--replace_result 291 MASTER_LOG_POS
2416+START SLAVE UNTIL MASTER_LOG_FILE='master-no-such-bin.000001', MASTER_LOG_POS=291;
2417+--source include/wait_for_slave_sql_to_stop.inc
2418 # again this table should be still not deleted
2419-select * from t1;
2420-sleep 2;
2421-wait_for_slave_to_stop;
2422---vertical_results
2423---replace_result $MASTER_MYPORT MASTER_MYPORT
2424---replace_column 1 # 7 # 9 # 11 # 22 # 23 # 33 #
2425-show slave status;
2426-
2427-# try replicate all up to and not including the second insert to t2;
2428-start slave until relay_log_file='slave-relay-bin.000004', relay_log_pos=728;
2429-sleep 2;
2430-wait_for_slave_to_stop;
2431-select * from t2;
2432---vertical_results
2433---replace_result $MASTER_MYPORT MASTER_MYPORT
2434---replace_column 1 # 7 # 9 # 11 # 22 # 23 # 33 #
2435-show slave status;
2436+SELECT * FROM t1;
2437+
2438+--let $slave_param= Exec_Master_Log_Pos
2439+--let $slave_param_value= $master_pos_drop_t1
2440+--source include/check_slave_param.inc
2441+
2442+# Try replicate all up to and not including the second insert to t2;
2443+echo START SLAVE UNTIL RELAY_LOG_FILE='slave-relay-bin.000002', RELAY_LOG_POS=relay_pos_insert1_t2;
2444+--disable_query_log
2445+eval START SLAVE UNTIL RELAY_LOG_FILE='slave-relay-bin.000002', RELAY_LOG_POS=$relay_pos_insert1_t2;
2446+--enable_query_log
2447+--source include/wait_for_slave_sql_to_stop.inc
2448+SELECT * FROM t2;
2449+
2450+--let $slave_param= Exec_Master_Log_Pos
2451+--let $slave_param_value= $master_pos_insert1_t2
2452+--source include/check_slave_param.inc
2453
2454 # clean up
2455-start slave;
2456+START SLAVE;
2457+--source include/wait_for_slave_to_start.inc
2458 connection master;
2459-save_master_pos;
2460-connection slave;
2461-sync_with_master;
2462-stop slave;
2463+sync_slave_with_master;
2464+--source include/stop_slave.inc
2465
2466-# this should stop immediately as we are already there
2467-start slave until master_log_file='master-bin.000001', master_log_pos=740;
2468-sleep 2;
2469-wait_for_slave_to_stop;
2470+# This should stop immediately as we are already there
2471+echo START SLAVE SQL_THREAD UNTIL MASTER_LOG_FILE='$master_log_file', MASTER_LOG_POS=master_pos_create_t2;
2472+--disable_query_log
2473+eval START SLAVE SQL_THREAD UNTIL MASTER_LOG_FILE='$master_log_file', MASTER_LOG_POS=$master_pos_create_t2;
2474+--enable_query_log
2475+let $slave_param= Until_Log_Pos;
2476+let $slave_param_value= $master_pos_create_t2;
2477+--source include/wait_for_slave_param.inc
2478+--source include/wait_for_slave_sql_to_stop.inc
2479 # here the sql slave thread should be stopped
2480---vertical_results
2481---replace_result $MASTER_MYPORT MASTER_MYPORT bin.000005 bin.000004 bin.000006 bin.000004 bin.000007 bin.000004
2482---replace_column 1 # 7 # 9 # 22 # 23 # 33 #
2483-show slave status;
2484+--let $slave_param= Exec_Master_Log_Pos
2485+--let $slave_param_value= $master_pos_drop_t2
2486+--source include/check_slave_param.inc
2487
2488 #testing various error conditions
2489---error 1277
2490-start slave until master_log_file='master-bin', master_log_pos=561;
2491---error 1277
2492-start slave until master_log_file='master-bin.000001', master_log_pos=561, relay_log_pos=12;
2493---error 1277
2494-start slave until master_log_file='master-bin.000001';
2495---error 1277
2496-start slave until relay_log_file='slave-relay-bin.000002';
2497---error 1277
2498-start slave until relay_log_file='slave-relay-bin.000002', master_log_pos=561;
2499+--replace_result 561 MASTER_LOG_POS
2500+--error 1277
2501+START SLAVE UNTIL MASTER_LOG_FILE='master-bin', MASTER_LOG_POS=561;
2502+--replace_result 561 MASTER_LOG_POS 12 RELAY_LOG_POS
2503+--error 1277
2504+START SLAVE UNTIL MASTER_LOG_FILE='master-bin.000001', MASTER_LOG_POS=561, RELAY_LOG_POS=12;
2505+--error 1277
2506+START SLAVE UNTIL MASTER_LOG_FILE='master-bin.000001';
2507+--error 1277
2508+START SLAVE UNTIL RELAY_LOG_FILE='slave-relay-bin.000009';
2509+--replace_result 561 MASTER_LOG_POS
2510+--error 1277
2511+START SLAVE UNTIL RELAY_LOG_FILE='slave-relay-bin.000002', MASTER_LOG_POS=561;
2512 # Warning should be given for second command
2513-start slave sql_thread;
2514-start slave until master_log_file='master-bin.000001', master_log_pos=740;
2515+START SLAVE;
2516+--replace_result 740 MASTER_LOG_POS
2517+START SLAVE UNTIL MASTER_LOG_FILE='master-bin.000001', MASTER_LOG_POS=740;
2518+
2519+--source include/stop_slave.inc
2520+# Clear slave IO error.
2521+RESET SLAVE;
2522+
2523+--let $rpl_only_running_threads= 1
2524+--source include/rpl_end.inc
2525
2526=== modified file 'Percona-Server/mysql-test/suite/innodb/r/innodb-index.result'
2527--- Percona-Server/mysql-test/suite/innodb/r/innodb-index.result 2012-09-01 05:57:53 +0000
2528+++ Percona-Server/mysql-test/suite/innodb/r/innodb-index.result 2013-02-18 05:17:25 +0000
2529@@ -956,7 +956,7 @@
2530 test.t1 check status OK
2531 explain select * from t1 where b like 'adfd%';
2532 id select_type table type possible_keys key key_len ref rows Extra
2533-1 SIMPLE t1 ALL b NULL NULL NULL 15 Using where
2534+1 SIMPLE t1 range b b 769 NULL 11 Using where
2535 drop table t1;
2536 set global innodb_file_per_table=on;
2537 set global innodb_file_format='Barracuda';
2538
2539=== added file 'Percona-Server/mysql-test/suite/innodb/r/innodb_bug14147491.result'
2540--- Percona-Server/mysql-test/suite/innodb/r/innodb_bug14147491.result 1970-01-01 00:00:00 +0000
2541+++ Percona-Server/mysql-test/suite/innodb/r/innodb_bug14147491.result 2013-02-18 05:17:25 +0000
2542@@ -0,0 +1,17 @@
2543+CALL mtr.add_suppression("InnoDB: Error: Unable to read tablespace .* page no .* into the buffer pool after 100 attempts");
2544+CALL mtr.add_suppression("InnoDB: Warning: database page corruption or a failed");
2545+# Create and populate the table to be corrupted
2546+CREATE TABLE t1 (a INT AUTO_INCREMENT PRIMARY KEY, b TEXT) ENGINE=InnoDB;
2547+INSERT INTO t1 (b) VALUES ('corrupt me');
2548+INSERT INTO t1 (b) VALUES ('corrupt me');
2549+# Restart server to flush buffers
2550+# Corrupt the table
2551+Munged a string.
2552+Munged a string.
2553+# Write file to make mysql-test-run.pl expect crash and restart
2554+SELECT * FROM t1;
2555+ERROR HY000: Lost connection to MySQL server during query
2556+# Turn on reconnect
2557+# Wait for server to fully start
2558+# Cleanup
2559+DROP TABLE t1;
2560
2561=== added file 'Percona-Server/mysql-test/suite/innodb/r/innodb_bug14676111.result'
2562--- Percona-Server/mysql-test/suite/innodb/r/innodb_bug14676111.result 1970-01-01 00:00:00 +0000
2563+++ Percona-Server/mysql-test/suite/innodb/r/innodb_bug14676111.result 2013-02-18 05:17:25 +0000
2564@@ -0,0 +1,53 @@
2565+drop table if exists t1;
2566+CREATE TABLE t1 (a int not null primary key) engine=InnoDB;
2567+set global innodb_limit_optimistic_insert_debug = 2;
2568+insert into t1 values (1);
2569+insert into t1 values (5);
2570+insert into t1 values (4);
2571+insert into t1 values (3);
2572+insert into t1 values (2);
2573+analyze table t1;
2574+Table Op Msg_type Msg_text
2575+test.t1 analyze status OK
2576+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2577+DATA_LENGTH / 16384
2578+10.0000
2579+delete from t1 where a=4;
2580+analyze table t1;
2581+Table Op Msg_type Msg_text
2582+test.t1 analyze status OK
2583+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2584+DATA_LENGTH / 16384
2585+8.0000
2586+delete from t1 where a=5;
2587+analyze table t1;
2588+Table Op Msg_type Msg_text
2589+test.t1 analyze status OK
2590+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2591+DATA_LENGTH / 16384
2592+5.0000
2593+set global innodb_limit_optimistic_insert_debug = 10000;
2594+delete from t1 where a=2;
2595+analyze table t1;
2596+Table Op Msg_type Msg_text
2597+test.t1 analyze status OK
2598+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2599+DATA_LENGTH / 16384
2600+3.0000
2601+insert into t1 values (2);
2602+delete from t1 where a=2;
2603+analyze table t1;
2604+Table Op Msg_type Msg_text
2605+test.t1 analyze status OK
2606+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2607+DATA_LENGTH / 16384
2608+2.0000
2609+insert into t1 values (2);
2610+delete from t1 where a=2;
2611+analyze table t1;
2612+Table Op Msg_type Msg_text
2613+test.t1 analyze status OK
2614+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2615+DATA_LENGTH / 16384
2616+1.0000
2617+drop table t1;
2618
2619=== modified file 'Percona-Server/mysql-test/suite/innodb/r/innodb_mysql.result'
2620--- Percona-Server/mysql-test/suite/innodb/r/innodb_mysql.result 2011-05-26 15:50:06 +0000
2621+++ Percona-Server/mysql-test/suite/innodb/r/innodb_mysql.result 2013-02-18 05:17:25 +0000
2622@@ -343,7 +343,7 @@
2623 1 SIMPLE t1 index NULL PRIMARY 5 NULL 4 Using index; Using temporary
2624 explain select distinct f1, f2 from t1;
2625 id select_type table type possible_keys key key_len ref rows Extra
2626-1 SIMPLE t1 range NULL PRIMARY 5 NULL 3 Using index for group-by; Using temporary
2627+1 SIMPLE t1 index NULL PRIMARY 5 NULL 4 Using index
2628 drop table t1;
2629 CREATE TABLE t1 (id int(11) NOT NULL PRIMARY KEY, name varchar(20),
2630 INDEX (name));
2631@@ -1738,7 +1738,7 @@
2632 FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
2633 id select_type table type possible_keys key key_len ref rows Extra
2634 1 PRIMARY <derived2> system NULL NULL NULL NULL 1
2635-2 DERIVED t1 ALL c3,c2 c3 5 5 Using filesort
2636+2 DERIVED t1 ALL c3,c2 c3 5 5 Using where; Using filesort
2637 DROP TABLE t1;
2638 CREATE TABLE t1 (c1 REAL, c2 REAL, c3 REAL, KEY (c3), KEY (c2, c3))
2639 ENGINE=InnoDB;
2640@@ -1752,7 +1752,7 @@
2641 FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
2642 id select_type table type possible_keys key key_len ref rows Extra
2643 1 PRIMARY <derived2> system NULL NULL NULL NULL 1
2644-2 DERIVED t1 ALL c3,c2 c3 9 5 Using filesort
2645+2 DERIVED t1 ALL c3,c2 c3 9 5 Using where; Using filesort
2646 DROP TABLE t1;
2647 CREATE TABLE t1 (c1 DECIMAL(12,2), c2 DECIMAL(12,2), c3 DECIMAL(12,2),
2648 KEY (c3), KEY (c2, c3))
2649@@ -1767,7 +1767,7 @@
2650 FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
2651 id select_type table type possible_keys key key_len ref rows Extra
2652 1 PRIMARY <derived2> system NULL NULL NULL NULL 1
2653-2 DERIVED t1 ALL c3,c2 c3 7 5 Using filesort
2654+2 DERIVED t1 ALL c3,c2 c3 7 5 Using where; Using filesort
2655 DROP TABLE t1;
2656 End of 5.1 tests
2657 #
2658
2659=== added file 'Percona-Server/mysql-test/suite/innodb/t/innodb_bug14147491-master.opt'
2660--- Percona-Server/mysql-test/suite/innodb/t/innodb_bug14147491-master.opt 1970-01-01 00:00:00 +0000
2661+++ Percona-Server/mysql-test/suite/innodb/t/innodb_bug14147491-master.opt 2013-02-18 05:17:25 +0000
2662@@ -0,0 +1,1 @@
2663+--innodb_file_per_table=1 --skip-stack-trace --skip-core-file
2664
2665=== added file 'Percona-Server/mysql-test/suite/innodb/t/innodb_bug14147491.test'
2666--- Percona-Server/mysql-test/suite/innodb/t/innodb_bug14147491.test 1970-01-01 00:00:00 +0000
2667+++ Percona-Server/mysql-test/suite/innodb/t/innodb_bug14147491.test 2013-02-18 05:17:25 +0000
2668@@ -0,0 +1,75 @@
2669+#
2670+# Test opening a corrupted table.
2671+#
2672+
2673+# Don't test under valgrind, memory leaks will occur
2674+source include/not_valgrind.inc;
2675+# Avoid CrashReporter popup on Mac
2676+source include/not_crashrep.inc;
2677+# Don't test under embedded
2678+source include/not_embedded.inc;
2679+# Require InnoDB
2680+source include/have_innodb.inc;
2681+
2682+CALL mtr.add_suppression("InnoDB: Error: Unable to read tablespace .* page no .* into the buffer pool after 100 attempts");
2683+CALL mtr.add_suppression("InnoDB: Warning: database page corruption or a failed");
2684+
2685+--echo # Create and populate the table to be corrupted
2686+CREATE TABLE t1 (a INT AUTO_INCREMENT PRIMARY KEY, b TEXT) ENGINE=InnoDB;
2687+INSERT INTO t1 (b) VALUES ('corrupt me');
2688+--disable_query_log
2689+--let $i = 10
2690+while ($i)
2691+{
2692+ INSERT INTO t1 (b) VALUES (REPEAT('abcdefghijklmnopqrstuvwxyz', 100));
2693+ dec $i;
2694+}
2695+--enable_query_log
2696+INSERT INTO t1 (b) VALUES ('corrupt me');
2697+
2698+--echo # Restart server to flush buffers
2699+source include/restart_mysqld.inc;
2700+
2701+--echo # Corrupt the table
2702+let $MYSQLD_DATADIR=`select @@datadir`;
2703+let t1_IBD = $MYSQLD_DATADIR/test/t1.ibd;
2704+
2705+perl;
2706+use strict;
2707+use warnings;
2708+use Fcntl qw(:DEFAULT :seek);
2709+
2710+my $ibd_file = $ENV{'t1_IBD'};
2711+
2712+my $chunk;
2713+my $len;
2714+
2715+sysopen IBD_FILE, $ibd_file, O_RDWR || die "Unable to open $ibd_file";
2716+
2717+while ($len = sysread IBD_FILE, $chunk, 1024)
2718+{
2719+ if ($chunk =~ s/corrupt me/korrupt me/)
2720+ {
2721+ print "Munged a string.\n";
2722+ sysseek IBD_FILE, -$len, SEEK_CUR;
2723+ syswrite IBD_FILE, $chunk, $len;
2724+ }
2725+}
2726+
2727+close IBD_FILE;
2728+EOF
2729+
2730+--echo # Write file to make mysql-test-run.pl expect crash and restart
2731+--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
2732+
2733+--error 2013
2734+SELECT * FROM t1;
2735+
2736+--echo # Turn on reconnect
2737+--enable_reconnect
2738+
2739+--echo # Wait for server to fully start
2740+--source include/wait_until_connected_again.inc
2741+
2742+--echo # Cleanup
2743+DROP TABLE t1;
2744
2745=== added file 'Percona-Server/mysql-test/suite/innodb/t/innodb_bug14676111.test'
2746--- Percona-Server/mysql-test/suite/innodb/t/innodb_bug14676111.test 1970-01-01 00:00:00 +0000
2747+++ Percona-Server/mysql-test/suite/innodb/t/innodb_bug14676111.test 2013-02-18 05:17:25 +0000
2748@@ -0,0 +1,128 @@
2749+# Test for bug #14676111: WRONG PAGE_LEVEL WRITTEN FOR UPPER THAN FATHER PAGE AT BTR_LIFT_PAGE_UP()
2750+
2751+-- source include/have_innodb.inc
2752+-- source include/have_debug.inc
2753+
2754+if (`select count(*)=0 from information_schema.global_variables where variable_name = 'INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG'`)
2755+{
2756+ --skip Test requires InnoDB built with UNIV_DEBUG definition.
2757+}
2758+
2759+--disable_query_log
2760+set @old_innodb_limit_optimistic_insert_debug = @@innodb_limit_optimistic_insert_debug;
2761+--enable_query_log
2762+--disable_warnings
2763+drop table if exists t1;
2764+--enable_warnings
2765+
2766+CREATE TABLE t1 (a int not null primary key) engine=InnoDB;
2767+
2768+let $wait_condition=
2769+ SELECT VARIABLE_VALUE < 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS
2770+ WHERE VARIABLE_NAME = 'INNODB_PURGE_TRX_ID_AGE';
2771+
2772+#
2773+# make 4 leveled straight tree
2774+#
2775+set global innodb_limit_optimistic_insert_debug = 2;
2776+insert into t1 values (1);
2777+insert into t1 values (5);
2778+#current tree form
2779+# (1, 5)
2780+
2781+insert into t1 values (4);
2782+#records in a page is limited to 2 artificially. root rise occurs
2783+#current tree form
2784+# (1, 5)
2785+#(1, 4) (5)
2786+
2787+insert into t1 values (3);
2788+#current tree form
2789+# (1, 5)
2790+# (1, 4) (5)
2791+#(1, 3) (4) (5)
2792+
2793+insert into t1 values (2);
2794+#current tree form
2795+# (1, 5)
2796+# (1, 4) (5)
2797+# (1, 3) (4) (5)
2798+#(1, 2) (3) (4) (5)
2799+
2800+analyze table t1;
2801+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2802+
2803+delete from t1 where a=4;
2804+--source include/wait_condition.inc
2805+#deleting 1 record of 2 records don't cause merge artificially.
2806+#current tree form
2807+# (1, 5)
2808+# (1) (5)
2809+# (1, 3) (5)
2810+#(1, 2) (3) (5)
2811+
2812+analyze table t1;
2813+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2814+
2815+delete from t1 where a=5;
2816+--source include/wait_condition.inc
2817+#deleting 1 record of 2 records don't cause merge artificially.
2818+#current tree form
2819+# (1)
2820+# (1)
2821+# (1, 3) <- lift up this level next, when deleting node ptr
2822+#(1, 2) (3) <- merged next
2823+
2824+analyze table t1;
2825+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2826+
2827+#
2828+# cause merge at level 0
2829+#
2830+
2831+#disable the artificial limitation of records in a page
2832+set global innodb_limit_optimistic_insert_debug = 10000;
2833+delete from t1 where a=2;
2834+--source include/wait_condition.inc
2835+#merge page occurs. and lift up occurs.
2836+#current tree form
2837+# (1)
2838+# (1)
2839+# (1, 3)
2840+
2841+analyze table t1;
2842+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2843+
2844+insert into t1 values (2);
2845+#current tree form
2846+# (1)
2847+# (1) <- lift up this level next, because it is not root
2848+# (1, 2, 3)
2849+
2850+delete from t1 where a=2;
2851+--source include/wait_condition.inc
2852+#current tree form
2853+# (1)
2854+# (1, 3)
2855+
2856+analyze table t1;
2857+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2858+
2859+insert into t1 values (2);
2860+#current tree form
2861+# (1)
2862+# (1, 2, 3) <- lift up this level next, because the father is root
2863+
2864+delete from t1 where a=2;
2865+--source include/wait_condition.inc
2866+#current tree form
2867+# (1, 3)
2868+
2869+analyze table t1;
2870+select DATA_LENGTH / 16384 from information_schema.TABLES where TABLE_SCHEMA = 'test' and TABLE_NAME = 't1';
2871+
2872+drop table t1;
2873+
2874+--disable_query_log
2875+set global innodb_limit_optimistic_insert_debug = @old_innodb_limit_optimistic_insert_debug;
2876+--enable_query_log
2877
2878=== modified file 'Percona-Server/mysql-test/suite/parts/r/partition_alter4_innodb.result'
2879--- Percona-Server/mysql-test/suite/parts/r/partition_alter4_innodb.result 2008-11-04 07:43:21 +0000
2880+++ Percona-Server/mysql-test/suite/parts/r/partition_alter4_innodb.result 2013-02-18 05:17:25 +0000
2881@@ -37566,7 +37566,7 @@
2882 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2883 ALTER TABLE t1 OPTIMIZE PARTITION part_1;
2884 Table Op Msg_type Msg_text
2885-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2886+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2887 test.t1 optimize status OK
2888 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2889 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2890@@ -38026,7 +38026,7 @@
2891 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2892 ALTER TABLE t1 OPTIMIZE PARTITION part_1;
2893 Table Op Msg_type Msg_text
2894-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2895+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2896 test.t1 optimize status OK
2897 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2898 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2899@@ -38497,7 +38497,7 @@
2900 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2901 ALTER TABLE t1 OPTIMIZE PARTITION part_1;
2902 Table Op Msg_type Msg_text
2903-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2904+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2905 test.t1 optimize status OK
2906 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2907 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2908@@ -38969,7 +38969,7 @@
2909 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2910 ALTER TABLE t1 OPTIMIZE PARTITION part_1;
2911 Table Op Msg_type Msg_text
2912-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2913+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2914 test.t1 optimize status OK
2915 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2916 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2917@@ -39435,7 +39435,7 @@
2918 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2919 ALTER TABLE t1 OPTIMIZE PARTITION part_1;
2920 Table Op Msg_type Msg_text
2921-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2922+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2923 test.t1 optimize status OK
2924 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2925 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2926@@ -39907,7 +39907,7 @@
2927 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2928 ALTER TABLE t1 OPTIMIZE PARTITION part_1;
2929 Table Op Msg_type Msg_text
2930-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2931+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2932 test.t1 optimize status OK
2933 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2934 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2935@@ -40384,7 +40384,7 @@
2936 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2937 ALTER TABLE t1 OPTIMIZE PARTITION part_1;
2938 Table Op Msg_type Msg_text
2939-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2940+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2941 test.t1 optimize status OK
2942 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2943 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2944@@ -40859,7 +40859,7 @@
2945 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2946 ALTER TABLE t1 OPTIMIZE PARTITION part_1;
2947 Table Op Msg_type Msg_text
2948-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2949+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2950 test.t1 optimize status OK
2951 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2952 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2953@@ -41324,7 +41324,7 @@
2954 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2955 ALTER TABLE t1 OPTIMIZE PARTITION part_1,part_2;
2956 Table Op Msg_type Msg_text
2957-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2958+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2959 test.t1 optimize status OK
2960 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2961 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2962@@ -41784,7 +41784,7 @@
2963 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2964 ALTER TABLE t1 OPTIMIZE PARTITION part_1,part_2;
2965 Table Op Msg_type Msg_text
2966-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2967+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2968 test.t1 optimize status OK
2969 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2970 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2971@@ -42255,7 +42255,7 @@
2972 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2973 ALTER TABLE t1 OPTIMIZE PARTITION part_1,part_2;
2974 Table Op Msg_type Msg_text
2975-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2976+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2977 test.t1 optimize status OK
2978 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2979 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2980@@ -42727,7 +42727,7 @@
2981 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2982 ALTER TABLE t1 OPTIMIZE PARTITION part_1,part_2;
2983 Table Op Msg_type Msg_text
2984-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2985+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2986 test.t1 optimize status OK
2987 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2988 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2989@@ -43193,7 +43193,7 @@
2990 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
2991 ALTER TABLE t1 OPTIMIZE PARTITION part_1,part_2;
2992 Table Op Msg_type Msg_text
2993-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
2994+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
2995 test.t1 optimize status OK
2996 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
2997 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
2998@@ -43665,7 +43665,7 @@
2999 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3000 ALTER TABLE t1 OPTIMIZE PARTITION part_1,part_2;
3001 Table Op Msg_type Msg_text
3002-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3003+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3004 test.t1 optimize status OK
3005 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3006 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3007@@ -44142,7 +44142,7 @@
3008 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3009 ALTER TABLE t1 OPTIMIZE PARTITION part_1,part_2;
3010 Table Op Msg_type Msg_text
3011-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3012+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3013 test.t1 optimize status OK
3014 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3015 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3016@@ -44617,7 +44617,7 @@
3017 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3018 ALTER TABLE t1 OPTIMIZE PARTITION part_1,part_2;
3019 Table Op Msg_type Msg_text
3020-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3021+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3022 test.t1 optimize status OK
3023 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3024 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3025@@ -52582,7 +52582,7 @@
3026 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3027 ALTER TABLE t1 OPTIMIZE PARTITION ALL;
3028 Table Op Msg_type Msg_text
3029-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3030+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3031 test.t1 optimize status OK
3032 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3033 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3034@@ -53042,7 +53042,7 @@
3035 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3036 ALTER TABLE t1 OPTIMIZE PARTITION ALL;
3037 Table Op Msg_type Msg_text
3038-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3039+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3040 test.t1 optimize status OK
3041 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3042 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3043@@ -53513,7 +53513,7 @@
3044 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3045 ALTER TABLE t1 OPTIMIZE PARTITION ALL;
3046 Table Op Msg_type Msg_text
3047-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3048+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3049 test.t1 optimize status OK
3050 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3051 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3052@@ -53985,7 +53985,7 @@
3053 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3054 ALTER TABLE t1 OPTIMIZE PARTITION ALL;
3055 Table Op Msg_type Msg_text
3056-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3057+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3058 test.t1 optimize status OK
3059 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3060 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3061@@ -54451,7 +54451,7 @@
3062 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3063 ALTER TABLE t1 OPTIMIZE PARTITION ALL;
3064 Table Op Msg_type Msg_text
3065-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3066+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3067 test.t1 optimize status OK
3068 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3069 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3070@@ -54923,7 +54923,7 @@
3071 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3072 ALTER TABLE t1 OPTIMIZE PARTITION ALL;
3073 Table Op Msg_type Msg_text
3074-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3075+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3076 test.t1 optimize status OK
3077 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3078 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3079@@ -55400,7 +55400,7 @@
3080 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3081 ALTER TABLE t1 OPTIMIZE PARTITION ALL;
3082 Table Op Msg_type Msg_text
3083-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3084+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3085 test.t1 optimize status OK
3086 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3087 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3088@@ -55875,7 +55875,7 @@
3089 WHERE f_int1 BETWEEN 1 AND @max_row_div2 - 1;
3090 ALTER TABLE t1 OPTIMIZE PARTITION ALL;
3091 Table Op Msg_type Msg_text
3092-test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
3093+test.t1 optimize note Table does not support optimize on partitions. All partitions will be rebuilt and analyzed.
3094 test.t1 optimize status OK
3095 INSERT INTO t1(f_int1,f_int2,f_char1,f_char2,f_charbig)
3096 SELECT f_int1,f_int2,f_char1,f_char2,f_charbig FROM t0_template
3097
3098=== added file 'Percona-Server/mysql-test/suite/perfschema/r/start_server_no_waits_history.result'
3099--- Percona-Server/mysql-test/suite/perfschema/r/start_server_no_waits_history.result 1970-01-01 00:00:00 +0000
3100+++ Percona-Server/mysql-test/suite/perfschema/r/start_server_no_waits_history.result 2013-02-18 05:17:25 +0000
3101@@ -0,0 +1,63 @@
3102+show databases;
3103+Database
3104+information_schema
3105+mtr
3106+mysql
3107+performance_schema
3108+test
3109+select count(*) from performance_schema.performance_timers;
3110+count(*)
3111+5
3112+select count(*) from performance_schema.setup_consumers;
3113+count(*)
3114+8
3115+select count(*) > 0 from performance_schema.setup_instruments;
3116+count(*) > 0
3117+1
3118+select count(*) from performance_schema.setup_timers;
3119+count(*)
3120+1
3121+select * from performance_schema.cond_instances;
3122+select * from performance_schema.events_waits_current;
3123+select * from performance_schema.events_waits_history;
3124+select * from performance_schema.events_waits_history_long;
3125+select * from performance_schema.events_waits_summary_by_instance;
3126+select * from performance_schema.events_waits_summary_by_thread_by_event_name;
3127+select * from performance_schema.events_waits_summary_global_by_event_name;
3128+select * from performance_schema.file_instances;
3129+select * from performance_schema.file_summary_by_event_name;
3130+select * from performance_schema.file_summary_by_instance;
3131+select * from performance_schema.mutex_instances;
3132+select * from performance_schema.performance_timers;
3133+select * from performance_schema.rwlock_instances;
3134+select * from performance_schema.setup_consumers;
3135+select * from performance_schema.setup_instruments;
3136+select * from performance_schema.setup_timers;
3137+select * from performance_schema.threads;
3138+show variables like "performance_schema%";
3139+Variable_name Value
3140+performance_schema ON
3141+performance_schema_events_waits_history_long_size 10000
3142+performance_schema_events_waits_history_size 0
3143+performance_schema_max_cond_classes 80
3144+performance_schema_max_cond_instances 1000
3145+performance_schema_max_file_classes 50
3146+performance_schema_max_file_handles 32768
3147+performance_schema_max_file_instances 10000
3148+performance_schema_max_mutex_classes 200
3149+performance_schema_max_mutex_instances 10000
3150+performance_schema_max_rwlock_classes 30
3151+performance_schema_max_rwlock_instances 10000
3152+performance_schema_max_table_handles 1000
3153+performance_schema_max_table_instances 500
3154+performance_schema_max_thread_classes 50
3155+performance_schema_max_thread_instances 1000
3156+show engine PERFORMANCE_SCHEMA status;
3157+show status like "performance_schema%";
3158+show variables like "performance_schema_events_waits_history_size";
3159+Variable_name Value
3160+performance_schema_events_waits_history_size 0
3161+select count(*) from performance_schema.events_waits_history;
3162+count(*)
3163+0
3164+truncate table performance_schema.events_waits_history;
3165
3166=== added file 'Percona-Server/mysql-test/suite/perfschema/r/start_server_no_waits_history_long.result'
3167--- Percona-Server/mysql-test/suite/perfschema/r/start_server_no_waits_history_long.result 1970-01-01 00:00:00 +0000
3168+++ Percona-Server/mysql-test/suite/perfschema/r/start_server_no_waits_history_long.result 2013-02-18 05:17:25 +0000
3169@@ -0,0 +1,63 @@
3170+show databases;
3171+Database
3172+information_schema
3173+mtr
3174+mysql
3175+performance_schema
3176+test
3177+select count(*) from performance_schema.performance_timers;
3178+count(*)
3179+5
3180+select count(*) from performance_schema.setup_consumers;
3181+count(*)
3182+8
3183+select count(*) > 0 from performance_schema.setup_instruments;
3184+count(*) > 0
3185+1
3186+select count(*) from performance_schema.setup_timers;
3187+count(*)
3188+1
3189+select * from performance_schema.cond_instances;
3190+select * from performance_schema.events_waits_current;
3191+select * from performance_schema.events_waits_history;
3192+select * from performance_schema.events_waits_history_long;
3193+select * from performance_schema.events_waits_summary_by_instance;
3194+select * from performance_schema.events_waits_summary_by_thread_by_event_name;
3195+select * from performance_schema.events_waits_summary_global_by_event_name;
3196+select * from performance_schema.file_instances;
3197+select * from performance_schema.file_summary_by_event_name;
3198+select * from performance_schema.file_summary_by_instance;
3199+select * from performance_schema.mutex_instances;
3200+select * from performance_schema.performance_timers;
3201+select * from performance_schema.rwlock_instances;
3202+select * from performance_schema.setup_consumers;
3203+select * from performance_schema.setup_instruments;
3204+select * from performance_schema.setup_timers;
3205+select * from performance_schema.threads;
3206+show variables like "performance_schema%";
3207+Variable_name Value
3208+performance_schema ON
3209+performance_schema_events_waits_history_long_size 0
3210+performance_schema_events_waits_history_size 10
3211+performance_schema_max_cond_classes 80
3212+performance_schema_max_cond_instances 1000
3213+performance_schema_max_file_classes 50
3214+performance_schema_max_file_handles 32768
3215+performance_schema_max_file_instances 10000
3216+performance_schema_max_mutex_classes 200
3217+performance_schema_max_mutex_instances 10000
3218+performance_schema_max_rwlock_classes 30
3219+performance_schema_max_rwlock_instances 10000
3220+performance_schema_max_table_handles 1000
3221+performance_schema_max_table_instances 500
3222+performance_schema_max_thread_classes 50
3223+performance_schema_max_thread_instances 1000
3224+show engine PERFORMANCE_SCHEMA status;
3225+show status like "performance_schema%";
3226+show variables like "performance_schema_events_waits_history_long_size";
3227+Variable_name Value
3228+performance_schema_events_waits_history_long_size 0
3229+select count(*) from performance_schema.events_waits_history_long;
3230+count(*)
3231+0
3232+truncate table performance_schema.events_waits_history_long;
3233
3234=== added file 'Percona-Server/mysql-test/suite/perfschema/r/start_server_nothing.result'
3235--- Percona-Server/mysql-test/suite/perfschema/r/start_server_nothing.result 1970-01-01 00:00:00 +0000
3236+++ Percona-Server/mysql-test/suite/perfschema/r/start_server_nothing.result 2013-02-18 05:17:25 +0000
3237@@ -0,0 +1,122 @@
3238+show databases;
3239+Database
3240+information_schema
3241+mtr
3242+mysql
3243+performance_schema
3244+test
3245+select count(*) from performance_schema.performance_timers;
3246+count(*)
3247+5
3248+select count(*) from performance_schema.setup_consumers;
3249+count(*)
3250+8
3251+select count(*) > 0 from performance_schema.setup_instruments;
3252+count(*) > 0
3253+0
3254+select count(*) from performance_schema.setup_timers;
3255+count(*)
3256+1
3257+select * from performance_schema.cond_instances;
3258+select * from performance_schema.events_waits_current;
3259+select * from performance_schema.events_waits_history;
3260+select * from performance_schema.events_waits_history_long;
3261+select * from performance_schema.events_waits_summary_by_instance;
3262+select * from performance_schema.events_waits_summary_by_thread_by_event_name;
3263+select * from performance_schema.events_waits_summary_global_by_event_name;
3264+select * from performance_schema.file_instances;
3265+select * from performance_schema.file_summary_by_event_name;
3266+select * from performance_schema.file_summary_by_instance;
3267+select * from performance_schema.mutex_instances;
3268+select * from performance_schema.performance_timers;
3269+select * from performance_schema.rwlock_instances;
3270+select * from performance_schema.setup_consumers;
3271+select * from performance_schema.setup_instruments;
3272+select * from performance_schema.setup_timers;
3273+select * from performance_schema.threads;
3274+show variables like "performance_schema%";
3275+Variable_name Value
3276+performance_schema ON
3277+performance_schema_events_waits_history_long_size 0
3278+performance_schema_events_waits_history_size 0
3279+performance_schema_max_cond_classes 0
3280+performance_schema_max_cond_instances 0
3281+performance_schema_max_file_classes 0
3282+performance_schema_max_file_handles 0
3283+performance_schema_max_file_instances 0
3284+performance_schema_max_mutex_classes 0
3285+performance_schema_max_mutex_instances 0
3286+performance_schema_max_rwlock_classes 0
3287+performance_schema_max_rwlock_instances 0
3288+performance_schema_max_table_handles 1000
3289+performance_schema_max_table_instances 500
3290+performance_schema_max_thread_classes 0
3291+performance_schema_max_thread_instances 0
3292+show engine PERFORMANCE_SCHEMA status;
3293+show status like "performance_schema%";
3294+show variables like "performance_schema%";
3295+Variable_name Value
3296+performance_schema ON
3297+performance_schema_events_waits_history_long_size 0
3298+performance_schema_events_waits_history_size 0
3299+performance_schema_max_cond_classes 0
3300+performance_schema_max_cond_instances 0
3301+performance_schema_max_file_classes 0
3302+performance_schema_max_file_handles 0
3303+performance_schema_max_file_instances 0
3304+performance_schema_max_mutex_classes 0
3305+performance_schema_max_mutex_instances 0
3306+performance_schema_max_rwlock_classes 0
3307+performance_schema_max_rwlock_instances 0
3308+performance_schema_max_table_handles 1000
3309+performance_schema_max_table_instances 500
3310+performance_schema_max_thread_classes 0
3311+performance_schema_max_thread_instances 0
3312+select * from performance_schema.setup_instruments;
3313+NAME ENABLED TIMED
3314+select TIMER_NAME from performance_schema.performance_timers;
3315+TIMER_NAME
3316+CYCLE
3317+NANOSECOND
3318+MICROSECOND
3319+MILLISECOND
3320+TICK
3321+select * from performance_schema.setup_consumers;
3322+NAME ENABLED
3323+events_waits_current YES
3324+events_waits_history YES
3325+events_waits_history_long YES
3326+events_waits_summary_by_thread_by_event_name YES
3327+events_waits_summary_by_event_name YES
3328+events_waits_summary_by_instance YES
3329+file_summary_by_event_name YES
3330+file_summary_by_instance YES
3331+select NAME from performance_schema.setup_timers;
3332+NAME
3333+wait
3334+select * from performance_schema.cond_instances;
3335+NAME OBJECT_INSTANCE_BEGIN
3336+select * from performance_schema.events_waits_current;
3337+THREAD_ID EVENT_ID EVENT_NAME SOURCE TIMER_START TIMER_END TIMER_WAIT SPINS OBJECT_SCHEMA OBJECT_NAME OBJECT_TYPE OBJECT_INSTANCE_BEGIN NESTING_EVENT_ID OPERATION NUMBER_OF_BYTES FLAGS
3338+select * from performance_schema.events_waits_history;
3339+THREAD_ID EVENT_ID EVENT_NAME SOURCE TIMER_START TIMER_END TIMER_WAIT SPINS OBJECT_SCHEMA OBJECT_NAME OBJECT_TYPE OBJECT_INSTANCE_BEGIN NESTING_EVENT_ID OPERATION NUMBER_OF_BYTES FLAGS
3340+select * from performance_schema.events_waits_history_long;
3341+THREAD_ID EVENT_ID EVENT_NAME SOURCE TIMER_START TIMER_END TIMER_WAIT SPINS OBJECT_SCHEMA OBJECT_NAME OBJECT_TYPE OBJECT_INSTANCE_BEGIN NESTING_EVENT_ID OPERATION NUMBER_OF_BYTES FLAGS
3342+select * from performance_schema.events_waits_summary_by_instance;
3343+EVENT_NAME OBJECT_INSTANCE_BEGIN COUNT_STAR SUM_TIMER_WAIT MIN_TIMER_WAIT AVG_TIMER_WAIT MAX_TIMER_WAIT
3344+select * from performance_schema.events_waits_summary_by_thread_by_event_name;
3345+THREAD_ID EVENT_NAME COUNT_STAR SUM_TIMER_WAIT MIN_TIMER_WAIT AVG_TIMER_WAIT MAX_TIMER_WAIT
3346+select * from performance_schema.events_waits_summary_global_by_event_name;
3347+EVENT_NAME COUNT_STAR SUM_TIMER_WAIT MIN_TIMER_WAIT AVG_TIMER_WAIT MAX_TIMER_WAIT
3348+select * from performance_schema.file_instances;
3349+FILE_NAME EVENT_NAME OPEN_COUNT
3350+select * from performance_schema.file_summary_by_event_name;
3351+EVENT_NAME COUNT_READ COUNT_WRITE SUM_NUMBER_OF_BYTES_READ SUM_NUMBER_OF_BYTES_WRITE
3352+select * from performance_schema.file_summary_by_instance;
3353+FILE_NAME EVENT_NAME COUNT_READ COUNT_WRITE SUM_NUMBER_OF_BYTES_READ SUM_NUMBER_OF_BYTES_WRITE
3354+select * from performance_schema.mutex_instances;
3355+NAME OBJECT_INSTANCE_BEGIN LOCKED_BY_THREAD_ID
3356+select * from performance_schema.rwlock_instances;
3357+NAME OBJECT_INSTANCE_BEGIN WRITE_LOCKED_BY_THREAD_ID READ_LOCKED_BY_COUNT
3358+select * from performance_schema.threads;
3359+THREAD_ID PROCESSLIST_ID NAME
3360
3361=== added file 'Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history-master.opt'
3362--- Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history-master.opt 1970-01-01 00:00:00 +0000
3363+++ Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history-master.opt 2013-02-18 05:17:25 +0000
3364@@ -0,0 +1,2 @@
3365+--loose-enable-performance-schema
3366+--loose-performance_schema_events_waits_history_size=0
3367
3368=== added file 'Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history.test'
3369--- Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history.test 1970-01-01 00:00:00 +0000
3370+++ Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history.test 2013-02-18 05:17:25 +0000
3371@@ -0,0 +1,14 @@
3372+# Tests for PERFORMANCE_SCHEMA
3373+
3374+--source include/not_embedded.inc
3375+--source include/have_perfschema.inc
3376+
3377+--source ../include/start_server_common.inc
3378+
3379+# Expect no history
3380+show variables like "performance_schema_events_waits_history_size";
3381+select count(*) from performance_schema.events_waits_history;
3382+
3383+# Valid operation, edge case
3384+truncate table performance_schema.events_waits_history;
3385+
3386
3387=== added file 'Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history_long-master.opt'
3388--- Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history_long-master.opt 1970-01-01 00:00:00 +0000
3389+++ Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history_long-master.opt 2013-02-18 05:17:25 +0000
3390@@ -0,0 +1,2 @@
3391+--loose-enable-performance-schema
3392+--loose-performance_schema_events_waits_history_long_size=0
3393
3394=== added file 'Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history_long.test'
3395--- Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history_long.test 1970-01-01 00:00:00 +0000
3396+++ Percona-Server/mysql-test/suite/perfschema/t/start_server_no_waits_history_long.test 2013-02-18 05:17:25 +0000
3397@@ -0,0 +1,14 @@
3398+# Tests for PERFORMANCE_SCHEMA
3399+
3400+--source include/not_embedded.inc
3401+--source include/have_perfschema.inc
3402+
3403+--source ../include/start_server_common.inc
3404+
3405+# Expect no history long
3406+show variables like "performance_schema_events_waits_history_long_size";
3407+select count(*) from performance_schema.events_waits_history_long;
3408+
3409+# Valid operation, edge case
3410+truncate table performance_schema.events_waits_history_long;
3411+
3412
3413=== added file 'Percona-Server/mysql-test/suite/perfschema/t/start_server_nothing-master.opt'
3414--- Percona-Server/mysql-test/suite/perfschema/t/start_server_nothing-master.opt 1970-01-01 00:00:00 +0000
3415+++ Percona-Server/mysql-test/suite/perfschema/t/start_server_nothing-master.opt 2013-02-18 05:17:25 +0000
3416@@ -0,0 +1,19 @@
3417+--loose-enable-performance-schema
3418+
3419+--loose-performance_schema_events_waits_history_long_size=0
3420+--loose-performance_schema_events_waits_history_size=0
3421+
3422+--loose-performance_schema_max_mutex_classes=0
3423+--loose-performance_schema_max_rwlock_classes=0
3424+--loose-performance_schema_max_cond_classes=0
3425+--loose-performance_schema_max_file_classes=0
3426+--loose-performance_schema_max_thread_classes=0
3427+
3428+--loose-performance_schema_max_mutex_instances=0
3429+--loose-performance_schema_max_rwlock_instances=0
3430+--loose-performance_schema_max_cond_instances=0
3431+--loose-performance_schema_max_file_instances=0
3432+--loose-performance_schema_max_thread_instances=0
3433+
3434+--loose-performance_schema_max_file_handles=0
3435+
3436
3437=== added file 'Percona-Server/mysql-test/suite/perfschema/t/start_server_nothing.test'
3438--- Percona-Server/mysql-test/suite/perfschema/t/start_server_nothing.test 1970-01-01 00:00:00 +0000
3439+++ Percona-Server/mysql-test/suite/perfschema/t/start_server_nothing.test 2013-02-18 05:17:25 +0000
3440@@ -0,0 +1,30 @@
3441+# Tests for PERFORMANCE_SCHEMA
3442+
3443+--source include/not_embedded.inc
3444+--source include/have_perfschema.inc
3445+
3446+--source ../include/start_server_common.inc
3447+
3448+show variables like "performance_schema%";
3449+
3450+# Not empty
3451+select * from performance_schema.setup_instruments;
3452+select TIMER_NAME from performance_schema.performance_timers;
3453+select * from performance_schema.setup_consumers;
3454+select NAME from performance_schema.setup_timers;
3455+
3456+# All empty
3457+select * from performance_schema.cond_instances;
3458+select * from performance_schema.events_waits_current;
3459+select * from performance_schema.events_waits_history;
3460+select * from performance_schema.events_waits_history_long;
3461+select * from performance_schema.events_waits_summary_by_instance;
3462+select * from performance_schema.events_waits_summary_by_thread_by_event_name;
3463+select * from performance_schema.events_waits_summary_global_by_event_name;
3464+select * from performance_schema.file_instances;
3465+select * from performance_schema.file_summary_by_event_name;
3466+select * from performance_schema.file_summary_by_instance;
3467+select * from performance_schema.mutex_instances;
3468+select * from performance_schema.rwlock_instances;
3469+select * from performance_schema.threads;
3470+
3471
3472=== modified file 'Percona-Server/mysql-test/suite/rpl/r/rpl_bug31076.result'
3473--- Percona-Server/mysql-test/suite/rpl/r/rpl_bug31076.result 2010-12-19 17:15:12 +0000
3474+++ Percona-Server/mysql-test/suite/rpl/r/rpl_bug31076.result 2013-02-18 05:17:25 +0000
3475@@ -35,6 +35,7 @@
3476 KEY `visit_id` (`visit_id`),
3477 KEY `data` (`data`)
3478 ) ENGINE=MyISAM AUTO_INCREMENT=33900731 DEFAULT CHARSET=latin1;
3479+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
3480 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
3481 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
3482 BINLOG '
3483@@ -47,6 +48,7 @@
3484 TC00LjEvbXlzcWwtNC4xLjEyYS13aW4zMi56aXBPaAIC
3485 '/*!*/;
3486 SET INSERT_ID=21231039/*!*/;
3487+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
3488 use track/*!*/;
3489 SET TIMESTAMP=1190087942/*!*/;
3490 SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
3491
3492=== modified file 'Percona-Server/mysql-test/suite/rpl/r/rpl_mdev382.result'
3493--- Percona-Server/mysql-test/suite/rpl/r/rpl_mdev382.result 2012-10-10 20:32:32 +0000
3494+++ Percona-Server/mysql-test/suite/rpl/r/rpl_mdev382.result 2013-02-18 05:17:25 +0000
3495@@ -154,6 +154,7 @@
3496 master-bin.000001 # Begin_load_query # # ;file_id=#;block_len=#
3497 master-bin.000001 # Execute_load_query # # use `test`; LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/f\'le.txt' INTO TABLE `db1``; SELECT 'oops!'`.`t``1` FIELDS TERMINATED BY ',' ENCLOSED BY '\'' ESCAPED BY '\\' LINES TERMINATED BY '\n' (`a``1`, `b``2`) SET `c``3`= concat('|', "b""a'z", "!") ;file_id=#
3498 master-bin.000001 # Xid # # COMMIT /* XID */
3499+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
3500 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
3501 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
3502 DELIMITER /*!*/;
3503@@ -193,6 +194,7 @@
3504 # End of log file
3505 ROLLBACK /* added by mysqlbinlog */;
3506 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
3507+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
3508 SELECT * FROM `db1``; SELECT 'oops!'`.`t``1`;
3509 a`1 b`2 c`3
3510 fo\o bar |b"a'z!
3511@@ -242,6 +244,7 @@
3512 master-bin.000001 # User var # # @```d```=_latin1 0x78787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878 COLLATE latin1_swedish_ci
3513 master-bin.000001 # Query # # use `db1``; SELECT 'oops!'`; INSERT INTO t1 VALUES (@`a``1`+1, @`a``2`*100, @`a``3`-1, @`a``4`-1, @`b```/2, @```c`, substr(@```d```, 2, 98))
3514 master-bin.000001 # Xid # # COMMIT /* XID */
3515+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
3516 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
3517 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
3518 DELIMITER /*!*/;
3519@@ -283,6 +286,7 @@
3520 # End of log file
3521 ROLLBACK /* added by mysqlbinlog */;
3522 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
3523+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
3524 SELECT * FROM `db1``; SELECT 'oops!'`.t1 ORDER BY a1;
3525 a1 a2 a3 a4 b c d
3526 -9223372036854775808 42 9223372036854775807 18446744073709551615 -1.234560123456789e125 -1234501234567890123456789012345678901234567890123456789.0123456789 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
3527
3528=== modified file 'Percona-Server/mysql-test/suite/rpl/r/rpl_report_port.result'
3529--- Percona-Server/mysql-test/suite/rpl/r/rpl_report_port.result 2012-04-26 14:04:03 +0000
3530+++ Percona-Server/mysql-test/suite/rpl/r/rpl_report_port.result 2013-02-18 05:17:25 +0000
3531@@ -2,10 +2,12 @@
3532 [connection master]
3533 include/rpl_restart_server.inc [server_number=2 parameters: --report-port=9000]
3534 include/start_slave.inc
3535+include/wait_for_slave_param.inc [Slave_IO_State]
3536 [Slave restarted with the report-port set to some value]
3537 include/assert.inc [The value shown for the slave's port number is user specified port number which is the value set for report-port.]
3538 include/rpl_restart_server.inc [server_number=2]
3539 include/start_slave.inc
3540+include/wait_for_slave_param.inc [Slave_IO_State]
3541 [Slave restarted with the report-port set to the value of slave's port number]
3542 include/assert.inc [The default value shown for the slave's port number is the actual port number of the slave.]
3543 include/rpl_end.inc
3544
3545=== modified file 'Percona-Server/mysql-test/suite/rpl/r/rpl_rotate_logs.result'
3546--- Percona-Server/mysql-test/suite/rpl/r/rpl_rotate_logs.result 2012-02-09 17:58:33 +0000
3547+++ Percona-Server/mysql-test/suite/rpl/r/rpl_rotate_logs.result 2013-02-18 05:17:25 +0000
3548@@ -17,10 +17,8 @@
3549 Master_Log_File = 'master-bin.000001'
3550 Relay_Master_Log_File = 'master-bin.000001'
3551 include/check_slave_is_running.inc
3552-select * from t1;
3553-s
3554-Could not break slave
3555-Tried hard
3556+include/assert.inc [Table t1 should contain the first inserted line]
3557+include/assert.inc [Table t1 should contain the second inserted line]
3558 flush logs;
3559 create table t2(m int not null auto_increment primary key);
3560 insert into t2 values (34),(67),(123);
3561@@ -31,9 +29,7 @@
3562 master-bin.000002 #
3563 master-bin.000003 #
3564 create table t3 select * from temp_table;
3565-select * from t3;
3566-a
3567-testing temporary tables
3568+include/assert.inc [Data in t3 should be equal to temp_table]
3569 drop table temp_table, t3;
3570 insert into t2 values(1234);
3571 set insert_id=1234;
3572@@ -60,19 +56,15 @@
3573 Master_Log_File = 'master-bin.000003'
3574 Relay_Master_Log_File = 'master-bin.000003'
3575 include/check_slave_is_running.inc
3576-select * from t2;
3577-m
3578-34
3579-65
3580-67
3581-123
3582-1234
3583+include/assert.inc [Table t2 should still contain the first inserted line after creation]
3584+include/assert.inc [Table t2 should contain the line inserted after the purge]
3585+include/assert.inc [Table t2 should still contain the second insert line after creation]
3586+include/assert.inc [Table t2 should still contain the third inserted line after creation]
3587+include/assert.inc [Table t2 should still contain the line from the duplicated key test]
3588 create temporary table temp_table (a char(80) not null);
3589 insert into temp_table values ("testing temporary tables part 2");
3590 create table t3 (n int);
3591-select count(*) from t3 where n >= 4;
3592-count(*)
3593-100
3594+include/assert.inc [Table t3 should contain 100 lines on the master]
3595 create table t4 select * from temp_table;
3596 show binary logs;
3597 Log_name File_size
3598@@ -85,16 +77,12 @@
3599 show master status;
3600 File Position Binlog_Do_DB Binlog_Ignore_DB
3601 master-bin.000008 # <Binlog_Do_DB> <Binlog_Ignore_DB>
3602-select * from t4;
3603-a
3604-testing temporary tables part 2
3605+include/assert.inc [Data in t4 should be equal to temp_table]
3606 Master_Log_File = 'master-bin.000008'
3607 Relay_Master_Log_File = 'master-bin.000008'
3608 include/check_slave_is_running.inc
3609 lock tables t3 read;
3610-select count(*) from t3 where n >= 4;
3611-count(*)
3612-100
3613+include/assert.inc [Table t3 should contain 100 lines on the slave]
3614 unlock tables;
3615 drop table if exists t1,t2,t3,t4;
3616 End of 4.1 tests
3617
3618=== modified file 'Percona-Server/mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result'
3619--- Percona-Server/mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result 2013-01-09 23:45:25 +0000
3620+++ Percona-Server/mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result 2013-02-18 05:17:25 +0000
3621@@ -150,6 +150,7 @@
3622 5 2006-02-22 00:00:00 Tested in Texas 11
3623
3624 --- Test 2 position test --
3625+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
3626 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
3627 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
3628 DELIMITER /*!*/;
3629@@ -170,8 +171,10 @@
3630 # End of log file
3631 ROLLBACK /* added by mysqlbinlog */;
3632 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
3633+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
3634
3635 --- Test 3 First Remote test --
3636+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
3637 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
3638 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
3639 DELIMITER /*!*/;
3640@@ -201,6 +204,7 @@
3641 # End of log file
3642 ROLLBACK /* added by mysqlbinlog */;
3643 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
3644+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
3645
3646 --- Test 4 Second Remote test --
3647 DROP TABLE t1;
3648@@ -274,6 +278,7 @@
3649 5 2006-02-22 00:00:00 Tested in Texas 11
3650
3651 --- Test 5 LOAD DATA --
3652+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
3653 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
3654 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
3655 DELIMITER /*!*/;
3656@@ -281,8 +286,10 @@
3657 # End of log file
3658 ROLLBACK /* added by mysqlbinlog */;
3659 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
3660+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
3661
3662 --- Test 6 reading stdin --
3663+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
3664 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
3665 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
3666 DELIMITER /*!*/;
3667@@ -312,8 +319,10 @@
3668 # End of log file
3669 ROLLBACK /* added by mysqlbinlog */;
3670 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
3671+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
3672
3673 --- Test 7 reading stdin w/position --
3674+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
3675 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
3676 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
3677 DELIMITER /*!*/;
3678@@ -334,6 +343,7 @@
3679 # End of log file
3680 ROLLBACK /* added by mysqlbinlog */;
3681 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
3682+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
3683
3684 --- Test 8 switch internal charset --
3685 stop slave;
3686
3687=== modified file 'Percona-Server/mysql-test/suite/rpl/r/rpl_sp.result'
3688--- Percona-Server/mysql-test/suite/rpl/r/rpl_sp.result 2013-01-09 23:45:25 +0000
3689+++ Percona-Server/mysql-test/suite/rpl/r/rpl_sp.result 2013-02-18 05:17:25 +0000
3690@@ -652,6 +652,7 @@
3691 Db Name Type Definer Modified Created Security_type Comment character_set_client collation_connection Database Collation
3692 test mysqltestbug36570_f1 FUNCTION root@localhost t t DEFINER latin1 latin1_swedish_ci latin1_swedish_ci
3693 flush logs;
3694+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
3695 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
3696 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
3697 DELIMITER /*!*/;
3698@@ -1178,6 +1179,7 @@
3699 # End of log file
3700 ROLLBACK /* added by mysqlbinlog */;
3701 /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
3702+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
3703 use test;
3704 drop procedure mysqltestbug36570_p1;
3705 drop procedure ` mysqltestbug36570_p2`;
3706
3707=== modified file 'Percona-Server/mysql-test/suite/rpl/t/disabled.def'
3708--- Percona-Server/mysql-test/suite/rpl/t/disabled.def 2011-05-24 06:40:38 +0000
3709+++ Percona-Server/mysql-test/suite/rpl/t/disabled.def 2013-02-18 05:17:25 +0000
3710@@ -13,5 +13,4 @@
3711 rpl_row_create_table : Bug#11759274 2010-02-27 andrei failed different way than earlier with bug#45576
3712 rpl_spec_variables : BUG#11755836 2009-10-27 jasonh rpl_spec_variables fails on PB2 hpux
3713 rpl_get_master_version_and_clock : Bug#11766137 Jan 05 2011 joro Valgrind warnings rpl_get_master_version_and_clock
3714-rpl_row_until : BUG#59543 Jan 26 2011 alfranio Replication test from eits suite rpl_row_until times out
3715 rpl_stm_until : BUG#59543 Jan 26 2011 alfranio Replication test from eits suite rpl_row_until times out
3716
3717=== modified file 'Percona-Server/mysql-test/suite/rpl/t/rpl_bug31076.test'
3718--- Percona-Server/mysql-test/suite/rpl/t/rpl_bug31076.test 2010-12-19 17:15:12 +0000
3719+++ Percona-Server/mysql-test/suite/rpl/t/rpl_bug31076.test 2013-02-18 05:17:25 +0000
3720@@ -40,6 +40,7 @@
3721 KEY `data` (`data`)
3722 ) ENGINE=MyISAM AUTO_INCREMENT=33900731 DEFAULT CHARSET=latin1;
3723
3724+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
3725 /*!40019 SET @@session.max_insert_delayed_threads=0*/;
3726 /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
3727 --delimiter /*!*/;
3728@@ -119,6 +120,7 @@
3729 # 9c90ded 2d 63 6f 6e 6e 65 63 74 6f 72 2d 6a 61 76 61 2d |.connector.java.|
3730 # 9c90dfd 33 2e 30 2e 31 37 2d 67 61 2e 7a 69 70 |3.0.17.ga.zip|
3731 # Query thread_id=28278824 exec_time=0 error_code=0
3732+/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
3733 use track/*!*/;
3734 SET TIMESTAMP=1190087942/*!*/;
3735 SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
3736
3737=== modified file 'Percona-Server/mysql-test/suite/rpl/t/rpl_report_port.test'
3738--- Percona-Server/mysql-test/suite/rpl/t/rpl_report_port.test 2012-04-26 14:04:03 +0000
3739+++ Percona-Server/mysql-test/suite/rpl/t/rpl_report_port.test 2013-02-18 05:17:25 +0000
3740@@ -32,6 +32,9 @@
3741
3742 connection slave;
3743 --source include/start_slave.inc
3744+--let $slave_param= Slave_IO_State
3745+--let $slave_param_value= Waiting for master to send event
3746+--source include/wait_for_slave_param.inc
3747
3748 --echo [Slave restarted with the report-port set to some value]
3749 connection master;
3750@@ -52,6 +55,9 @@
3751
3752 connection slave;
3753 --source include/start_slave.inc
3754+--let $slave_param= Slave_IO_State
3755+--let $slave_param_value= Waiting for master to send event
3756+--source include/wait_for_slave_param.inc
3757
3758 connection master;
3759 sync_slave_with_master;
3760
3761=== modified file 'Percona-Server/mysql-test/suite/rpl/t/rpl_rotate_logs.test'
3762--- Percona-Server/mysql-test/suite/rpl/t/rpl_rotate_logs.test 2012-02-09 17:58:33 +0000
3763+++ Percona-Server/mysql-test/suite/rpl/t/rpl_rotate_logs.test 2013-02-18 05:17:25 +0000
3764@@ -66,7 +66,17 @@
3765 let $status_items= Master_Log_File, Relay_Master_Log_File;
3766 source include/show_slave_status.inc;
3767 source include/check_slave_is_running.inc;
3768-select * from t1;
3769+
3770+--let $assert_text= Table t1 should contain the first inserted line
3771+--let $query_result= query_get_value(select * from t1, "s", 1)
3772+--let $assert_cond= "$query_result" = "Could not break slave"
3773+--source include/assert.inc
3774+
3775+--let $assert_text= Table t1 should contain the second inserted line
3776+--let $query_result= query_get_value(select * from t1, "s", 2)
3777+--let $assert_cond= "$query_result" = "Tried hard"
3778+--source include/assert.inc
3779+
3780 connection master;
3781 flush logs;
3782 create table t2(m int not null auto_increment primary key);
3783@@ -77,7 +87,11 @@
3784
3785 sync_slave_with_master;
3786
3787-select * from t3;
3788+--let $query_result= query_get_value(select * from t3, "a", 1)
3789+--let $assert_text= Data in t3 should be equal to temp_table
3790+--let $assert_cond= "$query_result" = "testing temporary tables"
3791+--source include/assert.inc
3792+
3793 connection master;
3794 drop table temp_table, t3;
3795
3796@@ -136,11 +150,30 @@
3797 sync_slave_with_master;
3798 source include/show_slave_status.inc;
3799 source include/check_slave_is_running.inc;
3800-select * from t2;
3801+
3802+--let $assert_text= Table t2 should still contain the first inserted line after creation
3803+--let $assert_cond= [select * from t2,"m",1] = 34
3804+--source include/assert.inc
3805+
3806+--let $assert_text= Table t2 should contain the line inserted after the purge
3807+--let $assert_cond= [select * from t2,"m",2] = 65
3808+--source include/assert.inc
3809+
3810+--let $assert_text= Table t2 should still contain the second insert line after creation
3811+--let $assert_cond= [select * from t2,"m",3] = 67
3812+--source include/assert.inc
3813+
3814+--let $assert_text= Table t2 should still contain the third inserted line after creation
3815+--let $assert_cond= [select * from t2,"m",4] = 123
3816+--source include/assert.inc
3817+
3818+--let $assert_text= Table t2 should still contain the line from the duplicated key test
3819+--let $assert_cond= [select * from t2,"m",5] = 1234
3820+--source include/assert.inc
3821
3822 #
3823 # Test forcing the replication log to rotate
3824-#
3825+#
3826
3827 connection master;
3828 create temporary table temp_table (a char(80) not null);
3829@@ -156,19 +189,31 @@
3830 dec $1;
3831 }
3832 enable_query_log;
3833-select count(*) from t3 where n >= 4;
3834+
3835+--let $assert_text= Table t3 should contain 100 lines on the master
3836+--let $assert_cond= [select count(*) from t3 where n >= 4,"count(*)",1] = 100
3837+--source include/assert.inc
3838+
3839 create table t4 select * from temp_table;
3840 source include/show_binary_logs.inc;
3841 source include/show_master_status.inc;
3842 sync_slave_with_master;
3843-select * from t4;
3844+
3845+--let $query_result= query_get_value(select * from t4, "a", 1)
3846+--let $assert_text= Data in t4 should be equal to temp_table
3847+--let $assert_cond= "$query_result" = "testing temporary tables part 2"
3848+--source include/assert.inc
3849
3850 source include/show_slave_status.inc;
3851 source include/check_slave_is_running.inc;
3852 # because of concurrent insert, the table may not be up to date
3853 # if we do not lock
3854 lock tables t3 read;
3855-select count(*) from t3 where n >= 4;
3856+
3857+--let $assert_text= Table t3 should contain 100 lines on the slave
3858+--let $assert_cond= [select count(*) from t3 where n >= 4,"count(*)",1] = 100
3859+--source include/assert.inc
3860+
3861 unlock tables;
3862 #clean up
3863 connection master;
3864
3865=== added file 'Percona-Server/mysql-test/suite/sys_vars/r/innodb_limit_optimistic_insert_debug_basic.result'
3866--- Percona-Server/mysql-test/suite/sys_vars/r/innodb_limit_optimistic_insert_debug_basic.result 1970-01-01 00:00:00 +0000
3867+++ Percona-Server/mysql-test/suite/sys_vars/r/innodb_limit_optimistic_insert_debug_basic.result 2013-02-18 05:17:25 +0000
3868@@ -0,0 +1,58 @@
3869+SET @start_global_value = @@global.innodb_limit_optimistic_insert_debug;
3870+SELECT @start_global_value;
3871+@start_global_value
3872+0
3873+select @@global.innodb_limit_optimistic_insert_debug;
3874+@@global.innodb_limit_optimistic_insert_debug
3875+0
3876+select @@session.innodb_limit_optimistic_insert_debug;
3877+ERROR HY000: Variable 'innodb_limit_optimistic_insert_debug' is a GLOBAL variable
3878+show global variables like 'innodb_limit_optimistic_insert_debug';
3879+Variable_name Value
3880+innodb_limit_optimistic_insert_debug 0
3881+show session variables like 'innodb_limit_optimistic_insert_debug';
3882+Variable_name Value
3883+innodb_limit_optimistic_insert_debug 0
3884+select * from information_schema.global_variables where variable_name='innodb_limit_optimistic_insert_debug';
3885+VARIABLE_NAME VARIABLE_VALUE
3886+INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG 0
3887+select * from information_schema.session_variables where variable_name='innodb_limit_optimistic_insert_debug';
3888+VARIABLE_NAME VARIABLE_VALUE
3889+INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG 0
3890+set global innodb_limit_optimistic_insert_debug=1;
3891+select @@global.innodb_limit_optimistic_insert_debug;
3892+@@global.innodb_limit_optimistic_insert_debug
3893+1
3894+select * from information_schema.global_variables where variable_name='innodb_limit_optimistic_insert_debug';
3895+VARIABLE_NAME VARIABLE_VALUE
3896+INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG 1
3897+select * from information_schema.session_variables where variable_name='innodb_limit_optimistic_insert_debug';
3898+VARIABLE_NAME VARIABLE_VALUE
3899+INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG 1
3900+set @@global.innodb_limit_optimistic_insert_debug=0;
3901+select @@global.innodb_limit_optimistic_insert_debug;
3902+@@global.innodb_limit_optimistic_insert_debug
3903+0
3904+select * from information_schema.global_variables where variable_name='innodb_limit_optimistic_insert_debug';
3905+VARIABLE_NAME VARIABLE_VALUE
3906+INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG 0
3907+select * from information_schema.session_variables where variable_name='innodb_limit_optimistic_insert_debug';
3908+VARIABLE_NAME VARIABLE_VALUE
3909+INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG 0
3910+set session innodb_limit_optimistic_insert_debug='some';
3911+ERROR HY000: Variable 'innodb_limit_optimistic_insert_debug' is a GLOBAL variable and should be set with SET GLOBAL
3912+set @@session.innodb_limit_optimistic_insert_debug='some';
3913+ERROR HY000: Variable 'innodb_limit_optimistic_insert_debug' is a GLOBAL variable and should be set with SET GLOBAL
3914+set global innodb_limit_optimistic_insert_debug=1.1;
3915+ERROR 42000: Incorrect argument type to variable 'innodb_limit_optimistic_insert_debug'
3916+set global innodb_limit_optimistic_insert_debug='foo';
3917+ERROR 42000: Incorrect argument type to variable 'innodb_limit_optimistic_insert_debug'
3918+set global innodb_limit_optimistic_insert_debug=-2;
3919+Warnings:
3920+Warning 1292 Truncated incorrect innodb_limit_optimistic_insert_d value: '-2'
3921+set global innodb_limit_optimistic_insert_debug=1e1;
3922+ERROR 42000: Incorrect argument type to variable 'innodb_limit_optimistic_insert_debug'
3923+SET @@global.innodb_limit_optimistic_insert_debug = @start_global_value;
3924+SELECT @@global.innodb_limit_optimistic_insert_debug;
3925+@@global.innodb_limit_optimistic_insert_debug
3926+0
3927
3928=== added file 'Percona-Server/mysql-test/suite/sys_vars/r/innodb_print_all_deadlocks_basic.result'
3929--- Percona-Server/mysql-test/suite/sys_vars/r/innodb_print_all_deadlocks_basic.result 1970-01-01 00:00:00 +0000
3930+++ Percona-Server/mysql-test/suite/sys_vars/r/innodb_print_all_deadlocks_basic.result 2013-02-18 05:17:25 +0000
3931@@ -0,0 +1,22 @@
3932+SELECT @@innodb_print_all_deadlocks;
3933+@@innodb_print_all_deadlocks
3934+0
3935+SET GLOBAL innodb_print_all_deadlocks=1;
3936+CREATE TABLE t1 (c1 INT, PRIMARY KEY (c1)) ENGINE=INNODB;
3937+INSERT INTO t1 VALUES (123);
3938+CREATE TABLE t2 (c2 INT, PRIMARY KEY (c2)) ENGINE=INNODB;
3939+INSERT INTO t2 VALUES (456);
3940+BEGIN;
3941+SELECT * FROM t1 FOR UPDATE;
3942+c1
3943+123
3944+BEGIN;
3945+SELECT * FROM t2 FOR UPDATE;
3946+c2
3947+456
3948+SELECT * FROM t2 FOR UPDATE;
3949+SELECT * FROM t1 FOR UPDATE;
3950+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
3951+DROP TABLE t2;
3952+DROP TABLE t1;
3953+SET GLOBAL innodb_print_all_deadlocks=default;
3954
3955=== added file 'Percona-Server/mysql-test/suite/sys_vars/r/innodb_trx_purge_view_update_only_debug_basic.result'
3956--- Percona-Server/mysql-test/suite/sys_vars/r/innodb_trx_purge_view_update_only_debug_basic.result 1970-01-01 00:00:00 +0000
3957+++ Percona-Server/mysql-test/suite/sys_vars/r/innodb_trx_purge_view_update_only_debug_basic.result 2013-02-18 05:17:25 +0000
3958@@ -0,0 +1,61 @@
3959+SET @start_global_value = @@global.innodb_trx_purge_view_update_only_debug;
3960+SELECT @start_global_value;
3961+@start_global_value
3962+0
3963+select @@global.innodb_trx_purge_view_update_only_debug in (0, 1);
3964+@@global.innodb_trx_purge_view_update_only_debug in (0, 1)
3965+1
3966+select @@global.innodb_trx_purge_view_update_only_debug;
3967+@@global.innodb_trx_purge_view_update_only_debug
3968+0
3969+select @@session.innodb_trx_purge_view_update_only_debug;
3970+ERROR HY000: Variable 'innodb_trx_purge_view_update_only_debug' is a GLOBAL variable
3971+show global variables like 'innodb_trx_purge_view_update_only_debug';
3972+Variable_name Value
3973+innodb_trx_purge_view_update_only_debug OFF
3974+show session variables like 'innodb_trx_purge_view_update_only_debug';
3975+Variable_name Value
3976+innodb_trx_purge_view_update_only_debug OFF
3977+select * from information_schema.global_variables where variable_name='innodb_trx_purge_view_update_only_debug';
3978+VARIABLE_NAME VARIABLE_VALUE
3979+INNODB_TRX_PURGE_VIEW_UPDATE_ONLY_DEBUG OFF
3980+select * from information_schema.session_variables where variable_name='innodb_trx_purge_view_update_only_debug';
3981+VARIABLE_NAME VARIABLE_VALUE
3982+INNODB_TRX_PURGE_VIEW_UPDATE_ONLY_DEBUG OFF
3983+set global innodb_trx_purge_view_update_only_debug=1;
3984+select @@global.innodb_trx_purge_view_update_only_debug;
3985+@@global.innodb_trx_purge_view_update_only_debug
3986+1
3987+select * from information_schema.global_variables where variable_name='innodb_trx_purge_view_update_only_debug';
3988+VARIABLE_NAME VARIABLE_VALUE
3989+INNODB_TRX_PURGE_VIEW_UPDATE_ONLY_DEBUG ON
3990+select * from information_schema.session_variables where variable_name='innodb_trx_purge_view_update_only_debug';
3991+VARIABLE_NAME VARIABLE_VALUE
3992+INNODB_TRX_PURGE_VIEW_UPDATE_ONLY_DEBUG ON
3993+set @@global.innodb_trx_purge_view_update_only_debug=0;
3994+select @@global.innodb_trx_purge_view_update_only_debug;
3995+@@global.innodb_trx_purge_view_update_only_debug
3996+0
3997+select * from information_schema.global_variables where variable_name='innodb_trx_purge_view_update_only_debug';
3998+VARIABLE_NAME VARIABLE_VALUE
3999+INNODB_TRX_PURGE_VIEW_UPDATE_ONLY_DEBUG OFF
4000+select * from information_schema.session_variables where variable_name='innodb_trx_purge_view_update_only_debug';
4001+VARIABLE_NAME VARIABLE_VALUE
4002+INNODB_TRX_PURGE_VIEW_UPDATE_ONLY_DEBUG OFF
4003+set session innodb_trx_purge_view_update_only_debug='some';
4004+ERROR HY000: Variable 'innodb_trx_purge_view_update_only_debug' is a GLOBAL variable and should be set with SET GLOBAL
4005+set @@session.innodb_trx_purge_view_update_only_debug='some';
4006+ERROR HY000: Variable 'innodb_trx_purge_view_update_only_debug' is a GLOBAL variable and should be set with SET GLOBAL
4007+set global innodb_trx_purge_view_update_only_debug=1.1;
4008+ERROR 42000: Incorrect argument type to variable 'innodb_trx_purge_view_update_only_debug'
4009+set global innodb_trx_purge_view_update_only_debug='foo';
4010+ERROR 42000: Variable 'innodb_trx_purge_view_update_only_debug' can't be set to the value of 'foo'
4011+set global innodb_trx_purge_view_update_only_debug=-2;
4012+set global innodb_trx_purge_view_update_only_debug=1e1;
4013+ERROR 42000: Incorrect argument type to variable 'innodb_trx_purge_view_update_only_debug'
4014+set global innodb_trx_purge_view_update_only_debug=2;
4015+ERROR 42000: Variable 'innodb_trx_purge_view_update_only_debug' can't be set to the value of '2'
4016+SET @@global.innodb_trx_purge_view_update_only_debug = @start_global_value;
4017+SELECT @@global.innodb_trx_purge_view_update_only_debug;
4018+@@global.innodb_trx_purge_view_update_only_debug
4019+0
4020
4021=== removed file 'Percona-Server/mysql-test/suite/sys_vars/r/ndb_log_update_as_write_basic.result'
4022--- Percona-Server/mysql-test/suite/sys_vars/r/ndb_log_update_as_write_basic.result 2008-12-19 15:12:15 +0000
4023+++ Percona-Server/mysql-test/suite/sys_vars/r/ndb_log_update_as_write_basic.result 1970-01-01 00:00:00 +0000
4024@@ -1,14 +0,0 @@
4025-SET @global_start_value = @@global.ndb_log_update_as_write;
4026-ERROR HY000: Unknown system variable 'ndb_log_update_as_write'
4027-SELECT @@global.ndb_log_update_as_write;
4028-ERROR HY000: Unknown system variable 'ndb_log_update_as_write'
4029-'Bug: The value is not a system variable or atleast not supported in version 5.1.22'
4030-'#--------------------FN_DYNVARS_102_01------------------------#'
4031-'#---------------------FN_DYNVARS_102_02-------------------------#'
4032-'#--------------------FN_DYNVARS_102_03------------------------#'
4033-'#--------------------FN_DYNVARS_102_04-------------------------#'
4034-'#-------------------FN_DYNVARS_102_05----------------------------#'
4035-'#----------------------FN_DYNVARS_102_06------------------------#'
4036-'#----------------------FN_DYNVARS_102_07------------------------#'
4037-'#---------------------FN_DYNVARS_102_08-------------------------#'
4038-'#---------------------FN_DYNVARS_102_09----------------------#'
4039
4040=== removed file 'Percona-Server/mysql-test/suite/sys_vars/r/ndb_log_updated_only_basic.result'
4041--- Percona-Server/mysql-test/suite/sys_vars/r/ndb_log_updated_only_basic.result 2008-12-19 15:12:15 +0000
4042+++ Percona-Server/mysql-test/suite/sys_vars/r/ndb_log_updated_only_basic.result 1970-01-01 00:00:00 +0000
4043@@ -1,14 +0,0 @@
4044-SET @global_start_value = @@global.ndb_log_updated_only;
4045-ERROR HY000: Unknown system variable 'ndb_log_updated_only'
4046-SELECT @@global.ndb_log_updated_only;
4047-ERROR HY000: Unknown system variable 'ndb_log_updated_only'
4048-'Bug: The value is not a system variable or atleast not supported in version 5.1.22'
4049-'#--------------------FN_DYNVARS_103_01------------------------#'
4050-'#---------------------FN_DYNVARS_103_02-------------------------#'
4051-'#--------------------FN_DYNVARS_103_03------------------------#'
4052-'#--------------------FN_DYNVARS_103_04-------------------------#'
4053-'#-------------------FN_DYNVARS_103_05----------------------------#'
4054-'#----------------------FN_DYNVARS_103_06------------------------#'
4055-'#----------------------FN_DYNVARS_103_07------------------------#'
4056-'#---------------------FN_DYNVARS_103_08-------------------------#'
4057-'#---------------------FN_DYNVARS_103_09----------------------#'
4058
4059=== added file 'Percona-Server/mysql-test/suite/sys_vars/r/pseudo_slave_mode_basic.result'
4060--- Percona-Server/mysql-test/suite/sys_vars/r/pseudo_slave_mode_basic.result 1970-01-01 00:00:00 +0000
4061+++ Percona-Server/mysql-test/suite/sys_vars/r/pseudo_slave_mode_basic.result 2013-02-18 05:17:25 +0000
4062@@ -0,0 +1,119 @@
4063+SET @session_start_value = @@session.pseudo_slave_mode;
4064+SELECT @session_start_value;
4065+@session_start_value
4066+0
4067+'#--------------------FN_DYNVARS_156_01------------------------#'
4068+SET @@session.pseudo_slave_mode = 0;
4069+Warnings:
4070+Warning 1231 'pseudo_slave_mode' change was ineffective.
4071+SET @@session.pseudo_slave_mode = DEFAULT;
4072+Warnings:
4073+Warning 1231 'pseudo_slave_mode' change was ineffective.
4074+SELECT @@session.pseudo_slave_mode;
4075+@@session.pseudo_slave_mode
4076+0
4077+SET @@session.pseudo_slave_mode = 1;
4078+SET @@session.pseudo_slave_mode = DEFAULT;
4079+Warnings:
4080+Warning 1231 Slave applier execution mode not active, statement ineffective.
4081+SELECT @@session.pseudo_slave_mode;
4082+@@session.pseudo_slave_mode
4083+0
4084+'#---------------------FN_DYNVARS_156_02-------------------------#'
4085+SET pseudo_slave_mode = 1;
4086+SELECT @@pseudo_slave_mode;
4087+@@pseudo_slave_mode
4088+1
4089+SELECT session.pseudo_slave_mode;
4090+ERROR 42S02: Unknown table 'session' in field list
4091+SELECT local.pseudo_slave_mode;
4092+ERROR 42S02: Unknown table 'local' in field list
4093+SET session pseudo_slave_mode = 0;
4094+Warnings:
4095+Warning 1231 Slave applier execution mode not active, statement ineffective.
4096+SELECT @@session.pseudo_slave_mode;
4097+@@session.pseudo_slave_mode
4098+0
4099+'#--------------------FN_DYNVARS_156_03------------------------#'
4100+SET @@session.pseudo_slave_mode = 0;
4101+Warnings:
4102+Warning 1231 'pseudo_slave_mode' change was ineffective.
4103+SELECT @@session.pseudo_slave_mode;
4104+@@session.pseudo_slave_mode
4105+0
4106+SET @@session.pseudo_slave_mode = 1;
4107+SELECT @@session.pseudo_slave_mode;
4108+@@session.pseudo_slave_mode
4109+1
4110+'#--------------------FN_DYNVARS_156_04-------------------------#'
4111+SET @@session.pseudo_slave_mode = -1;
4112+ERROR 42000: Variable 'pseudo_slave_mode' can't be set to the value of '-1'
4113+SET @@session.pseudo_slave_mode = 2;
4114+ERROR 42000: Variable 'pseudo_slave_mode' can't be set to the value of '2'
4115+SET @@session.pseudo_slave_mode = "T";
4116+ERROR 42000: Variable 'pseudo_slave_mode' can't be set to the value of 'T'
4117+SET @@session.pseudo_slave_mode = "Y";
4118+ERROR 42000: Variable 'pseudo_slave_mode' can't be set to the value of 'Y'
4119+SET @@session.pseudo_slave_mode = TRÜE;
4120+ERROR 42000: Variable 'pseudo_slave_mode' can't be set to the value of 'TRÜE'
4121+SET @@session.pseudo_slave_mode = ÕN;
4122+ERROR 42000: Variable 'pseudo_slave_mode' can't be set to the value of 'ÕN'
4123+SET @@session.pseudo_slave_mode = OF;
4124+ERROR 42000: Variable 'pseudo_slave_mode' can't be set to the value of 'OF'
4125+SET @@session.pseudo_slave_mode = ÓFF;
4126+ERROR 42000: Variable 'pseudo_slave_mode' can't be set to the value of 'ÓFF'
4127+SET @@session.pseudo_slave_mode = '¹';
4128+ERROR 42000: Variable 'pseudo_slave_mode' can't be set to the value of '¹'
4129+SET @@session.pseudo_slave_mode = NO;
4130+ERROR 42000: Variable 'pseudo_slave_mode' can't be set to the value of 'NO'
4131+'#-------------------FN_DYNVARS_156_05----------------------------#'
4132+SET @@global.pseudo_slave_mode = 0;
4133+ERROR HY000: Variable 'pseudo_slave_mode' is a SESSION variable and can't be used with SET GLOBAL
4134+SELECT @@global.pseudo_slave_mode;
4135+ERROR HY000: Variable 'pseudo_slave_mode' is a SESSION variable
4136+'#----------------------FN_DYNVARS_156_06------------------------#'
4137+SELECT count(VARIABLE_VALUE) FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='pseudo_slave_mode';
4138+count(VARIABLE_VALUE)
4139+1
4140+'#----------------------FN_DYNVARS_156_07------------------------#'
4141+SELECT IF(@@session.pseudo_slave_mode, "ON", "OFF") = VARIABLE_VALUE
4142+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
4143+WHERE VARIABLE_NAME='pseudo_slave_mode';
4144+IF(@@session.pseudo_slave_mode, "ON", "OFF") = VARIABLE_VALUE
4145+1
4146+SELECT @@session.pseudo_slave_mode;
4147+@@session.pseudo_slave_mode
4148+1
4149+SELECT VARIABLE_VALUE
4150+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
4151+WHERE VARIABLE_NAME='pseudo_slave_mode';
4152+VARIABLE_VALUE
4153+ON
4154+'#---------------------FN_DYNVARS_156_08-------------------------#'
4155+SET @@session.pseudo_slave_mode = OFF;
4156+Warnings:
4157+Warning 1231 Slave applier execution mode not active, statement ineffective.
4158+SELECT @@session.pseudo_slave_mode;
4159+@@session.pseudo_slave_mode
4160+0
4161+SET @@session.pseudo_slave_mode = ON;
4162+SELECT @@session.pseudo_slave_mode;
4163+@@session.pseudo_slave_mode
4164+1
4165+'#---------------------FN_DYNVARS_156_09----------------------#'
4166+SET @@session.pseudo_slave_mode = TRUE;
4167+SELECT @@session.pseudo_slave_mode;
4168+@@session.pseudo_slave_mode
4169+1
4170+SET @@session.pseudo_slave_mode = FALSE;
4171+Warnings:
4172+Warning 1231 Slave applier execution mode not active, statement ineffective.
4173+SELECT @@session.pseudo_slave_mode;
4174+@@session.pseudo_slave_mode
4175+0
4176+SET @@session.pseudo_slave_mode = @session_start_value;
4177+Warnings:
4178+Warning 1231 'pseudo_slave_mode' change was ineffective.
4179+SELECT @@session.pseudo_slave_mode;
4180+@@session.pseudo_slave_mode
4181+0
4182
4183=== added file 'Percona-Server/mysql-test/suite/sys_vars/t/innodb_limit_optimistic_insert_debug_basic.test'
4184--- Percona-Server/mysql-test/suite/sys_vars/t/innodb_limit_optimistic_insert_debug_basic.test 1970-01-01 00:00:00 +0000
4185+++ Percona-Server/mysql-test/suite/sys_vars/t/innodb_limit_optimistic_insert_debug_basic.test 2013-02-18 05:17:25 +0000
4186@@ -0,0 +1,50 @@
4187+--source include/have_innodb.inc
4188+--source include/have_debug.inc
4189+
4190+SET @start_global_value = @@global.innodb_limit_optimistic_insert_debug;
4191+SELECT @start_global_value;
4192+
4193+#
4194+# exists as global only
4195+#
4196+select @@global.innodb_limit_optimistic_insert_debug;
4197+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
4198+select @@session.innodb_limit_optimistic_insert_debug;
4199+show global variables like 'innodb_limit_optimistic_insert_debug';
4200+show session variables like 'innodb_limit_optimistic_insert_debug';
4201+select * from information_schema.global_variables where variable_name='innodb_limit_optimistic_insert_debug';
4202+select * from information_schema.session_variables where variable_name='innodb_limit_optimistic_insert_debug';
4203+
4204+#
4205+# show that it's writable
4206+#
4207+set global innodb_limit_optimistic_insert_debug=1;
4208+select @@global.innodb_limit_optimistic_insert_debug;
4209+select * from information_schema.global_variables where variable_name='innodb_limit_optimistic_insert_debug';
4210+select * from information_schema.session_variables where variable_name='innodb_limit_optimistic_insert_debug';
4211+set @@global.innodb_limit_optimistic_insert_debug=0;
4212+select @@global.innodb_limit_optimistic_insert_debug;
4213+select * from information_schema.global_variables where variable_name='innodb_limit_optimistic_insert_debug';
4214+select * from information_schema.session_variables where variable_name='innodb_limit_optimistic_insert_debug';
4215+--error ER_GLOBAL_VARIABLE
4216+set session innodb_limit_optimistic_insert_debug='some';
4217+--error ER_GLOBAL_VARIABLE
4218+set @@session.innodb_limit_optimistic_insert_debug='some';
4219+
4220+#
4221+# incorrect types
4222+#
4223+--error ER_WRONG_TYPE_FOR_VAR
4224+set global innodb_limit_optimistic_insert_debug=1.1;
4225+--error ER_WRONG_TYPE_FOR_VAR
4226+set global innodb_limit_optimistic_insert_debug='foo';
4227+set global innodb_limit_optimistic_insert_debug=-2;
4228+--error ER_WRONG_TYPE_FOR_VAR
4229+set global innodb_limit_optimistic_insert_debug=1e1;
4230+
4231+#
4232+# Cleanup
4233+#
4234+
4235+SET @@global.innodb_limit_optimistic_insert_debug = @start_global_value;
4236+SELECT @@global.innodb_limit_optimistic_insert_debug;
4237
4238=== added file 'Percona-Server/mysql-test/suite/sys_vars/t/innodb_print_all_deadlocks_basic.test'
4239--- Percona-Server/mysql-test/suite/sys_vars/t/innodb_print_all_deadlocks_basic.test 1970-01-01 00:00:00 +0000
4240+++ Percona-Server/mysql-test/suite/sys_vars/t/innodb_print_all_deadlocks_basic.test 2013-02-18 05:17:25 +0000
4241@@ -0,0 +1,48 @@
4242+#
4243+# innodb_print_all_deadlocks
4244+#
4245+
4246+-- source include/have_innodb.inc
4247+
4248+SELECT @@innodb_print_all_deadlocks;
4249+
4250+SET GLOBAL innodb_print_all_deadlocks=1;
4251+
4252+CREATE TABLE t1 (c1 INT, PRIMARY KEY (c1)) ENGINE=INNODB;
4253+INSERT INTO t1 VALUES (123);
4254+
4255+CREATE TABLE t2 (c2 INT, PRIMARY KEY (c2)) ENGINE=INNODB;
4256+INSERT INTO t2 VALUES (456);
4257+
4258+-- connect (con1,localhost,root,,)
4259+-- connect (con2,localhost,root,,)
4260+
4261+-- connection con1
4262+BEGIN;
4263+SELECT * FROM t1 FOR UPDATE;
4264+
4265+-- connection con2
4266+BEGIN;
4267+SELECT * FROM t2 FOR UPDATE;
4268+
4269+-- connection con1
4270+-- send
4271+SELECT * FROM t2 FOR UPDATE;
4272+
4273+-- connection con2
4274+let $wait_condition=
4275+SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST
4276+WHERE state = 'Sending data' AND info = 'SELECT * FROM t2 FOR UPDATE';
4277+-- source include/wait_condition.inc
4278+-- error ER_LOCK_DEADLOCK
4279+SELECT * FROM t1 FOR UPDATE;
4280+
4281+-- connection default
4282+
4283+-- disconnect con1
4284+-- disconnect con2
4285+
4286+DROP TABLE t2;
4287+DROP TABLE t1;
4288+
4289+SET GLOBAL innodb_print_all_deadlocks=default;
4290
4291=== added file 'Percona-Server/mysql-test/suite/sys_vars/t/innodb_trx_purge_view_update_only_debug_basic.test'
4292--- Percona-Server/mysql-test/suite/sys_vars/t/innodb_trx_purge_view_update_only_debug_basic.test 1970-01-01 00:00:00 +0000
4293+++ Percona-Server/mysql-test/suite/sys_vars/t/innodb_trx_purge_view_update_only_debug_basic.test 2013-02-18 05:17:25 +0000
4294@@ -0,0 +1,53 @@
4295+--source include/have_innodb.inc
4296+--source include/have_debug.inc
4297+
4298+SET @start_global_value = @@global.innodb_trx_purge_view_update_only_debug;
4299+SELECT @start_global_value;
4300+
4301+#
4302+# exists as global only
4303+#
4304+select @@global.innodb_trx_purge_view_update_only_debug in (0, 1);
4305+select @@global.innodb_trx_purge_view_update_only_debug;
4306+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
4307+select @@session.innodb_trx_purge_view_update_only_debug;
4308+show global variables like 'innodb_trx_purge_view_update_only_debug';
4309+show session variables like 'innodb_trx_purge_view_update_only_debug';
4310+select * from information_schema.global_variables where variable_name='innodb_trx_purge_view_update_only_debug';
4311+select * from information_schema.session_variables where variable_name='innodb_trx_purge_view_update_only_debug';
4312+
4313+#
4314+# show that it's writable
4315+#
4316+set global innodb_trx_purge_view_update_only_debug=1;
4317+select @@global.innodb_trx_purge_view_update_only_debug;
4318+select * from information_schema.global_variables where variable_name='innodb_trx_purge_view_update_only_debug';
4319+select * from information_schema.session_variables where variable_name='innodb_trx_purge_view_update_only_debug';
4320+set @@global.innodb_trx_purge_view_update_only_debug=0;
4321+select @@global.innodb_trx_purge_view_update_only_debug;
4322+select * from information_schema.global_variables where variable_name='innodb_trx_purge_view_update_only_debug';
4323+select * from information_schema.session_variables where variable_name='innodb_trx_purge_view_update_only_debug';
4324+--error ER_GLOBAL_VARIABLE
4325+set session innodb_trx_purge_view_update_only_debug='some';
4326+--error ER_GLOBAL_VARIABLE
4327+set @@session.innodb_trx_purge_view_update_only_debug='some';
4328+
4329+#
4330+# incorrect types
4331+#
4332+--error ER_WRONG_TYPE_FOR_VAR
4333+set global innodb_trx_purge_view_update_only_debug=1.1;
4334+--error ER_WRONG_VALUE_FOR_VAR
4335+set global innodb_trx_purge_view_update_only_debug='foo';
4336+set global innodb_trx_purge_view_update_only_debug=-2;
4337+--error ER_WRONG_TYPE_FOR_VAR
4338+set global innodb_trx_purge_view_update_only_debug=1e1;
4339+--error ER_WRONG_VALUE_FOR_VAR
4340+set global innodb_trx_purge_view_update_only_debug=2;
4341+
4342+#
4343+# Cleanup
4344+#
4345+
4346+SET @@global.innodb_trx_purge_view_update_only_debug = @start_global_value;
4347+SELECT @@global.innodb_trx_purge_view_update_only_debug;
4348
4349=== removed file 'Percona-Server/mysql-test/suite/sys_vars/t/ndb_log_update_as_write_basic.test'
4350--- Percona-Server/mysql-test/suite/sys_vars/t/ndb_log_update_as_write_basic.test 2010-07-15 11:13:30 +0000
4351+++ Percona-Server/mysql-test/suite/sys_vars/t/ndb_log_update_as_write_basic.test 1970-01-01 00:00:00 +0000
4352@@ -1,216 +0,0 @@
4353-############## mysql-test\t\ndb_log_update_as_write_basic.test ###############
4354-# #
4355-# Variable Name: ndb_log_update_as_write #
4356-# Scope: GLOBAL #
4357-# Access Type: Dynamic #
4358-# Data Type: boolean #
4359-# Default Value: #
4360-# Range: #
4361-# #
4362-# #
4363-# Creation Date: 2008-02-07 #
4364-# Author: Rizwan #
4365-# #
4366-# Description: Test Cases of Dynamic System Variable ndb_log_update_as_write #
4367-# that checks the behavior of this variable in the following ways#
4368-# * Default Value #
4369-# * Valid & Invalid values #
4370-# * Scope & Access method #
4371-# * Data Integrity #
4372-# #
4373-# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
4374-# server-system-variables.html #
4375-# #
4376-###############################################################################
4377-############## mysql-test\t\ndb_log_update_as_write_basic.test ################
4378-# #
4379-# Variable Name: ndb_log_update_as_write #
4380-# Scope: GLOBAL & SESSION #
4381-# Access Type: Dynamic #
4382-# Data Type: Numeric #
4383-# Default Value: 1 #
4384-# Range: 1 - 65536 #
4385-# #
4386-# #
4387-# Creation Date: 2008-02-07 #
4388-# Author: Rizwan Maredia #
4389-# #
4390-# Description: Test Cases of Dynamic System Variable ndb_log_update_as_write #
4391-# that checks the behavior of this variable in the following ways #
4392-# * Default Value #
4393-# * Valid & Invalid values #
4394-# * Scope & Access method #
4395-# * Data Integrity #
4396-# #
4397-# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
4398-# server-system-variables.html #
4399-# #
4400-################################################################################
4401-################# mysql-test\t\ndb_log_update_as_write_basic.test ######
4402-# #
4403-# #
4404-# Creation Date: 2008-02-07 #
4405-# Author: Rizwan Maredia #
4406-# #
4407-# Description: Test Cases of Dynamic System Variable #
4408-# ndb_log_update_as_write that check behavior of this #
4409-# variable with valid values, invalid values, #
4410-# accessing variable with scope that is #
4411-# allowed and with scope that is now allowed. #
4412-# Scope: Global #
4413-# Reference: http://dev.mysql.com/doc/refman/5.1/en/server-system #
4414-# -variables.html #
4415-# #
4416-########################################################################
4417-
4418---source include/load_sysvars.inc
4419-
4420-########################################################################
4421-# START OF ndb_log_update_as_write TESTS #
4422-########################################################################
4423-
4424-
4425-################################################################################
4426-# Saving initial value of ndb_log_update_as_write in a temporary variable #
4427-################################################################################
4428-
4429-
4430---Error ER_UNKNOWN_SYSTEM_VARIABLE
4431-SET @global_start_value = @@global.ndb_log_update_as_write;
4432---Error ER_UNKNOWN_SYSTEM_VARIABLE
4433-SELECT @@global.ndb_log_update_as_write;
4434-
4435---echo 'Bug: The value is not a system variable or atleast not supported in version 5.1.22'
4436-
4437-
4438---echo '#--------------------FN_DYNVARS_102_01------------------------#'
4439-########################################################################
4440-# Display the DEFAULT value of ndb_log_update_as_write #
4441-########################################################################
4442-
4443-#SET @@ndb_log_update_as_write = 0;
4444-#SET @@ndb_log_update_as_write = DEFAULT;
4445-#SELECT @@ndb_log_update_as_write;
4446-#
4447-#SET @@ndb_log_update_as_write = 1;
4448-#SET @@ndb_log_update_as_write = DEFAULT;
4449-#SELECT @@ndb_log_update_as_write;
4450-
4451-
4452---echo '#---------------------FN_DYNVARS_102_02-------------------------#'
4453-#############################################################################
4454-# Check if ndb_log_update_as_write can be accessed with and without @@ sign #
4455-#############################################################################
4456-
4457-#SET ndb_log_update_as_write = 1;
4458-#SELECT @@ndb_log_update_as_write;
4459-#--Error ER_UNKNOWN_TABLE
4460-#SELECT global.ndb_log_update_as_write;
4461-#
4462-#SET global ndb_log_update_as_write = 1;
4463-#SELECT @@global.ndb_log_update_as_write;
4464-
4465-
4466---echo '#--------------------FN_DYNVARS_102_03------------------------#'
4467-########################################################################
4468-# Change the value of ndb_log_update_as_write to a valid value #
4469-########################################################################
4470-
4471-#SET @@global.ndb_log_update_as_write = 0;
4472-#SELECT @@global.ndb_log_update_as_write;
4473-#SET @@global.ndb_log_update_as_write = 1;
4474-#SELECT @@global.ndb_log_update_as_write;
4475-## a value of 2 is used to just flush logs and then shutdown cold.
4476-#SET @@global.ndb_log_update_as_write = 2;
4477-#SELECT @@global.ndb_log_update_as_write;
4478-
4479---echo '#--------------------FN_DYNVARS_102_04-------------------------#'
4480-###########################################################################
4481-# Change the value of ndb_log_update_as_write to invalid value #
4482-###########################################################################
4483-
4484-#--Error ER_WRONG_VALUE_FOR_VAR
4485-#SET @@global.ndb_log_update_as_write = -1;
4486-#--Error ER_WRONG_VALUE_FOR_VAR
4487-#SET @@global.ndb_log_update_as_write = TRU;
4488-#--Error ER_WRONG_VALUE_FOR_VAR
4489-#SET @@global.ndb_log_update_as_write = TRUE_F;
4490-#--Error ER_WRONG_VALUE_FOR_VAR
4491-#SET @@global.ndb_log_update_as_write = FALS;
4492-#--Error ER_WRONG_VALUE_FOR_VAR
4493-#SET @@global.ndb_log_update_as_write = OON;
4494-#--Error ER_WRONG_VALUE_FOR_VAR
4495-#SET @@global.ndb_log_update_as_write = ONN;
4496-#--Error ER_WRONG_VALUE_FOR_VAR
4497-#SET @@global.ndb_log_update_as_write = OOFF;
4498-#--Error ER_WRONG_VALUE_FOR_VAR
4499-#SET @@global.ndb_log_update_as_write = 0FF;
4500-#--Error ER_WRONG_VALUE_FOR_VAR
4501-#SET @@global.ndb_log_update_as_write = ' 1';
4502-#--Error ER_WRONG_VALUE_FOR_VAR
4503-#SET @@global.ndb_log_update_as_write = "0 ";
4504-
4505-
4506-
4507---echo '#-------------------FN_DYNVARS_102_05----------------------------#'
4508-###########################################################################
4509-# Test if accessing session ndb_log_update_as_write gives error #
4510-###########################################################################
4511-
4512-#--Error ER_LOCAL_VARIABLE
4513-#SET @@session.ndb_log_update_as_write = 0;
4514-#--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
4515-#SET @@ndb_log_update_as_write = 0;
4516-#--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
4517-#SET @@local.ndb_log_update_as_write = 0;
4518-#--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
4519-#SELECT @@session.ndb_log_update_as_write;
4520-#--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
4521-#SELECT @@local.ndb_log_update_as_write;
4522-
4523---echo '#----------------------FN_DYNVARS_102_06------------------------#'
4524-#########################################################################
4525-# Check if the value in SESSION Table contains variable value #
4526-#########################################################################
4527-
4528-#SELECT count(VARIABLE_VALUE) AS res_is_0 FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='ndb_log_update_as_write';
4529-
4530-
4531---echo '#----------------------FN_DYNVARS_102_07------------------------#'
4532-#########################################################################
4533-# Check if the value in GLOBAL Table matches value in variable #
4534-#########################################################################
4535-
4536-#SELECT @@global.ndb_log_update_as_write = VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='ndb_log_update_as_write';
4537-
4538-
4539---echo '#---------------------FN_DYNVARS_102_08-------------------------#'
4540-###################################################################
4541-# Check if ON and OFF values can be used on variable #
4542-###################################################################
4543-
4544-#SET @@ndb_log_update_as_write = OFF;
4545-#SELECT @@ndb_log_update_as_write;
4546-#SET @@ndb_log_update_as_write = ON;
4547-#SELECT @@ndb_log_update_as_write;
4548-
4549---echo '#---------------------FN_DYNVARS_102_09----------------------#'
4550-###################################################################
4551-# Check if TRUE and FALSE values can be used on variable #
4552-###################################################################
4553-
4554-#SET @@ndb_log_update_as_write = TRUE;
4555-#SELECT @@ndb_log_update_as_write;
4556-#SET @@ndb_log_update_as_write = 'FALSE';
4557-#SELECT @@ndb_log_update_as_write;
4558-
4559-##############################
4560-# Restore initial value #
4561-##############################
4562-
4563-#SET @@ndb_log_update_as_write = @global_start_value;
4564-#SELECT @@ndb_log_update_as_write;
4565-
4566-########################################################################
4567-# END OF ndb_log_update_as_write TESTS #
4568-########################################################################
4569
4570=== removed file 'Percona-Server/mysql-test/suite/sys_vars/t/ndb_log_updated_only_basic.test'
4571--- Percona-Server/mysql-test/suite/sys_vars/t/ndb_log_updated_only_basic.test 2010-07-15 11:13:30 +0000
4572+++ Percona-Server/mysql-test/suite/sys_vars/t/ndb_log_updated_only_basic.test 1970-01-01 00:00:00 +0000
4573@@ -1,216 +0,0 @@
4574-############## mysql-test\t\ndb_log_updated_only_basic.test ###############
4575-# #
4576-# Variable Name: ndb_log_updated_only #
4577-# Scope: GLOBAL #
4578-# Access Type: Dynamic #
4579-# Data Type: boolean #
4580-# Default Value: #
4581-# Range: #
4582-# #
4583-# #
4584-# Creation Date: 2008-02-07 #
4585-# Author: Rizwan #
4586-# #
4587-# Description: Test Cases of Dynamic System Variable ndb_log_updated_only #
4588-# that checks the behavior of this variable in the following ways#
4589-# * Default Value #
4590-# * Valid & Invalid values #
4591-# * Scope & Access method #
4592-# * Data Integrity #
4593-# #
4594-# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
4595-# server-system-variables.html #
4596-# #
4597-###############################################################################
4598-############## mysql-test\t\ndb_log_updated_only_basic.test ################
4599-# #
4600-# Variable Name: ndb_log_updated_only #
4601-# Scope: GLOBAL & SESSION #
4602-# Access Type: Dynamic #
4603-# Data Type: Numeric #
4604-# Default Value: 1 #
4605-# Range: 1 - 65536 #
4606-# #
4607-# #
4608-# Creation Date: 2008-02-07 #
4609-# Author: Rizwan Maredia #
4610-# #
4611-# Description: Test Cases of Dynamic System Variable ndb_log_updated_only #
4612-# that checks the behavior of this variable in the following ways #
4613-# * Default Value #
4614-# * Valid & Invalid values #
4615-# * Scope & Access method #
4616-# * Data Integrity #
4617-# #
4618-# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
4619-# server-system-variables.html #
4620-# #
4621-################################################################################
4622-################# mysql-test\t\ndb_log_updated_only_basic.test #########
4623-# #
4624-# #
4625-# Creation Date: 2008-02-07 #
4626-# Author: Rizwan Maredia #
4627-# #
4628-# Description: Test Cases of Dynamic System Variable #
4629-# ndb_log_updated_only that check behavior of this #
4630-# variable with valid values, invalid values, #
4631-# accessing variable with scope that is #
4632-# allowed and with scope that is now allowed. #
4633-# Scope: Global #
4634-# Reference: http://dev.mysql.com/doc/refman/5.1/en/server-system #
4635-# -variables.html #
4636-# #
4637-########################################################################
4638-
4639---source include/load_sysvars.inc
4640-
4641-########################################################################
4642-# START OF ndb_log_updated_only TESTS #
4643-########################################################################
4644-
4645-
4646-################################################################################
4647-# Saving initial value of ndb_log_updated_only in a temporary variable #
4648-################################################################################
4649-
4650-
4651---Error ER_UNKNOWN_SYSTEM_VARIABLE
4652-SET @global_start_value = @@global.ndb_log_updated_only;
4653---Error ER_UNKNOWN_SYSTEM_VARIABLE
4654-SELECT @@global.ndb_log_updated_only;
4655-
4656---echo 'Bug: The value is not a system variable or atleast not supported in version 5.1.22'
4657-
4658-
4659---echo '#--------------------FN_DYNVARS_103_01------------------------#'
4660-########################################################################
4661-# Display the DEFAULT value of ndb_log_updated_only #
4662-########################################################################
4663-
4664-#SET @@ndb_log_updated_only = 0;
4665-#SET @@ndb_log_updated_only = DEFAULT;
4666-#SELECT @@ndb_log_updated_only;
4667-#
4668-#SET @@ndb_log_updated_only = 1;
4669-#SET @@ndb_log_updated_only = DEFAULT;
4670-#SELECT @@ndb_log_updated_only;
4671-
4672-
4673---echo '#---------------------FN_DYNVARS_103_02-------------------------#'
4674-#############################################################################
4675-# Check if ndb_log_updated_only can be accessed with and without @@ sign #
4676-#############################################################################
4677-
4678-#SET ndb_log_updated_only = 1;
4679-#SELECT @@ndb_log_updated_only;
4680-#--Error ER_UNKNOWN_TABLE
4681-#SELECT global.ndb_log_updated_only;
4682-#
4683-#SET global ndb_log_updated_only = 1;
4684-#SELECT @@global.ndb_log_updated_only;
4685-
4686-
4687---echo '#--------------------FN_DYNVARS_103_03------------------------#'
4688-########################################################################
4689-# Change the value of ndb_log_updated_only to a valid value #
4690-########################################################################
4691-
4692-#SET @@global.ndb_log_updated_only = 0;
4693-#SELECT @@global.ndb_log_updated_only;
4694-#SET @@global.ndb_log_updated_only = 1;
4695-#SELECT @@global.ndb_log_updated_only;
4696-## a value of 2 is used to just flush logs and then shutdown cold.
4697-#SET @@global.ndb_log_updated_only = 2;
4698-#SELECT @@global.ndb_log_updated_only;
4699-
4700---echo '#--------------------FN_DYNVARS_103_04-------------------------#'
4701-###########################################################################
4702-# Change the value of ndb_log_updated_only to invalid value #
4703-###########################################################################
4704-
4705-#--Error ER_WRONG_VALUE_FOR_VAR
4706-#SET @@global.ndb_log_updated_only = -1;
4707-#--Error ER_WRONG_VALUE_FOR_VAR
4708-#SET @@global.ndb_log_updated_only = TRU;
4709-#--Error ER_WRONG_VALUE_FOR_VAR
4710-#SET @@global.ndb_log_updated_only = TRUE_F;
4711-#--Error ER_WRONG_VALUE_FOR_VAR
4712-#SET @@global.ndb_log_updated_only = FALS;
4713-#--Error ER_WRONG_VALUE_FOR_VAR
4714-#SET @@global.ndb_log_updated_only = OON;
4715-#--Error ER_WRONG_VALUE_FOR_VAR
4716-#SET @@global.ndb_log_updated_only = ONN;
4717-#--Error ER_WRONG_VALUE_FOR_VAR
4718-#SET @@global.ndb_log_updated_only = OOFF;
4719-#--Error ER_WRONG_VALUE_FOR_VAR
4720-#SET @@global.ndb_log_updated_only = 0FF;
4721-#--Error ER_WRONG_VALUE_FOR_VAR
4722-#SET @@global.ndb_log_updated_only = ' 1';
4723-#--Error ER_WRONG_VALUE_FOR_VAR
4724-#SET @@global.ndb_log_updated_only = "0 ";
4725-
4726-
4727-
4728---echo '#-------------------FN_DYNVARS_103_05----------------------------#'
4729-###########################################################################
4730-# Test if accessing session ndb_log_updated_only gives error #
4731-###########################################################################
4732-
4733-#--Error ER_LOCAL_VARIABLE
4734-#SET @@session.ndb_log_updated_only = 0;
4735-#--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
4736-#SET @@ndb_log_updated_only = 0;
4737-#--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
4738-#SET @@local.ndb_log_updated_only = 0;
4739-#--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
4740-#SELECT @@session.ndb_log_updated_only;
4741-#--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
4742-#SELECT @@local.ndb_log_updated_only;
4743-
4744---echo '#----------------------FN_DYNVARS_103_06------------------------#'
4745-#########################################################################
4746-# Check if the value in SESSION Table contains variable value #
4747-#########################################################################
4748-
4749-#SELECT count(VARIABLE_VALUE) AS res_is_0 FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='ndb_log_updated_only';
4750-
4751-
4752---echo '#----------------------FN_DYNVARS_103_07------------------------#'
4753-#########################################################################
4754-# Check if the value in GLOBAL Table matches value in variable #
4755-#########################################################################
4756-
4757-#SELECT @@global.ndb_log_updated_only = VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='ndb_log_updated_only';
4758-
4759-
4760---echo '#---------------------FN_DYNVARS_103_08-------------------------#'
4761-###################################################################
4762-# Check if ON and OFF values can be used on variable #
4763-###################################################################
4764-
4765-#SET @@ndb_log_updated_only = OFF;
4766-#SELECT @@ndb_log_updated_only;
4767-#SET @@ndb_log_updated_only = ON;
4768-#SELECT @@ndb_log_updated_only;
4769-
4770---echo '#---------------------FN_DYNVARS_103_09----------------------#'
4771-###################################################################
4772-# Check if TRUE and FALSE values can be used on variable #
4773-###################################################################
4774-
4775-#SET @@ndb_log_updated_only = TRUE;
4776-#SELECT @@ndb_log_updated_only;
4777-#SET @@ndb_log_updated_only = 'FALSE';
4778-#SELECT @@ndb_log_updated_only;
4779-
4780-##############################
4781-# Restore initial value #
4782-##############################
4783-
4784-#SET @@ndb_log_updated_only = @global_start_value;
4785-#SELECT @@ndb_log_updated_only;
4786-
4787-########################################################################
4788-# END OF ndb_log_updated_only TESTS #
4789-########################################################################
4790
4791=== added file 'Percona-Server/mysql-test/suite/sys_vars/t/pseudo_slave_mode_basic.test'
4792--- Percona-Server/mysql-test/suite/sys_vars/t/pseudo_slave_mode_basic.test 1970-01-01 00:00:00 +0000
4793+++ Percona-Server/mysql-test/suite/sys_vars/t/pseudo_slave_mode_basic.test 2013-02-18 05:17:25 +0000
4794@@ -0,0 +1,168 @@
4795+####################### mysql-test\t\pseudo_slave_mode_basic.test ###################
4796+# #
4797+# Variable Name: pseudo_slave_mode #
4798+# Scope: SESSION #
4799+# Access Type: Dynamic #
4800+# Data Type: boolean #
4801+# Default Value: #
4802+# Valid Values: 0,1 #
4803+# #
4804+# #
4805+# Creation Date: 2012-11-16 #
4806+# #
4807+# Description: Test Cases of Dynamic System Variable pseudo_slave_mode #
4808+# that checks the behavior of this variable in the following ways#
4809+# * Default Value #
4810+# * Valid & Invalid values #
4811+# * Scope & Access method #
4812+# * Data Integrity #
4813+# #
4814+# Reference: http://dev.mysql.com/doc/refman/5.5/en/ #
4815+# server-system-variables.html #
4816+# #
4817+###############################################################################
4818+
4819+--source include/load_sysvars.inc
4820+
4821+########################################################################
4822+# START OF pseudo_slave_mode TESTS #
4823+########################################################################
4824+
4825+
4826+##############################################################################
4827+# Saving initial value of pseudo_slave_mode in a temporary variable #
4828+##############################################################################
4829+
4830+SET @session_start_value = @@session.pseudo_slave_mode;
4831+SELECT @session_start_value;
4832+
4833+--echo '#--------------------FN_DYNVARS_156_01------------------------#'
4834+########################################################################
4835+# Display the DEFAULT value of pseudo_slave_mode #
4836+########################################################################
4837+
4838+SET @@session.pseudo_slave_mode = 0;
4839+SET @@session.pseudo_slave_mode = DEFAULT;
4840+SELECT @@session.pseudo_slave_mode;
4841+
4842+SET @@session.pseudo_slave_mode = 1;
4843+SET @@session.pseudo_slave_mode = DEFAULT;
4844+SELECT @@session.pseudo_slave_mode;
4845+
4846+
4847+--echo '#---------------------FN_DYNVARS_156_02-------------------------#'
4848+#############################################################################
4849+# Check if pseudo_slave_mode can be accessed with and without @@ sign #
4850+#############################################################################
4851+
4852+SET pseudo_slave_mode = 1;
4853+SELECT @@pseudo_slave_mode;
4854+
4855+--Error ER_UNKNOWN_TABLE
4856+SELECT session.pseudo_slave_mode;
4857+
4858+--Error ER_UNKNOWN_TABLE
4859+SELECT local.pseudo_slave_mode;
4860+
4861+SET session pseudo_slave_mode = 0;
4862+SELECT @@session.pseudo_slave_mode;
4863+
4864+
4865+--echo '#--------------------FN_DYNVARS_156_03------------------------#'
4866+########################################################################
4867+# change the value of pseudo_slave_mode to a valid value #
4868+########################################################################
4869+
4870+SET @@session.pseudo_slave_mode = 0;
4871+SELECT @@session.pseudo_slave_mode;
4872+SET @@session.pseudo_slave_mode = 1;
4873+SELECT @@session.pseudo_slave_mode;
4874+
4875+
4876+--echo '#--------------------FN_DYNVARS_156_04-------------------------#'
4877+###########################################################################
4878+# Change the value of pseudo_slave_mode to invalid value #
4879+###########################################################################
4880+
4881+--Error ER_WRONG_VALUE_FOR_VAR
4882+SET @@session.pseudo_slave_mode = -1;
4883+--Error ER_WRONG_VALUE_FOR_VAR
4884+SET @@session.pseudo_slave_mode = 2;
4885+--Error ER_WRONG_VALUE_FOR_VAR
4886+SET @@session.pseudo_slave_mode = "T";
4887+--Error ER_WRONG_VALUE_FOR_VAR
4888+SET @@session.pseudo_slave_mode = "Y";
4889+--Error ER_WRONG_VALUE_FOR_VAR
4890+SET @@session.pseudo_slave_mode = TRÜE;
4891+--Error ER_WRONG_VALUE_FOR_VAR
4892+SET @@session.pseudo_slave_mode = ÕN;
4893+--Error ER_WRONG_VALUE_FOR_VAR
4894+SET @@session.pseudo_slave_mode = OF;
4895+--Error ER_WRONG_VALUE_FOR_VAR
4896+SET @@session.pseudo_slave_mode = ÓFF;
4897+--Error ER_WRONG_VALUE_FOR_VAR
4898+SET @@session.pseudo_slave_mode = '¹';
4899+--Error ER_WRONG_VALUE_FOR_VAR
4900+SET @@session.pseudo_slave_mode = NO;
4901+
4902+
4903+--echo '#-------------------FN_DYNVARS_156_05----------------------------#'
4904+###########################################################################
4905+# Test if accessing global pseudo_slave_mode gives error #
4906+###########################################################################
4907+
4908+--error ER_LOCAL_VARIABLE
4909+SET @@global.pseudo_slave_mode = 0;
4910+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
4911+SELECT @@global.pseudo_slave_mode;
4912+
4913+--echo '#----------------------FN_DYNVARS_156_06------------------------#'
4914+#########################################################################
4915+# Check if the value in SESSION Table contains variable value #
4916+#########################################################################
4917+
4918+SELECT count(VARIABLE_VALUE) FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='pseudo_slave_mode';
4919+
4920+--echo '#----------------------FN_DYNVARS_156_07------------------------#'
4921+#########################################################################
4922+# Check if the value in SESSION Table matches value in variable #
4923+#########################################################################
4924+
4925+SELECT IF(@@session.pseudo_slave_mode, "ON", "OFF") = VARIABLE_VALUE
4926+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
4927+WHERE VARIABLE_NAME='pseudo_slave_mode';
4928+SELECT @@session.pseudo_slave_mode;
4929+SELECT VARIABLE_VALUE
4930+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
4931+WHERE VARIABLE_NAME='pseudo_slave_mode';
4932+
4933+--echo '#---------------------FN_DYNVARS_156_08-------------------------#'
4934+###################################################################
4935+# Check if ON and OFF values can be used on variable #
4936+###################################################################
4937+
4938+SET @@session.pseudo_slave_mode = OFF;
4939+SELECT @@session.pseudo_slave_mode;
4940+SET @@session.pseudo_slave_mode = ON;
4941+SELECT @@session.pseudo_slave_mode;
4942+
4943+--echo '#---------------------FN_DYNVARS_156_09----------------------#'
4944+###################################################################
4945+# Check if TRUE and FALSE values can be used on variable #
4946+###################################################################
4947+
4948+SET @@session.pseudo_slave_mode = TRUE;
4949+SELECT @@session.pseudo_slave_mode;
4950+SET @@session.pseudo_slave_mode = FALSE;
4951+SELECT @@session.pseudo_slave_mode;
4952+
4953+##############################
4954+# Restore initial value #
4955+##############################
4956+
4957+SET @@session.pseudo_slave_mode = @session_start_value;
4958+SELECT @@session.pseudo_slave_mode;
4959+
4960+###############################################################
4961+# END OF pseudo_slave_mode TESTS #
4962+###############################################################
4963
4964=== modified file 'Percona-Server/mysql-test/t/mysqldump.test'
4965--- Percona-Server/mysql-test/t/mysqldump.test 2012-11-28 05:09:57 +0000
4966+++ Percona-Server/mysql-test/t/mysqldump.test 2013-02-18 05:17:25 +0000
4967@@ -2347,12 +2347,17 @@
4968 --echo # Note : In the following dump the transaction
4969 --echo # should start only after the logs are
4970 --echo # flushed, as 'flush logs' causes implicit
4971---echo # commit starting 5.5.
4972+--echo # commit starting 5.5.Also, as stderr is
4973+--echo # unbuffered, it is redirected to a different
4974+--echo # file to avoid diffs due to bad stdout/stderr
4975+--echo # order in the output.
4976 --echo
4977 --echo #### Dump starts here ####
4978 --replace_regex /-- Server version.*// /-- MySQL dump .*// /-- Dump completed on .*/-- Dump completed/
4979---exec $MYSQL_DUMP --verbose --single-transaction --flush-log b12809202_db --result-file $MYSQLTEST_VARDIR/tmp/stfl.sql 2>&1
4980---remove_file $MYSQLTEST_VARDIR/tmp/stfl.sql
4981+--exec $MYSQL_DUMP --verbose --single-transaction --flush-log b12809202_db 2>$MYSQLTEST_VARDIR/tmp/b12809202_stderr.sql
4982+--echo
4983+--echo ## stderr ##
4984+--cat_file $MYSQLTEST_VARDIR/tmp/b12809202_stderr.sql
4985 --echo
4986 --echo #### Dump ends here ####
4987
4988@@ -2360,6 +2365,7 @@
4989 DROP TABLE b12809202_db.t1;
4990 DROP TABLE b12809202_db.t2;
4991 DROP DATABASE b12809202_db;
4992+--remove_file $MYSQLTEST_VARDIR/tmp/b12809202_stderr.sql
4993
4994 --echo #
4995 --echo # Delete all existing binary logs.
4996
4997=== modified file 'Percona-Server/mysql-test/t/percona_innodb_version.test'
4998--- Percona-Server/mysql-test/t/percona_innodb_version.test 2012-04-18 23:26:42 +0000
4999+++ Percona-Server/mysql-test/t/percona_innodb_version.test 2013-02-18 05:17:25 +0000
5000@@ -4,5 +4,5 @@
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches