1
0
mirror of https://github.com/MariaDB/server.git synced 2025-05-28 13:01:41 +03:00

12 Commits

Author SHA1 Message Date
unknown
194f6725d4 SCRUM:
prepared statements in embedded library


include/mysql.h:
  Another 'virtual' method
libmysql/client_settings.h:
  client implementation declared
libmysql/libmysql.c:
  mysql_execute edited to work with embedded implementation
libmysqld/lib_sql.cc:
  one error fixed (we do need parameter's buffer in embedded library)
  embedded recordset transfer methods implementations added
sql-common/client.c:
  method added to the table
sql/client_settings.h:
  no prepared statements in mimiclient
sql/mysql_priv.h:
  these functions became global
sql/protocol.cc:
  the stub added
sql/protocol.h:
  had to change Protocol's interface for embedded library
sql/sql_class.h:
  i changed this only for embedded case, but i think it's better to do the
  same for remote server also
sql/sql_prepare.cc:
  parts of code #ifndef-ed
2003-09-17 20:48:53 +05:00
unknown
6b05f916b8 SCRUM
prepared statements in embedded library


include/mysql.h:
  stmt_execute 'virtual' method added
include/sql_common.h:
  two functions became global
libmysql/client_settings.h:
  declaration for cli_stmt_execute
libmysql/libmysql.c:
  some functions changed to be usable from embedded library
libmysqld/lib_sql.cc:
  code for embedded stmt_execute added
sql-common/client.c:
  cli_stmt_execute added to the methods table
sql/client_settings.h:
  no need for prepared statements in miniclient
2003-09-17 15:18:18 +05:00
unknown
d05807153b SCRUM
Prepared statements in embedded server
Several changes in library code with two goals:
to make mysql_prepare_stmt working in embedded server
to get rid of #define mysql_interface_func mysql->methods->interface_func
in user's interface


include/mysql.h:
  modifications of interface
  two goals: to implement prepared statements and to get rid
  of #define mysql_proc (mysql->smth) in interface
include/sql_common.h:
  read_rows function got 'virtual'
libmysql/client_settings.h:
  interface of some functions declared in client.c moved here
libmysql/libmysql.c:
  several functions changed with declared goals
libmysqld/embedded_priv.h:
  libmysqld.c <--> lib_sql.cc interface moved here
libmysqld/lib_sql.cc:
  all embedded 'virtual' functions moved here so they can be static
libmysqld/libmysqld.c:
  embedded 'virtual' function was moved out of here
sql-common/client.c:
  several changes with the declared goal
sql/sql_class.h:
  place to store statement data added to THD
sql/sql_prepare.cc:
  storing of prepare_statement result for embedded server added
2003-09-16 16:06:25 +05:00
unknown
dc250a6efc SCRUM:
#977 Prepared statements in embedded library


include/mysql.h:
  read_prepare_result function moved to 'virtual'
libmysql/client_settings.h:
  declare proper function for libmysql
libmysql/libmysql.c:
  some code moved from implementation of read_prepare_result to 
  mysql_prepare_result to make creating separate (remote and embedded-server)
  versions easier
libmysqld/libmysqld.c:
  emb_read_prepare_result prototype
sql-common/client.c:
  cli_read_prepare_result added to the client_methods
sql/client_settings.h:
  we don't need prepared statements in mini_client
sql/sql_prepare.cc:
  embedded send_prep_stmt added
2003-09-12 19:35:34 +05:00
unknown
d6f15e9d02 SCRUM
embedded&client library
some fixes: zero at the end of the data added
mysql_list_fields became 'virtual'


include/mysql.h:
  mysql_list_fields became 'virtual'
libmysql/client_settings.h:
  in client library we need proper implementation for list_fields
libmysql/libmysql.c:
  implementation for remote server
libmysqld/lib_sql.cc:
  we still need zero at the end of the data in client (see mysql.cc).
  I feel it should be changed
libmysqld/libmysqld.c:
  implementation for embedded server
sql-common/client.c:
  cli_list_fields member set for client library
sql/client_settings.h:
  we don't need mysql_list_fields in mini_client code
2003-09-11 09:46:31 +05:00
unknown
4c7431dc90 Last part of resolving conflicts after pull
Some intersections with Monty encountered


libmysql/client_settings.h:
  We don't need the trick with macroses since Monty moved cli_mysql_use_result
  into sql-common/client.c
libmysql/libmysql.c:
  mysql_use_result moved in sql-common/client.c
sql-common/client.c:
  code simplified with the moving of mysql_use_result here
sql/client_settings.h:
  we don't need this #define anymore
sql/sql_client.cc:
  this function was moved to sql-common/pack.c by me
  i think the pack.c is the better place for it
2003-06-18 10:34:09 +05:00
unknown
46cb15ccd4 SCRUM
merged conflicts about my previous commit
it seems there are some errors left - gonna check...


BitKeeper/etc/logging_ok:
  auto-union
client/mysqltest.c:
  Auto merged
include/mysql_com.h:
  Auto merged
include/sql_common.h:
  Auto merged
include/mysql.h:
  conflicts merged
libmysql/client_settings.h:
  conflicts merged
libmysql/libmysql.c:
  conflicts merged
sql-common/client.c:
  conflicts merged
sql/client_settings.h:
  conflicts merged
sql/protocol.cc:
  conflict merged
2003-06-17 21:53:13 +05:00
unknown
ef726bbff3 SCRUM
client capabilities included into libmysqld
some API methods became "virtual"
lots of duplicated code removed

IMHO all the above made library's code way more pleasant to look at, didn't it?


BitKeeper/deleted/.del-lib_vio.c~d779731a1e391220:
  Delete: libmysqld/lib_vio.c
BitKeeper/etc/ignore:
  Added libmysqld/client.c libmysqld/client_settings.h libmysqld/libmysql.c libmysqld/pack.c to the ignore list
client/mysqltest.c:
  we don't need this now
include/mysql.h:
  MYSQL and related structures unified
  four methods made "virtual"
  relative wrappers added
include/mysql_com.h:
  todo added
include/mysql_embed.h:
  now we include implementations of Vio structure in libmysqld
include/sql_common.h:
  declarations changed
include/violite.h:
  implementation of Vio included in libmysqld
libmysql/client_settings.h:
  changes to make this working with both client and embedded
libmysql/libmysql.c:
  global variables and my_net_local_init moved to sql-common/pack.c
libmysqld/Makefile.am:
  libmysql.c, client.c, pack.c symlinked and added to sources
  lib_vio.c removed
libmysqld/examples/Makefile.am:
  now we need CLIENT_LIBS here
libmysqld/lib_sql.cc:
  code duplications removed
  emb_advanced_command was made from simple_command
libmysqld/libmysqld.c:
  duplicated code removed
sql-common/client.c:
  code trimmed with new model of calling
sql-common/pack.c:
  some code moved here from libmysql.c and protocol.cc
sql/client_settings.h:
  we don't need mysql_use_result for mini_client
sql/net_serv.cc:
  file included in embedded server
sql/protocol.cc:
  code moved to sql-common/pack.c
2003-06-17 21:32:31 +05:00
unknown
7ababc3bb4 Fix for compilation error.
Compiler can signal error when init_sigpipe_variables expands as empty place.
Had to remove all semicolons after init_sigpipe_variables


libmysql/client_settings.h:
  semicolon added
sql-common/client.c:
  we don't need semicolons after init_sigpipe_variables
2003-06-16 03:13:22 +05:00
unknown
ccf59c3874 Cleanup after split of libmysql.c to client.c and libmysql.c. A 4.1 master/slave will now use the 4.1 protocol
Fixed wrong value for SQLSTATE_LENGTH
Added CLIENT_REMEMBER_OPTIONS to mysql_real_connect()
Changed mysql_port and mysql_unix_port to mysqld_xxxx


client/mysql.cc:
  Removed valgrind & compiler warnings
client/sql_string.h:
  Fix to remove valgrind warnings
include/mysql.h:
  Added read_timeout and write_timeout to mysql options struct.
  This is to be used for slave when connection to master.
  code cleanup
include/mysql_com.h:
  Fixed wrong value for SQLSTATE_LENGTH
  Added CLIENT_REMEMBER_OPTIONS
include/sql_common.h:
  Cleanup after split of libmysql.c to client.c and libmysql.c
include/sql_state.h:
  Removed default states
libmysql/client_settings.h:
  Cleanup after split of libmysql.c to client.c and libmysql.c
libmysql/libmysql.c:
  Cleanup after split of libmysql.c to client.c and libmysql.c
mysql-test/r/type_blob.result:
  Update results after someone updated error messages without running tests
mysys/charset.c:
  More debug information
mysys/errors.c:
  Fixed wrong error message
sql-common/client.c:
  Cleanup after split of libmysql.c to client.c and libmysql.c
sql/Makefile.am:
  Added sql_client.cc
sql/client_settings.h:
  Cleanup after split of libmysql.c to client.c and libmysql.c
sql/log.cc:
  Changed mysql_port and mysql_unix_port to mysqld_xxxx
sql/mysql_priv.h:
  Changed mysql_port and mysql_unix_port to mysqld_xxxx
sql/mysqld.cc:
  Changed mysql_port and mysql_unix_port to mysqld_xxxx
sql/protocol.cc:
  Fix for SQLSTATE_LENGTH
  Moved function to sql_client.c
sql/repl_failsafe.cc:
  Cleanup after split of libmysql.c to client.c and libmysql.c
sql/set_var.cc:
  Changed mysql_port and mysql_unix_port to mysqld_xxxx
sql/slave.cc:
  Cleanup after split of libmysql.c to client.c and libmysql.c
2003-06-14 11:37:42 +03:00
unknown
aed6de39b6 SCRUM:
splittiln common client's parts


include/sql_common.h:
  superfluous #ifdef-s removed
libmysql/client_settings.h:
  superfluous #ifdef-s removed
libmysql/libmysql.c:
  some litter removed
libmysqld/lib_sql.cc:
  here we had wrong parameters
mysys/default.c:
  this is not needed anymore - calling code fixed
sql-common/client.c:
  code trimmed and simplified
sql/client_settings.h:
  code trimmed
sql/repl_failsafe.cc:
  option's initialization added
sql/slave.cc:
  option's initialization added
2003-06-03 15:02:57 +05:00
unknown
62c7d2cd27 SCRUM:
Here is another pack of changes about gathering common client code in
sql-common/client.c.
Now i symlink the client.c from sql/ and libmysql/. These directories
have client_settings.h files to be included to client.c. It contains
defines and declarations to compile client.c in appropriate manner.
Also i've added include/sql_common.h, containing declarations of what
is exported from client.c

I removed as many #ifdef-s from client.c as i dared to. I think it's better
push it with some extra #ifdef-s now (of course, if everythihg besides it is
ok) so other people can check the code.


Makefile.am:
  symlinking of sql-common/client.c was added
include/mysql.h:
  MYSQL_CLIENT define moved here from libmysql/Makefile
libmysql/Makefile.am:
  ../libmysql/client_settings.h added to the list of necessary h-files
libmysql/Makefile.shared:
  client.lo added to the list of objects
libmysql/libmysql.c:
  a lot of changes about separating code between libmysql.c and client.c
mysys/default.c:
  changed to keep compiler happy
sql-common/client.c:
  a lot of changes about code separating
sql/Makefile.am:
  mini_client.h has to be removed
sql/repl_failsafe.cc:
  mysql_real_connect prototype was unified, so we've got to set connection timeout separately
sql/slave.cc:
  trimming code to the changed function's prototypes
sql/sql_repl.cc:
  mini_client isn't needed anymore
2003-05-31 15:15:46 +05:00