Hi, Alexey! On Sep 10, Alexey Botchkov wrote: > > For example, I'd think it connects to the current server, internally. > > But then, why does it need host and user? > > Initially i thought it can be put in the thread's security_ctx so functions > like CURRENT_USER > return these values. After some more meditation i decided that it > doesn't seem to be useful and just removed these arguments.
What security context are you using now? root? whatever happen to be in the THD? What if you create a new THD? > > > +ADD_DEFINITIONS(-DMYSQL_SERVER) > > Why? > Couldn't figure out how to get rid of it. > Well your trick with the '#if !defined(MYSQL_SERVICE_SQL)' in the mysql.h > helps. > I wasn't bold enough to mention the particular service in such an exposed > file as mysql.h :) Feel free to replace it with any other macro that is guaranteed to be set for the server code (including plugins and anything that doesn't define MYSQL_SERVER, but still is in the server). Any plugin related define should work, I think. > > > +#include <mysql.h> > > shouldn't be needed > My idea was that those not using the SQL service don't have to see the > 'mysql.h' declarations. > Now all the plugins see all these mysql_xxx() functions and related > structures. Not sure if it's good. I simply mean that you already include mysql.h in the service_sql.h. If you wouldn't, then yes, a separate include would be needed. > The update pushed 71338ddada9f331af57b737a586f56dc6f2e483f. Thanks. One unanswered question below: > diff --git a/sql/sql_class.h b/sql/sql_class.h > index e569fcd32d6..964626be3d4 100644 > --- a/sql/sql_class.h > +++ b/sql/sql_class.h > diff --git a/sql/sql_prepare.cc b/sql/sql_prepare.cc > index 09ad632dd98..4725855c130 100644 > --- a/sql/sql_prepare.cc > +++ b/sql/sql_prepare.cc > @@ -4857,6 +4870,7 @@ > Prepared_statement::execute_server_runnable(Server_runnable *server_runnable) > if (!(lex= new (mem_root) st_lex_local)) > return TRUE; > > + thd->set_time(); why? May be it should be executed using the timestamp of the top-level statement? > thd->set_n_backup_statement(this, &stmt_backup); > thd->set_n_backup_active_arena(this, &stmt_backup); > thd->stmt_arena= this; Regards, Sergei VP of MariaDB Server Engineering and secur...@mariadb.org _______________________________________________ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp