#At file:///Users/mattiasj/mysql-bzr/b47902-51/ based on revid:vasil.dimov@stripped
3539 Mattias Jonsson 2011-01-10
Bug#47902: partition_recover_myisam fails with --ps-protocol
The problem was that the warnings was never written out
when running with --ps-protocol. This was because the
warnings only appeared during the prepare phase, not
the execute phase.
Solved by not clearing the warnings from the prepare phase
if there was no other warnings.
If there are warnings from the execute phase, it is very
likely to be the same as from the prepare phase. My tests
show that if not clearing the warnings from the prepare
phase when there are warnings from the execute phase, there
will be duplicated warnings in the result.
Only reset the prepare warnings if there are warnings from
the execute phase. Otherwise these warnings will never be
=== modified file 'client/mysqltest.cc'
--- a/client/mysqltest.cc 2010-12-19 17:07:28 +0000
+++ b/client/mysqltest.cc 2011-01-10 22:42:37 +0000
@@ -7241,8 +7241,12 @@ void run_query_stmt(MYSQL *mysql, struct
mysql_free_result(res); /* Free normal result set with meta data */
- /* Clear prepare warnings */
- dynstr_set(&ds_prepare_warnings, NULL);
+ Clear prepare warnings if there are execute warnings,
+ since they are probably duplicated.
+ if (ds_execute_warnings.length || mysql->warning_count)
+ dynstr_set(&ds_prepare_warnings, NULL);
Attachment: [text/bzr-bundle] email@example.com
|• bzr commit into mysql-5.1 branch (mattias.jonsson:3539) Bug#47902||Mattias Jonsson||10 Jan|