1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

Big patch to make embedded-server working in 5.x

Now it supports queries returning several results
(particularly important with the SP)


include/mysql.h:
  embedded_query_result structure added
libmysql/libmysql.c:
  embedded-server related fixes
libmysqld/emb_qcache.cc:
  multiple-result support added
libmysqld/embedded_priv.h:
  embedded_query_result struct implemented
libmysqld/lib_sql.cc:
  multiple-result support added
libmysqld/libmysqld.c:
  small fixes
mysql-test/t/backup.test:
  test fixed
mysql-test/t/binlog_stm_binlog.test:
  test fixed
mysql-test/t/binlog_stm_blackhole.test:
  test fixed
mysql-test/t/binlog_stm_ctype_cp932.test:
  test fixed
mysql-test/t/compress.test:
  test fixed
mysql-test/t/delayed.test:
  test fixed
mysql-test/t/federated.test:
  test fixed
mysql-test/t/federated_archive.test:
  test fixed
mysql-test/t/federated_bug_13118.test:
  test fixed
mysql-test/t/federated_transactions.test:
  test fixed
mysql-test/t/flush_table.test:
  test fixed
mysql-test/t/handler.test:
  test fixed
mysql-test/t/init_connect.test:
  test fixed
mysql-test/t/innodb.test:
  test fixed
mysql-test/t/mysql.test:
  test fixed
mysql-test/t/mysql_client_test.test:
  test fixed
mysql-test/t/mysqltest.test:
  test fixed
mysql-test/t/query_cache.test:
  test fixed
mysql-test/t/query_cache_notembedded.test:
  test fixed
mysql-test/t/read_only.test:
  test fixed
mysql-test/t/skip_grants.test:
  test fixed
mysql-test/t/sp-destruct.test:
  test fixed
mysql-test/t/sp-error.test:
  test fixed
mysql-test/t/sp-threads.test:
  test fixed
mysql-test/t/sp.test:
  test fixed
mysql-test/t/view.test:
  test fixed
mysql-test/t/wait_timeout.test:
  test fixed
sql-common/client.c:
  small fixes
sql/mysqld.cc:
  embedded-server related fix
sql/protocol.cc:
  embedded-server related fix
sql/protocol.h:
  embedded-server related fix
sql/sql_class.cc:
  embedded-server related fix
sql/sql_class.h:
  embedded-server related fix
sql/sql_cursor.cc:
  embedded-server related fix
sql/sql_parse.cc:
  embedded-server related fix
sql/sql_prepare.cc:
  embedded-server related fix
This commit is contained in:
unknown
2006-01-04 14:20:28 +04:00
parent 81ca15813b
commit 6b27acbdf4
46 changed files with 1031 additions and 465 deletions

View File

@ -130,14 +130,14 @@ typedef MYSQL_ROWS *MYSQL_ROW_OFFSET; /* offset to current row */
#include "my_alloc.h"
typedef struct embedded_query_result EMBEDDED_QUERY_RESULT;
typedef struct st_mysql_data {
my_ulonglong rows;
unsigned int fields;
MYSQL_ROWS *data;
MEM_ROOT alloc;
#if !defined(CHECK_EMBEDDED_DIFFERENCES) || defined(EMBEDDED_LIBRARY)
MYSQL_ROWS **prev_ptr;
#endif
/* extra info for embedded library */
struct embedded_query_result *embedded_info;
} MYSQL_DATA;
enum mysql_option
@ -287,6 +287,8 @@ typedef struct st_mysql
from mysql_stmt_close if close had to cancel result set of this object.
*/
my_bool *unbuffered_fetch_owner;
/* needed for embedded server - no net buffer to store the 'info' */
char *info_buffer;
} MYSQL;
typedef struct st_mysql_res {
@ -755,6 +757,7 @@ typedef struct st_mysql_methods
const char *(*read_statistics)(MYSQL *mysql);
my_bool (*next_result)(MYSQL *mysql);
int (*read_change_user_result)(MYSQL *mysql, char *buff, const char *passwd);
int (*read_rows_from_cursor)(MYSQL_STMT *stmt);
#endif
} MYSQL_METHODS;