mariadb/libmysqld
Mayank Prasad d608ad2dd6 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.

Test case:
Test case automation is not possible as current (following) code doesn't 
allow '\T' to be executed from command line (OR command read from a file):
[client/mysql.cc]
...
 static int
 com_tee(String *buffer __attribute__((unused)),
         char *line __attribute__((unused)))
 {
   char file_name[FN_REFLEN], *end, *param;

   if (status.batch) << THIS IS TRUE WHILE EXECUTING FROM COMMAND LINE.
      return 0;
 ...
So, not adding test case in GA. WIll add a test case in mysql-trunk after 
removing above code so that this could be properly tested before GA.

libmysqld/lib_sql.cc:
  Added code to call client/server error handler based on in control is in 
  client/server code respectively.
sql/mysql_priv.h:
  Added comments for THR_THD, THR_MALLOC keys.
sql/sql_class.cc:
  Function definition of new function restore_global to removes thread specific 
  data from stack (which was stored in store global).
sql/sql_class.h:
  Function declaration of new function restore_global.
2011-05-18 20:10:01 +05:30
..
examples Merge 2010-12-29 00:47:05 +01:00
CMakeLists.txt Bug #47795 CMake, storage engine name different from directory name 2009-10-08 15:19:24 +02:00
emb_qcache.cc
emb_qcache.h
embedded_priv.h
lib_sql.cc Bug#11764633 : 57491: THD->MAIN_DA.IS_OK() ASSERT IN EMBEDDED 2011-05-18 20:10:01 +05:30
libmysqld.c merge 2009-09-25 14:39:05 +03:00
libmysqld.def Post-merge fix for bug 41728: revert fix that was pushed in mistake to 5.1 and up. 2009-11-24 19:25:23 -02:00
libmysqld.rc
Makefile.am WL#4259 - Debug Sync Facility 2009-09-29 17:38:40 +02:00
resource.h