List:Commits« Previous MessageNext Message »
From:Davi Arnaut Date:May 13 2011 7:06pm
Subject:Re: bzr commit into mysql-5.1 branch (mayank.prasad:3620) Bug#11764633
View as plain text  
Hi Mayank,

On 5/13/11 8:29 AM, Mayank Prasad wrote:
> #At file:///home/mayank/mysql-tree/mydefects/5.1_11764633_3/ based on
> revid:tatjana.nuernberg@stripped
>
>   3620 Mayank Prasad	2011-05-13
>        Bug#11764633 : 57491: THD->MAIN_DA.IS_OK() ASSERT IN EMBEDDED
>
>        Issue:
>        While running embedded server, if client issues TEE command (\T foo/bar) and
>        "foo/bar" directory doesn't exist, it is suppose to give error. But it was
>        aborting.  This was happening because wrong error handler was being called.
>
>        Solution:
>        Modified calls to correct error handler. In embedded server case, there are
>        two error handler (client and server) which are supposed to be called based
>        on which context code is in. If it is in client context, client error handler
>        should be called otherwise server.

OK to push. One minor request below. Thanks for working on this!

[...]

> === modified file 'libmysqld/lib_sql.cc'
> --- a/libmysqld/lib_sql.cc	2009-12-18 18:44:24 +0000
> +++ b/libmysqld/lib_sql.cc	2011-05-13 11:29:20 +0000
> @@ -41,7 +41,11 @@ C_MODE_START
>   extern unsigned int mysql_server_last_errno;
>   extern char mysql_server_last_error[MYSQL_ERRMSG_SIZE];
>   static my_bool emb_read_query_result(MYSQL *mysql);
> -
> +/*
> +  Wrapper error handler to call client/server error handler based on whether
> +  thread is in client/server context
> +*/
> +static int embedded_error_handler(uint error, const char *str, myf MyFlags);

This must have C linkage, wrap it inside a C_MODE_START/END.

Regards,

Davi
Thread
bzr commit into mysql-5.1 branch (mayank.prasad:3620) Bug#11764633Mayank Prasad13 May
  • Re: bzr commit into mysql-5.1 branch (mayank.prasad:3620) Bug#11764633Davi Arnaut13 May