~percona-dev/percona-server/bug693818

« back to all changes in this revision

Viewing changes to mysql-test/slow_extended.patch/percona_slow_extended-slave_statements.test

  • Committer: Alexey Kopytov
  • Date: 2010-12-24 16:44:23 UTC
  • Revision ID: akopytov@gmail.com-20101224164423-f24rvg9u37aeqee0
Bug #693818: funcs_1.storedproc fails on 12.4

The problem was that the slow_extended patch changed
mysql_execute_command() so that thd->row_count is unconditionally reset
to 1 before statement execution. This could lead to incorrectly reported
row numbers in warning or error messages for stored routines.

The reason for resetting row_count in slow_extended.patch is that we
would like to see separate stats for individual statements in stored
routines. The solution is to remember the row_count value at the start
of a statement execution instead of resetting it. This way we can
calculate the number of rows corresponding to the last statement by
subtracting the original value from the current one.

Since the regression tests for slow_extended were broken on Mac OS X,
they were also fixed as a part of this bugfix.

Show diffs side-by-side

added added

removed removed

Lines of Context:
125
125
-- echo # Analyse master slow_query_log
126
126
let $i=7;
127
127
let $k=1;
128
 
let $cmd=cat $MYSQLTEST_VARDIR/mysqld.1/data/percona_log_slow_slave_statements-master.log | grep;
129
128
while($i)
130
129
{
131
 
    let $current_cmd = $cmd "INSERT INTO t VALUES ($k)" | wc -l;
132
 
    exec $current_cmd;
 
130
    --let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_log_slow_slave_statements-master.log
 
131
    --let grep_pattern = INSERT INTO t VALUES \($k\)
 
132
    --source include/grep.inc
133
133
    dec $i;
134
134
    inc $k;
135
135
}
137
137
-- echo # Analyse slave slow_query_log
138
138
let $i=7;
139
139
let $k=1;
140
 
let $cmd=cat $MYSQLTEST_VARDIR/mysqld.2/data/percona_log_slow_slave_statements-slave.log | grep;
141
140
while($i)
142
141
{
143
 
    let $current_cmd = $cmd "INSERT INTO t VALUES ($k)" | wc -l;
144
 
    exec $current_cmd;
 
142
    --let grep_file = $MYSQLTEST_VARDIR/mysqld.2/data/percona_log_slow_slave_statements-slave.log
 
143
    --let grep_pattern = INSERT INTO t VALUES \($k\)
 
144
    --source include/grep.inc
145
145
    dec $i;
146
146
    inc $k;
147
147
}