client code added to the embedded library
some fixes
include/mysql.h:
test code removed
simple_command is the macrodefinition now
libmysqld/embedded_priv.h:
this declaration obsolete
libmysqld/lib_sql.cc:
errors stored in the same place for embedded and client libraries now
sql-common/client.c:
we don't need that ugly wrapper
Makefile.am:
- added sql-common directory to distribution
configure.in:
- minor fixes
- added sql-common/Makefile to AC_OUTPUT
include/Makefile.am:
- added sql_common.h to distribution
including client code into embedded server
code to guess what library to use added
net_field_length moved to pack.c
include/mysql.h:
typedefinitions moved for suitability
mysql_option.methods_to_use added
include/mysql_com.h:
net_store_length declaration
libmysql/libmysql.c:
net_store_length moved to sql-common/pack.c
libmysqld/libmysqld.c:
added code to guess whether to use remote or embedded connection
sql-common/client.c:
options checking added
sql-common/pack.c:
net_store_length implementation moved here
sql/protocol.cc:
net_store_length moved to sql-common/pack.c
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
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
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
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
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
VC++Files/libmysqld/libmysqld.dsp:
Remove the old files from Embedded library
sql/slave.h:
Fix for client.c - slave_net_timeout
sql-common/client.c:
Fix warning
NOTE: Still the build fails to compile core server on Windows due to slave_net_timeout linker error from client.obj
and make sure to have the next changeset, which fixes this.
sql/item_geofunc.cc:
Fix warnings
sql/sql_help.cc:
Fix compiler errors
sql-common/client.c:
Delete and move redefination of shared memory stuff
libmysql/libmysql.c:
Fix for redefination stuff from client.c
VC++Files/client/mysqlclient.dsp:
add client.c
VC++Files/libmysql/libmysql.dsp:
add client.c
VC++Files/sql/mysqld.dsp:
add client.c and remove old convert.cpp and mini_client.c
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
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
common parts of libmysql.c and sql/mini_client.cc moved to sql-common/client.c
names of functions now are same in both cases
libmysql/libmysql.c:
many parts moved to sql-common/client.c
libmysqld/Makefile.am:
superfluous files removed
sql/mini_client.cc:
most of the file moved to sql-common/client.c
sql/mini_client.h:
mc_ prefixes were deleted
sql/repl_failsafe.cc:
mc_ prefixes removed
sql/slave.cc:
_mc prefixes removed