Hi!
Looks good.
Ok to push after fixing issues below.
On Aug 27, Evgeny Potemkin wrote:
> #At file:///work/bzr_trees/37908-5.1-opt/
>
> 2583 Evgeny Potemkin 2008-08-27
> Bug#37908: Skipped access right check caused server crash.
>
> per-file messages:
> sql/sql_parse.cc
> Bug#37908: Skipped access right check caused server crash.
> Now the check_table_access function is called when the SHOW STATUS statement
> uses any table except information.STATUS.
> sql/sql_yacc.yy
> Bug#37908: Skipped access right check caused server crash.
> For the SHOW PROCEDURE/FUNCTION STATUS the 'mysql.proc' table isn't added
> to the table list anymore as there is no need.
> === modified file 'mysql-test/t/status.test'
> --- a/mysql-test/t/status.test 2007-12-14 23:27:40 +0000
> +++ b/mysql-test/t/status.test 2008-08-26 20:40:59 +0000
...
> +--error 1142
> +select * from db37908.t1;
> +--error 1142
> +show status where variable_name ='uptime' and 1 in (select f1 from db37908.t1);
> +--error 1142
> +show status where variable_name ='uptime' and 2 in (select f1 from db37908.t1);
> +--error 1142
> +show status where variable_name ='uptime' and 2 in (select * from db37908.t1);
why many queries ? do they test different code paths ?
> +--error 1142
> +show procedure status where name ='proc37908' and 1 in (select f1 from db37908.t1);
Add tests for "show function status", no "show events".
And a complex test with a subquery that invokes stored function, that
tries to insert something into a table.
> +connection root;
> +drop database db37908;
Regards / Mit vielen Grüßen,
Sergei
--
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Sergei Golubchik <serg@stripped>
/ /|_/ / // /\ \/ /_/ / /__ Principal Software Engineer/Server Architect
/_/ /_/\_, /___/\___\_\___/ Sun Microsystems GmbH, HRB München 161028
<___/ Sonnenallee 1, 85551 Kirchheim-Heimstetten
Geschäftsführer: Thomas Schroeder, Wolfgang Engels, Dr. Roland Boemer
Vorsitzender des Aufsichtsrates: Martin Häring