Commit graph

294 commits

Author SHA1 Message Date
unknown
4d0e9ad917 Resolved merge from 4.1 -> 5.0 (mainly Guilhem's work with mysqldump)
BitKeeper/etc/ignore:
  auto-union
configure.in:
  Auto merged
include/my_global.h:
  Auto merged
include/my_sys.h:
  Auto merged
include/mysql.h:
  Auto merged
include/mysqld_error.h:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/alter_table.result:
  Auto merged
mysql-test/r/ndb_autodiscover.result:
  Auto merged
mysql-test/r/null.result:
  Auto merged
mysql-test/r/ps_2myisam.result:
  Auto merged
mysql-test/r/ps_3innodb.result:
  Auto merged
mysql-test/r/ps_4heap.result:
  Auto merged
mysql-test/r/ps_5merge.result:
  Auto merged
mysql-test/r/ps_6bdb.result:
  Auto merged
mysql-test/t/alter_table.test:
  Auto merged
mysql-test/t/null.test:
  Auto merged
ndb/src/mgmsrv/main.cpp:
  Auto merged
sql/field.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/slave.h:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/share/czech/errmsg.txt:
  Auto merged
sql/share/danish/errmsg.txt:
  Auto merged
sql/share/dutch/errmsg.txt:
  Auto merged
sql/share/english/errmsg.txt:
  Auto merged
sql/share/estonian/errmsg.txt:
  Auto merged
sql/share/french/errmsg.txt:
  Auto merged
sql/share/german/errmsg.txt:
  Auto merged
sql/share/greek/errmsg.txt:
  Auto merged
sql/share/hungarian/errmsg.txt:
  Auto merged
sql/share/italian/errmsg.txt:
  Auto merged
sql/share/japanese/errmsg.txt:
  Auto merged
sql/share/korean/errmsg.txt:
  Auto merged
sql/share/norwegian-ny/errmsg.txt:
  Auto merged
sql/share/norwegian/errmsg.txt:
  Auto merged
sql/share/polish/errmsg.txt:
  Auto merged
sql/share/portuguese/errmsg.txt:
  Auto merged
sql/share/romanian/errmsg.txt:
  Auto merged
sql/share/russian/errmsg.txt:
  Auto merged
sql/share/serbian/errmsg.txt:
  Auto merged
sql/share/slovak/errmsg.txt:
  Auto merged
sql/share/spanish/errmsg.txt:
  Auto merged
sql/share/swedish/errmsg.txt:
  Auto merged
sql/share/ukrainian/errmsg.txt:
  Auto merged
2004-11-11 18:58:57 -08:00
unknown
81880bab13 Adding new function prototype 2004-11-10 14:13:38 +04:00
unknown
70d66da883 Merge with 4.1 to get in latest bug fixes
BitKeeper/etc/logging_ok:
  auto-union
Docs/Support/texi2html:
  Auto merged
include/mysql.h:
  Auto merged
include/mysql_com.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
mysql-test/include/ps_modify.inc:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/ctype_recoding.result:
  Auto merged
mysql-test/r/fulltext.result:
  Auto merged
mysql-test/r/gis.result:
  Auto merged
mysql-test/r/ndb_blob.result:
  Auto merged
mysql-test/r/ps_2myisam.result:
  Auto merged
mysql-test/r/ps_3innodb.result:
  Auto merged
mysql-test/r/ps_4heap.result:
  Auto merged
mysql-test/r/ps_5merge.result:
  Auto merged
mysql-test/r/ps_6bdb.result:
  Auto merged
mysql-test/r/sql_mode.result:
  Auto merged
mysql-test/t/join_outer.test:
  Auto merged
mysql-test/t/key.test:
  Auto merged
mysql-test/t/range.test:
  Auto merged
mysql-test/t/show_check.test:
  Auto merged
mysql-test/t/sql_mode.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/item.h:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/net_serv.cc:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/protocol.h:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_handler.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_string.cc:
  Auto merged
sql/sql_string.h:
  Auto merged
sql/sql_table.cc:
  Auto merged
client/mysqltest.c:
  Merge with 4.1
mysql-test/r/range.result:
  Merge with 4.1
  Added missing drop table test
sql/ha_innodb.cc:
  Merge with 4.1
sql/item.cc:
  Merge with 4.1
sql/item_cmpfunc.cc:
  Merge with 4.1
sql/opt_range.cc:
  Merge with 4.1
sql/sql_prepare.cc:
  Merge with 4.1
tests/client_test.c:
  Merge with 4.1
  Added code to support --silent
configure.in:
  Merge with 4.1
ndb/src/common/util/version.c:
  Merge with 4.1
2004-11-04 15:06:24 +02:00
unknown
55974b50bf Remove support for obsolete 4.1.1 prepared statements C API names:
having approval for it since 4.1.4, I also have some assurance that
very few people actually used this: to enable these calls a user
had to #define HAVE_DEPRECATED_411_API and recompile the client library.


include/mysql.h:
  remove defines for obsolete 4.1 prepared statements C API names
libmysql/libmysql.c:
  Remove #ifdefed implementation of obsolete mysql_prepare call.
2004-11-01 19:01:50 +03:00
unknown
f095274fe8 merge with 4.1
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
BitKeeper/triggers/post-commit:
  Auto merged
Docs/Support/texi2html:
  Auto merged
Makefile.am:
  Auto merged
client/Makefile.am:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqldump.c:
  Auto merged
include/my_base.h:
  Auto merged
include/my_global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/my_sys.h:
  Auto merged
include/my_time.h:
  Auto merged
include/mysql.h:
  Auto merged
include/mysql_com.h:
  Auto merged
innobase/buf/buf0buf.c:
  Auto merged
innobase/include/row0mysql.h:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
libmysql/libmysql.c:
  Auto merged
libmysqld/examples/Makefile.am:
  Auto merged
myisam/mi_check.c:
  Auto merged
mysql-test/include/ps_modify.inc:
  Auto merged
mysql-test/install_test_db.sh:
  Auto merged
mysql-test/r/alter_table.result:
  Auto merged
mysql-test/r/auto_increment.result:
  Auto merged
mysql-test/r/bdb.result:
  Auto merged
mysql-test/r/ctype_latin1_de.result:
  Auto merged
mysql-test/r/ctype_recoding.result:
  Auto merged
mysql-test/r/fulltext.result:
  Auto merged
mysql-test/r/func_gconcat.result:
  Auto merged
mysql-test/r/func_group.result:
  Auto merged
mysql-test/r/func_if.result:
  Auto merged
mysql-test/t/derived.test:
  Auto merged
mysql-test/t/insert.test:
  merge with 4.1
  Fixed test case to not use 'if exists' when it shouldn't
mysql-test/t/range.test:
  merge with 4.1
  Added missing drop table
sql/ha_ndbcluster.cc:
  merge with 4.1
  Simple optimization: use max() instead of ? :
sql/item_func.cc:
  merge with 4.1
  (Added back old variable names for easier merges)
sql/opt_range.cc:
  merge with 4.1
  Removed argument 'parent_alloc' from QUICK_RANGE_SELECT as this was not used
  Added assert if using QUICK_GROUP_MIN_MAX_SELECT with parent_alloc as the init() function can't handle this
  Changed back get_quick_select_for_ref() to use it's own alloc root becasue this function may be called several times for one query
sql/sql_handler.cc:
  merge with 4.1
  change variable 'err' to 'error' as same function had a label named 'err'
sql/sql_update.cc:
  Use multi-update code from 5.0 instead of 4.1
  We will fix the locking code shortly in 5.0 to be faster than in 4.1
2004-10-29 19:26:52 +03:00
unknown
4736d0fe99 Review of all code pushed since last review
Simple optimzations and cleanups
Removed compiler warnings and fixed portability issues
Added client functions 'mysql_embedded()' to allow client to check if we are using embedded server
Fixes for purify


client/mysqlimport.c:
  Remove not used variable
client/mysqltest.c:
  Remove usage of MAXPATHLEN (all MySQL code uses FN_REFLEN)
  Simplified code
  Remove usage of sprintf("%llu") as this is not portable
include/mysql.h:
  Added mysql_embedded() to be able to easily check if we are using the embedded server
innobase/srv/srv0start.c:
  Don't use memcmp() when using purify (to avoid false warnings)
libmysql/libmysql.c:
  Added mysql_embedded() to be able to easily check if we are using the embedded server
libmysql/libmysql.def:
  Added mysql_embedded() to be able to easily check if we are using the embedded server
myisam/myisam_ftdump.c:
  Remove compiler warning
myisam/myisamchk.c:
  Remove compiler warning
myisam/rt_test.c:
  #ifdef not used code
mysys/hash.c:
  Remove compiler warning (from last push)
mysys/my_gethwaddr.c:
  Remove compiler warning
ndb/src/ndbapi/ndberror.c:
  #ifdef not used code
regex/regcomp.c:
  Remove not used code
regex/regcomp.ih:
  Remove not used code (to remove compiler warnings)
sql-common/client.c:
  Remove compiler warnings
sql/field.cc:
  Simple optimization
sql/ha_innodb.cc:
  Rename mysql_embedded -> mysqld_embedded
sql/item.cc:
  Fix comments
  Move variables first on block
  Remove else after return
  Simple optimizations
  (no logic changes)
sql/item_cmpfunc.cc:
  Added comment
sql/mysql_priv.h:
  Rename mysql_embedded -> mysqld_embedded
sql/mysqld.cc:
  Rename mysql_embedded -> mysqld_embedded
sql/sql_acl.cc:
  Added comments
  simple optimization
  Fixed 'very unlikely' bug when doing REVOKE ALL PRIVILEGES
sql/sql_select.cc:
  More comments
  Simple optimization
sql/sql_show.cc:
  Simple changes to make similar code similar
  More comments
sql/sql_string.cc:
  Trivial optimization and better code layout
strings/Makefile.am:
  Change xml.c to use bcmp to avoid warnings from purify
strings/xml.c:
  Change xml.c to use bcmp to avoid warnings from purify
tests/client_test.c:
  Remove usage of MAXPATHLEN (all MySQL code uses FN_REFLEN)
2004-10-20 01:28:42 +03:00
unknown
4ad51359c1 Merge with 4.1
(Includes merge of arena code in 4.1 and 5.0)



BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
VC++Files/sql/mysqld.dsp:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
include/my_global.h:
  Auto merged
include/my_sys.h:
  Auto merged
include/mysql.h:
  Auto merged
include/mysql_com.h:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
libmysql/client_settings.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
libmysqld/Makefile.am:
  Auto merged
libmysqld/examples/Makefile.am:
  Auto merged
libmysqld/lib_sql.cc:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
myisam/sort.c:
  Auto merged
mysql-test/r/connect.result:
  Auto merged
mysql-test/r/ctype_recoding.result:
  Auto merged
mysql-test/r/ctype_ucs.result:
  Auto merged
mysql-test/r/func_in.result:
  Auto merged
mysql-test/r/func_like.result:
  Auto merged
mysql-test/r/gis.result:
  Auto merged
mysql-test/r/having.result:
  Auto merged
mysql-test/r/heap.result:
  Auto merged
mysql-test/r/join.result:
  Auto merged
mysql-test/r/key.result:
  Auto merged
mysql-test/r/lowercase_table.result:
  Auto merged
mysql-test/r/ndb_autodiscover.result:
  Auto merged
mysql-test/r/null.result:
  Auto merged
mysql-test/r/olap.result:
  Auto merged
mysql-test/r/order_by.result:
  Auto merged
mysql-test/r/ps_1general.result:
  Auto merged
mysql-test/r/ps_2myisam.result:
  Auto merged
mysql-test/r/ps_3innodb.result:
  Auto merged
mysql-test/r/ps_4heap.result:
  Auto merged
mysql-test/r/ps_5merge.result:
  Auto merged
mysql-test/r/ps_6bdb.result:
  Auto merged
mysql-test/r/range.result:
  Auto merged
mysql-test/r/rename.result:
  Auto merged
mysql-test/r/show_check.result:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/r/union.result:
  Auto merged
mysql-test/r/variables.result:
  Auto merged
mysql-test/t/alter_table.test:
  Auto merged
mysql-test/t/null.test:
  Auto merged
mysql-test/t/ps_1general.test:
  Auto merged
mysql-test/t/rpl_charset.test:
  Auto merged
mysql-test/t/rpl_heap.test:
  Auto merged
mysql-test/t/rpl_relayrotate.test:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
netware/mysql_test_run.c:
  Auto merged
scripts/make_binary_distribution.sh:
  Auto merged
scripts/mysql_create_system_tables.sh:
  Auto merged
scripts/mysql_fix_privilege_tables.sql:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
sql/ha_berkeley.cc:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_innodb.h:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_create.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/lex.h:
  Auto merged
sql/lock.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/opt_sum.cc:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/records.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/set_var.h:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_acl.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_list.h:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_rename.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_string.h:
  Auto merged
sql/table.cc:
  Auto merged
sql-common/client.c:
  Auto merged
client/mysqlbinlog.cc:
  Merge with 4.1
configure.in:
  Merge with 4.1
include/mysqld_error.h:
  Add new error message (1) from 4.1
mysql-test/mysql-test-run.sh:
  Merge with 4.1
mysql-test/r/func_gconcat.result:
  Merge with 4.1
mysql-test/r/func_if.result:
  Merge with 4.1
mysql-test/r/grant.result:
  Merge with 4.1
mysql-test/r/join_outer.result:
  Merge with 4.1
mysql-test/r/rpl_charset.result:
  Merge with 4.1 (This has to be fixed before pushing)
mysql-test/r/system_mysql_db.result:
  Merge with 4.1.
  Added collation to new privileges
mysql-test/t/grant.test:
  Merge with 4.1
mysql-test/t/grant_cache.test:
  Merge with 4.1
mysql-test/t/show_check.test:
  Merge with 4.1
sql/Makefile.am:
  Merge with 4.1
sql/item.cc:
  Merge with 4.1
sql/item_cmpfunc.cc:
  Merge with 4.1 (arena code)
sql/item_subselect.cc:
  Merge with 4.1
sql/item_subselect.h:
  Merge with 4.1
sql/item_sum.cc:
  Merge with 4.1
sql/item_sum.h:
  Merge with 4.1
sql/log.cc:
  Merge with 4.1 (Remove code that is not relevant for 5.0)
sql/mysqld.cc:
  Merge with 4.1
sql/opt_range.cc:
  Merge with 4.1
sql/share/czech/errmsg.txt:
  Merge with 4.1
sql/share/danish/errmsg.txt:
  Merge with 4.1
sql/share/dutch/errmsg.txt:
  Merge with 4.1
sql/share/english/errmsg.txt:
  Merge with 4.1
sql/share/estonian/errmsg.txt:
  Merge with 4.1
sql/share/french/errmsg.txt:
  Merge with 4.1
sql/share/german/errmsg.txt:
  Merge with 4.1
sql/share/greek/errmsg.txt:
  Merge with 4.1
sql/share/hungarian/errmsg.txt:
  Merge with 4.1
sql/share/italian/errmsg.txt:
  Merge with 4.1
sql/share/japanese/errmsg.txt:
  Merge with 4.1
sql/share/korean/errmsg.txt:
  Merge with 4.1
sql/share/norwegian-ny/errmsg.txt:
  Merge with 4.1
sql/share/norwegian/errmsg.txt:
  Merge with 4.1
sql/share/polish/errmsg.txt:
  Merge with 4.1
sql/share/portuguese/errmsg.txt:
  Merge with 4.1
sql/share/romanian/errmsg.txt:
  Merge with 4.1
sql/share/russian/errmsg.txt:
  Merge with 4.1
sql/share/serbian/errmsg.txt:
  Merge with 4.1
sql/share/slovak/errmsg.txt:
  Merge with 4.1
sql/share/spanish/errmsg.txt:
  Merge with 4.1
sql/share/swedish/errmsg.txt:
  Merge with 4.1
sql/share/ukrainian/errmsg.txt:
  Merge with 4.1
sql/sql_base.cc:
  Merge with 4.1
sql/sql_class.cc:
  Merge with 4.1
  Use arena code from 4.1
sql/sql_class.h:
  Merge with 4.1
  Use arena code from 4.1
sql/sql_derived.cc:
  Merge with 4.1
sql/sql_lex.cc:
  Merge with 4.1
sql/sql_lex.h:
  Merge with 4.1
sql/sql_parse.cc:
  Merge with 4.1
sql/sql_prepare.cc:
  Merge with 4.1
sql/sql_select.cc:
  Merge with 4.1
sql/sql_table.cc:
  Merge with 4.1
sql/sql_union.cc:
  Merge with 4.1
sql/sql_yacc.yy:
  Merge with 4.1
sql/tztime.cc:
  Merge with 4.1
tests/client_test.c:
  Merge with 4.1
2004-09-06 15:14:10 +03:00
unknown
3818b0d3b3 mysql.h:
Fix a misleading plural that should be singular.
  Fix other typos while I'm at it.


include/mysql.h:
  Fix a misleading plural that should be singular.
  Fix other typos while I'm at it.
2004-08-25 12:52:19 -05:00
unknown
2e09e96b05 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.emb


include/mysql.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
2004-08-20 10:50:23 +05:00
unknown
0ed563e801 Fixed symbol name problems that made build fail.
include/mysql.h:
  Fixed symbol name change.
include/mysql_com.h:
  Reverted parts of previous changeset (name changes) to make it build.
libmysql/libmysql.c:
  Fixed symbol name change.
sql/sql_parse.cc:
  Fixed symbol name change.
2004-08-19 20:48:00 +02:00
unknown
eaf34dd8e3 Port of cursors to be pushed into 5.0 tree:
- client side part is simple and may be considered stable
- server side part now just joggles with THD state to save execution
  state and has no additional locking wisdom.
  Lot's of it are to be rewritten.


include/mysql.h:
  Cursor patch to push into the main tree, client library part (considered 
  stable):
  - new statement attribute STMT_ATTR_CURSOR_TYPE
  - MYSQL_STMT::flags to store statement cursor type
  - MYSQL_STMT::server_status to store server status (i. e. if the server
  was able to open a cursor for this query).
include/mysql_com.h:
  Cursor patch to push into the main tree, client library part (considered 
  stable):
  - new COMmand, COM_FETCH, to fetch K rows from read-only cursor.
    By design should support scrollable cursors as well.
  - a few new server statuses:
    SERVER_STATUS_CURSOR_EXISTS is sent by server in reply to COM_EXECUTE,
    when cursor was successfully opened for this query
    SERVER_STATUS_LAST_ROW_SENT is sent along with the last row to prevent one
    more round trip just for finding out that all rows were fetched from 
    this cursor (this is server mem savier also).
  - and finally, all possible values of STMT_ATTR_CURSOR_TYPE, 
    while now we support only CURSORT_TYPE_NO_CURSOR and 
    CURSOR_TYPE_READ_ONLY
libmysql/libmysql.c:
  Cursor patch to push into the main tree, client library part (considered 
  stable):
  - simple additions to mysql_stmt_fetch implementation to read data 
    from an opened cursor: we can read up to iteration count rows per
    one request; read rows are buffered in the same way as rows of
    mysql_stmt_store_result.
  - now send stmt->flags to server to let him now if we wish to have 
    a cursor for this statement.
  - support for setting/getting statement cursor type.
libmysqld/examples/Makefile.am:
  Testing cursors was originally implemented in C++. Now when these tests
  go into client_test, it's time to convert it to C++ as well.
libmysqld/lib_sql.cc:
  - cleanup: send_fields flags are now named.
sql/ha_innodb.cc:
  - cleanup: send_fields flags are now named.
sql/mysql_priv.h:
  - cursors support: declaration for server-side handler of COM_FETCH
sql/protocol.cc:
  - cleanup: send_fields flags are now named.
  - we can't anymore assert that field_types[field_pos] is sensible:
    if we have COM_EXCUTE(stmt1), COM_EXECUTE(stmt2), COM_FETCH(stmt1)
    field_types[field_pos] will point to fields of stmt2.
sql/protocol.h:
  - cleanup: send_fields flag_s_ are now named.
sql/protocol_cursor.cc:
  - cleanup: send_fields flags are now named.
sql/repl_failsafe.cc:
  - cleanup: send_fields flags are now named.
sql/slave.cc:
  - cleanup: send_fields flags are now named.
sql/sp.cc:
  - cleanup: send_fields flags are now named.
sql/sp_head.cc:
  - cleanup: send_fields flags are now named.
sql/sql_acl.cc:
  - cleanup: send_fields flags are now named.
sql/sql_class.cc:
  - cleanup: send_fields flags are now named.
sql/sql_class.h:
  - cleanup: send_fields flags are now named.
sql/sql_error.cc:
  - cleanup: send_fields flags are now named.
sql/sql_handler.cc:
  - cleanup: send_fields flags are now named.
sql/sql_help.cc:
  - cleanup: send_fields flags are now named.
sql/sql_parse.cc:
  Server side support for cursors:
  - handle COM_FETCH
  - enforce assumption that whenever we free thd->free_list, 
    we reset it to zero. This way it's much easier to handle free_list
    in prepared statements implementation.
sql/sql_prepare.cc:
  Server side support for cursors:
  - implementation of mysql_stmt_fetch (fetch some rows from open cursor).
  - management of cursors memory is quite tricky now.
  - execute_stmt can't be reused anymore in mysql_stmt_execute and 
    mysql_sql_stmt_execute
sql/sql_repl.cc:
  - cleanup: send_fields flags are now named.
sql/sql_select.cc:
  Server side support for cursors:
  - implementation of Cursor::open, Cursor::fetch (buggy when it comes to
    non-equi joins), cursor cleanups.
  - -4 -3 -0 constants indicating return value of sub_select and end_send are
    to be renamed to something more readable:
    it turned out to be not so simple, so it should come with the other patch.
sql/sql_select.h:
  Server side support for cursors:
  - declaration of Cursor class.
  - JOIN::fetch_limit contains runtime value of rows fetched via cursor.
sql/sql_show.cc:
  - cleanup: send_fields flags are now named.
sql/sql_table.cc:
  - cleanup: send_fields flags are now named.
sql/sql_union.cc:
  - if there was a cursor, don't cleanup unit: we'll need it to fetch
    the rest of the rows.
tests/Makefile.am:
  Now client_test is in C++.
tests/client_test.cc:
  A few elementary tests for cursors.
BitKeeper/etc/ignore:
  Added libmysqld/examples/client_test.cc to the ignore list
2004-08-03 03:32:21 -07:00
unknown
2cd7e4cdef Fixes for bugs in embedded library:
#4700 (Unsigned value returned as signed)
    just no appropriate checking
#4701 (Errors returned earlier than expected)
    all errors returned from send_command()
#4702 (Result isn't freed properly if there's no retrieval)
    flush_use_result has only 'client' version and should
    be made 'virtual'


include/mysql.h:
  flush_use_result 'virtual' method added to MYSQL (#4701)
include/sql_common.h:
  no flush_use_result() now (#4702)
libmysql/libmysql.c:
  call of the flush_use_result changed (#4702)
libmysqld/lib_sql.cc:
  now errors returned from emb_advanced_command() or from emb_read_rows()
  depending on if number of returned fields is not 0 (#4701)
  emb_flush_use_result() implementation (#4702)
sql-common/client.c:
  cli_flush_use_result() implementation (#4702)
sql/sql_prepare.cc:
  unsigned flag now checked (#4700)
2004-07-22 20:54:25 +05:00
unknown
ba8ffc50a9 After merge fixes
include/mysql.h:
  Cleanup
sql-common/client.c:
  Allow client.c to compile after changes to mysql.h
sql/opt_range.cc:
  Make bdb.test repeatable (and assume that table scans is a little bit slower)
sql/sql_handler.cc:
  Fixed typo during merge
sql/sql_insert.cc:
  Fixed indentation
2004-06-25 21:56:23 +03:00
unknown
c6e23c8549 Merge with 4.0 to get the latest bug patches to 4.1
BitKeeper/etc/ignore:
  added sql/mysql_tzinfo_to_sql
BitKeeper/etc/logging_ok:
  auto-union
acinclude.m4:
  Auto merged
extra/perror.c:
  Auto merged
include/mysql.h:
  Auto merged
innobase/include/mach0data.ic:
  Auto merged
innobase/include/mtr0log.h:
  Auto merged
innobase/include/mtr0log.ic:
  Auto merged
innobase/mem/mem0dbg.c:
  Auto merged
innobase/pars/lexyy.c:
  Auto merged
BitKeeper/deleted/.del-4.0.XX-gpl.ipr~f5909a9e9bd8094:
  Auto merged
BitKeeper/deleted/.del-Clients and Tools.fgl~bf0f776883577f02:
  Auto merged
BitKeeper/deleted/.del-Development.fgl~6392ce285e73f5fc:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/innodb_cache.result:
  Auto merged
mysql-test/r/lowercase_table2.result:
  Auto merged
mysql-test/t/innodb_cache.test:
  Auto merged
mysql-test/t/lowercase_table2.test:
  Auto merged
sql/ha_berkeley.cc:
  Auto merged
sql/handler.cc:
  Auto merged
scripts/make_win_src_distribution.sh:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
libmysql/libmysql.c:
  Merge with 4.0
mysql-test/r/bdb.result:
  Merge with 4.0
mysql-test/r/range.result:
  Merge with 4.0
mysql-test/t/bdb.test:
  Merge with 4.0
mysys/hash.c:
  Merge with 4.0
scripts/mysql_install_db.sh:
  Merge with 4.0
sql/field.cc:
  Merge with 4.0
sql/field.h:
  Merge with 4.0
sql/mysql_priv.h:
  Merge with 4.0
sql/sql_handler.cc:
  Merge with 4.0
sql/sql_select.cc:
  Merge with 4.0
sql/sql_table.cc:
  Merge with 4.0
2004-06-25 20:13:05 +03:00
unknown
13b09b10df Type of MYSQL_BIND::buffer changed to void * 2004-06-25 17:04:33 +04:00
unknown
9dde418895 Fix for Bug#4030 "Client side conversion string -> date type doesn't
work (prepared statements)" and after-review fixes:
- str_to_TIME renamed to str_to_datetime to pair with str_to_time
- functions str_to_time and str_to_TIME moved to sql-common
- send_data_str now supports MYSQL_TYPE_TIME, MYSQL_TIME_DATE,
  MYSQL_TIME_DATETIME types of user input buffers.
- few more comments in the client library
- a test case added.


VC++Files/libmysql/libmysql.dsp:
  new file: my_time.c
VC++Files/libmysqld/libmysqld.dsp:
  new file: my_time.c
VC++Files/sql/mysqld.dsp:
  new file: my_time.c
include/Makefile.am:
  - mysql_time.h added to the list of installed client library headers
include/mysql.h:
  - declarations for MYSQL_TIME and enum_mysql_timestamp_type moved to 
  mysql_time.h, which is in shared use of client library and mysys.
libmysql/Makefile.shared:
  - my_time.lo added to the list of libmysql objects
libmysql/libmysql.c:
  Fix for bug#4030 "Client side conversion string -> date type doesn't work
   (prepared statements)" and cleanup.
  - added case labels for TIME/DATE/DATETIME types to send_data_str
  - comments for read_binary_{date,time,datetime}, fetch_result_*, fetch_results.
libmysqld/Makefile.am:
  - my_time.c added
sql-common/Makefile.am:
  - my_time.c added to the list of files included into source distribution.
sql/Makefile.am:
  my_time.c added to the list of mysqld sources.
sql/field.cc:
  - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
    MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...}
sql/item.cc:
  - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
    MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...}
sql/item_timefunc.cc:
  - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
    MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...}
sql/mysql_priv.h:
  - added typedefs for TIME and timestamp_type
  - removed declarations for str_to_time and str_to_TIME (now this functions
    reside in mysys)
sql/mysqld.cc:
  - log_10_int moved to mysys (it's used by str_to_TIME and str_to_time)
  - enum values TIMESTAMP_{TIME,DATE,DATETIME} were renamed to
    MYSQL_TIMESTAMP_{TIME,DATE,DATETIME}
sql/set_var.cc:
  - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
    MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...}
sql/set_var.h:
  - fixed timestamp_type usage to be compatible with typedef.
sql/sql_prepare.cc:
  - TIMESTAMP_{TIME,DATE,DATETIME} were renamed to
    MYSQL_TIMESTAMP_{TIME,DATE,DATETIME}
  - embedded library implementation of set_param_{time,date,datetime} is
  much simplier now, as MYSQL_TIME is the same as TIME.
sql/sql_yacc.yy:
  - s/\<TIMESTAMP_/MYSQL_TIMESTAMP/gc
sql/structs.h:
  - declarations for TIME and timestamp_type replaced with typedefs
  - str_to_datetime arguments moved to mysys headers
sql/time.cc:
  - str_to_time and str_to_TIME moved to mysys
  - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
    MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...} as these names are now
    exported to client.
  - str_to_TIME renamed to str_to_datetime to pair with str_to_time
  - str_to_TIME_with_warn renamed accordingly
sql/tztime.cc:
  - TIMESTAMP_{TIME,DATE,DATETIME,...} renamed to 
    MYSQL_TIMESTAMP_{TIME,DATETIME,DATE,...}
tests/client_test.c:
  - a test case for Bug#4030 "Client side conversion string -> date type 
  doesn't work (prepared statements)"
2004-06-24 19:08:36 +04:00
unknown
3db93f8086 lower_case_table_names=2 (Keep case for table names) was not honored
with ALTER TABLE and CREATE/DROP INDEX. (Bug #3109)
Make net_buffer_length visible for mysql clients (Bug #4206)


include/mysql.h:
  Make net_buffer_length visible for mysql clients
libmysql/libmysql.c:
  Make net_buffer_length visible for mysql clients
mysql-test/mysql-test-run.sh:
  Don't give warning for some common 'safe' warnings
mysql-test/r/lowercase_table2.result:
  Test name conversion with ALTER TABLE / CREATE INDEX (Bug #3109)
mysql-test/t/lowercase_table2.test:
  Test name conversion with ALTER TABLE / CREATE INDEX (Bug #3109)
scripts/mysql_install_db.sh:
  Removed not used variable
sql/sql_table.cc:
  lower_case_table_names=2 (Keep case for table names) was not honored
  with ALTER TABLE and CREATE/DROP INDEX. (Bug #3109)
2004-06-23 16:44:34 +03:00
unknown
227f223d6b Merge gbichot@213.136.52.20:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1-874


include/mysql.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2004-06-18 23:51:15 +02:00
unknown
340162df2c Comments and cleanups in client library.
include/mysql.h:
  mysql_bind_param -> mysql_stmt_bind_param
libmysql/libmysql.c:
  - more comments
  - trailing spaces stripped
  - update_statement_metadata moved to appropriate section (from 'Statement
  close and error reporting' section)
  - store_param_type moved to store_ functions
2004-06-16 23:11:02 +04:00
unknown
aba49a6c0b API change: mysql_shutdown() now needs a 2nd parameter, the shutdown level.
Server will however still accept shutdown without specified level; so that old
mysqladmin can still shut server down.
I would like your comments on the names of shutdown level which I chose. You
are welcome to propose better names. Please however check WL#709 before.
Reason for the names I propose is to be accurate, thus leaving possibility
for other levels which we may imagine in the future; that's why I have rejected
names like "fast", "smart", "graceful" so far. My position is that WAIT_ALL_BUFFERS
or WAIT_CRITICAL_BUFFERS say what the shutdown does, whereas for "smart", "fast" you
need to remember what it does.
This should be pushed in 4.1.3 but only after your comments.


client/mysqladmin.c:
  2nd parameter for mysql_shutdown()
include/mysql.h:
  2nd paramater for mysql_shutdown()
include/mysql_com.h:
  4 types of shutdown
libmysql/libmysql.c:
  passing the requested shutdown level
sql/sql_parse.cc:
  check for the shutdown level in dispatch_command(). Though its value is ignored for now.
tools/mysqlmanager.c:
  2nd parameter to mysql_shutdown
2004-06-15 11:35:23 +02:00
unknown
5cc410bb70 mysql_stmt_field_count()
include/mysql.h:
  mysql_stmt_field_count() declaration
libmysql/libmysql.c:
  added mysql_stmt_field_count(): 
  we need this function to ease use of mysql_stmt_result_metadata:
  if mysql_stmt_field_count() != 0 mysql_stmt_result_metadata fails
  only if OOM.
libmysql/libmysql.def:
  declaration for mysql_stmt_field_count()
2004-06-06 02:27:05 +04:00
unknown
1407f2f0a8 HAVE_DEPRECATED_411_API macro removed.
include/mysql.h:
  Removed obsolete define.
tests/client_test.c:
  Rewritten to use new API.
  Few cleanups.
  A lot of valgrind warnings/errors removed.
2004-06-04 18:38:18 +04:00
unknown
5bf17d04f5 Merge with 4.0 to get fixes for netware
client/mysqltest.c:
  Auto merged
include/mysql.h:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/include/row0mysql.h:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
libmysql/libmysql.c:
  Auto merged
mysql-test/README:
  Auto merged
mysql-test/r/select_found.result:
  Auto merged
mysql-test/t/select_found.test:
  Auto merged
mysys/mf_wcomp.c:
  Auto merged
mysys/mf_wfile.c:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
configure.in:
  Get changes for netware
include/my_sys.h:
  Use local file
innobase/include/os0file.h:
  auto merge
innobase/os/os0file.c:
  auto merge
sql/mysqld.cc:
  auto merge
sql/sql_acl.cc:
  indentation change
sql/sql_acl.h:
  use local file
sql/sql_class.h:
  auto merge
sql/sql_db.cc:
  use local file
sql/sql_parse.cc:
  use local file
sql/sql_select.cc:
  Merge
sql/sql_show.cc:
  use local file
2004-06-02 00:09:14 +03:00
unknown
09b9182e2e mysql_get_parameter interface fixed
include/mysql.h:
  (void) added to the empty parameter's list
libmysql/libmysql.c:
  (void) added to the empty parameter's list
2004-05-31 13:53:10 +05:00
unknown
7c5cd4125d merge with 4.0 to get windows fixes
VC++Files/client/mysqlclient.dsp:
  Auto merged
VC++Files/innobase/innobase.dsp:
  Auto merged
include/mysql.h:
  Auto merged
include/mysql_com.h:
  Auto merged
innobase/include/log0log.h:
  Auto merged
innobase/include/log0log.ic:
  Auto merged
innobase/include/mtr0mtr.h:
  Auto merged
innobase/log/log0log.c:
  Auto merged
innobase/log/log0recv.c:
  Auto merged
innobase/que/que0que.c:
  Auto merged
libmysql/libmysql.c:
  Auto merged
libmysql_r/Makefile.am:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
tools/mysqlmanager.c:
  Auto merged
2004-05-27 00:30:28 +03:00
unknown
00c41b2850 Fix to make Windows compilation smoother
VC++Files/innobase/innobase.dsp:
  non-existent file removed
client/mysql.cc:
  local opt_max_allowed_packet and opt_net_buffer_length introduced
client/mysqldump.c:
  local opt_max_allowed_packet and opt_net_buffer_length introduced
include/mysql.h:
  mysql_get_parameters() interface added
  #define max_allowed_packet added
include/mysql_com.h:
  these should not be exported
libmysql/libmysql.c:
  mysql_get_parameters implementations
libmysql/libmysql.def:
  interface changed
libmysql_r/Makefile.am:
  MYSQL_CLIENT define added
libmysqld/lib_sql.cc:
  line moved to be above the '#include "mysql.cc"'
libmysqld/libmysqld.c:
  mysql_get_parameters implementation (embedded)
libmysqld/libmysqld.def:
  interface changed
sql/log_event.cc:
  should be like that in this case
tools/mysqlmanager.c:
  compiler warns on this line
2004-05-26 21:40:27 +05:00
unknown
c6bc3cfb84 Added additional parameter userdata for mysql_set_local_infile_handler
to allow binding of userland functions in PHP.


include/mysql.h:
  added new last parameter (void *) for mysql_set_local_infile_handler
  st_mysql_options:
    added void *local_infile_userdata
    added last parameter (void *) for local_infile_init function pointer
libmysql/libmysql.c:
  added parameter userdata in mysql_set_local_infile_handler
  added parameter (void *userdata __attribute__ ((unused))) in mysql_local_infile_init
  passed additional parameter userdata to init function in handle_local_infile
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-05-07 14:50:10 +02:00
unknown
66f2d8bffa myisam_data_pointer_size
include/mysql.h:
  compatibility fix
2004-05-01 15:41:59 +02:00
unknown
72c7b3529e Merge
libmysql/libmysql.c:
  Auto merged
tests/client_test.c:
  Auto merged
include/mysql.h:
  SCCS merged
2004-04-30 14:04:51 +03:00
unknown
15c2bb61f5 Update 'MYSQL_FIELD->max_length' on mysql_stmt_store_result() (Bug #1647)
Added checking of cut read lines in bootstrap thread (Bug #2874)


include/mysql.h:
  Added length to MYSQL_ROWS to enable sanity checking of packets
  Update 'MYSQL_FIELD->max_length' on mysql_stmt_store_result()
libmysql/libmysql.c:
  Update 'MYSQL_FIELD->max_length' on mysql_stmt_store_result() (Bug #1647)
scripts/fill_help_tables.sh:
  Added checking of maximum length of line in output (Bug #2874)
scripts/mysql_install_db.sh:
  Added error message if help tables couldn't be done (Bug #2874)
sql/sql_parse.cc:
  Added checking of cut read lines in bootstrap thread (Bug #2874)
tests/client_test.c:
  Added --debug
  Changed some strange define names
  Less output
  Added testing of max_length for prepared statements
2004-04-30 14:02:17 +03:00
unknown
be5d750a24 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/kostja/mysql/mysql-4.1-u2


include/mysql.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
tests/client_test.c:
  Auto merged
2004-04-30 03:00:55 +04:00
unknown
d5237fd09f Fix for Bug#3035 "Prepared statement integer inserts": now unsigned
flag is sent to server with placeholder types.
There were no need to extend the protocol as one additional byte
was reserved for placeholder code, when placeholder code is in range 0-255.
So this byte is now used for flags. Post-review fixes added.


include/config-win.h:
  added floaststore implementation
include/my_global.h:
  added floatstore implementation
include/mysql.h:
  Bug#3035:
  added 'is_unsigned' member
  binary_data wasn't used, removed
  null_field wasn't necessary, removed
include/mysql_com.h:
  Unused defines were removed.
libmysql/libmysql.c:
  Function store_param_type was removed - too much for a function, especially
  with bug in it.
  New implementation is inline and takes into account signedness of 
  placeholder.
  Fixed store functions to not perform double network-host order conversion
  on high-byte-first systems (should also fix Bug#3578 "Prepared statement 
  integer conversions work wrong in 64-bit Power Mac G5 CPUs").
  null_field removed.
sql/sql_prepare.cc:
  Placeholder sign is taken into account when reading data from network.
tests/client_test.c:
  Test for BUG#3035 added: insert and retrieve minimum and maximum of all
  integer types.
2004-04-30 03:00:19 +04:00
unknown
e73e26f381 Implementation of mysql_stmt_attr_get and mysql_stmt_attr_set
requested by Monty for Bug#1647 (No way to determine what size 
blob/clob is being returned into bound buffer)


include/mysql.h:
  Implementation of mysql_stmt_attr_get and mysql_stmt_attr_set 
  requested by Monty for Bug#1647.
libmysql/libmysql.c:
  Implementation of mysql_stmt_attr_get and mysql_stmt_attr_set 
  requested by Monty for Bug#1647.
libmysql/libmysql.def:
  Windows .defs added for new API calls
2004-04-30 01:02:29 +04:00
unknown
93c70c0772 simple optimzation
Portability fixes


client/mysqltest.c:
  Fixed that if error number 0 is included in --error, we will not generate an error message
include/mysql.h:
  Portability fix
mysql-test/mysql-test-run.sh:
  Portability fix
mysql-test/r/heap_btree.result:
  Portability fix
mysql-test/r/rpl_error_ignored_table.result:
  Portability fix
mysql-test/t/heap_btree.test:
  Portability fix
mysql-test/t/rpl_error_ignored_table.test:
  Portability fix
sql/sql_base.cc:
  simple optimzation
sql/sql_yacc.yy:
  simple optimzation
2004-03-31 03:32:38 +03:00
unknown
7e5cd91057 Simplification: MYSQL_RES *result replaced with MYSQL_DATA result;
No need to check for result existence any more, store_result functions
now are shorter.
cli_read_binary_rows rewritten to handle MYSQL_DATA directly.


include/mysql.h:
  MYSQL_RES * pointer replaced with MYSQL_DATA: it saves us at least 2 mallocs
  per store_result and simplifies stored result handling.
  Plus it's done with cursor fetch in mind: cursor fetch will use this
  structure to buffer fetched rows.
libmysql/client_settings.h:
  signature of cli_read_binary_rows changed
libmysql/libmysql.c:
  MYSQL_DATA is now used to handle result.
  cli_read_binary_rows rewritten to use MYSQL_DATA directly.
libmysql/libmysql.def:
  declarations of new calls in the library
libmysqld/lib_sql.cc:
  MYSQL_DATA is now used to handle result.
  cli_read_binary_rows rewritten to use MYSQL_DATA directly.
2004-03-28 17:22:04 +04:00
unknown
054d2de499 Cleanups & safety fixes
include/mysql.h:
  cleanup of load data infile patch
libmysql/libmysql.c:
  cleanup of load data infile patch
myisam/mi_search.c:
  Added missing assert.h
mysql-test/r/func_time.result:
  Make test more secure
mysql-test/t/func_time.test:
  Make test more secure
sql/item.cc:
  restore to use str_value in item::save_in_field
sql/item.h:
  Simple cleanup
sql/item_cmpfunc.cc:
  Safety fix
sql/item_cmpfunc.h:
  Simple optimization
sql/item_func.cc:
  Updated comment
sql/sql_base.cc:
  Simple optimization
sql/sql_select.cc:
  Simple optimization
sql/sql_union.cc:
  safey fixes
2004-03-25 22:11:22 +02:00
unknown
03f5ebf1b0 Added LOCAL INFILE callback function support.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-03-22 19:58:49 -05:00
unknown
5b624042b8 Removed compiler warning
Changed _XXX to _MY_XXX to solve conflict problem on Mac OS X


include/m_ctype.h:
  Changed _XXX to _MY_XXX to solve conflict problem on Mac OS X
include/mysql.h:
  Removed compiler warning
libmysqld/lib_sql.cc:
  Removed compiler warning
mysys/charset2html.c:
  Changed _XXX to _MY_XXX to solve conflict problem on Mac OS X
regex/regcomp.c:
  Changed _XXX to _MY_XXX to solve conflict problem on Mac OS X
sql-common/client.c:
  Indentation fix
2004-03-18 14:53:38 +02:00
unknown
321422c86e Intermediate commit of client library (cleanups + fixes of 3 items from
flaws list)
TODO: 
 * verify that no sequence of API calls produces SIGSEGV.
 That is, verify that mysql_stmt_init  -> mysql_stmt_fetch is OK,
 or mysql_stmt_prepare -> mysql_stmt_fetch_column is OK and sets
 meaningful error.
 * remove alloc_stmt_fields call
 * revise stmt->state codes and statement states.
 * there are other items in prepared statements 'to fix' document.

Done:
 - cleanups and comments
 - revision of prepared statement error codes.
 - mysql_stmt_prepare is now can always be called (that is, you can reprepare
   a statement)
 - new implementation of mysql_stmt_close and fetch cancellation


include/errmsg.h:
  - CR_NOT_ALL_PARAMS_BOUND - this error code wasn't used until now. 
    Apparently it was added in advance, but then interface of
    mysql_stmt_bind_param changed. Now it's not possible to bind only some
    parameters - either all or none of parameters are bound.
    This error code  is renamed to CR_PARAMS_NOT_BOUND
  - CR_FETCH_CANCELLED - error code set on server side when fetch from 
    MYSQL_RES or MYSQL_STMT (in blocking mode) was cancelled because of
    intercepting call to mysql_stmt_close
  - CR_NO_DATA - this is proposed error code to return from 
    mysql_stmt_fetch_column if no row was fetched (by any type of fetch).
    We always can fall back to CR_COMMANDS_OUT_OF_SYNC though.
    Need reviewer's opinion on this one.
include/mysql.h:
  - added unbuffered_fetch_owner member to MYSQL to point to MYSQL_RES 
    or MYSQL_STMT which is used to fetch result at the moment.
    This is to be able to set CR_FETCH_CANCELLED error without fantoms.
  - added unbuffered_fetch_cancelled boolean variable to MYSQL_STMT and 
    MYSQL_RES structures
  - rename PREP_STMT_STATE -> enum enum_mysql_stmt_state
  - members of MYSQL_STMT ordered by size.
  - removed members of MYSQL_STMT: current_row, result_buffered,
    last_fetched_column, last_fetched_buffer, query
  - renamed members of MYSQL_STMT: param_buffers -> bind_param_done, 
    res_buffers -> bind_result_done
  - now mysql_stmt_fetch calls stmt->read_row_func to read row either from 
    buffer or from network.
include/sql_common.h:
  declaration for flush_use_result
libmysql/client_settings.h:
  stmt_close declaration removed
libmysql/errmsg.c:
  Error messages for changed and added error codes.
libmysql/libmysql.c:
  Many changes:
  - some unused variables removed
  - cleanups
  - better error reporting
  - some function calls commented
  - alloc_stmt_fields is now called right after execute, to not read
    mysql->fields of some other statement
  - new implementation of mysql_stmt_fetch - this is also with cursor
    fetch in mind (to implement cursor fetch I'll just need to write
    special read_row function for it, so this change will be local)
  - implementation of fetch cancellation, including complete rewrite of
    mysql_stmt_close
  - now mysql_stmt_free_result doesn't free results of other statements.
sql-common/client.c:
  - implementation of flush_use_result
  - implementation of fetch cancellation
  - changed behaviour of mysql_close in regard to mysql_stmt_close - now 
    mysql_close just set stmt->mysql to 0
2004-03-16 01:04:04 +03:00
unknown
188535bba0 Rename:
read_statistic -> read_statistics
(statistic is adjective)


include/mysql.h:
  read_statistic -> read_statistics
libmysql/client_settings.h:
  read_statistic -> read_statistics
libmysql/libmysql.c:
  read_statistic -> read_statistics
libmysqld/lib_sql.cc:
  read_statistic -> read_statistics
sql-common/client.c:
  read_statistic -> read_statistics
2004-03-10 20:12:24 +03:00
unknown
7ef1b4dff2 New call mysql_stmt_init() introduced.
Renames:
mysql_bind_param      -> mysql_stmt_bind_param
mysql_bind_result     -> mysql_stmt_bind_result
mysql_execute         -> mysql_stmt_execute
mysql_fetch           -> mysql_stmt_fetch
mysql_fetch_column    -> mysql_stmt_fetch_column
mysql_get_metadata    -> mysql_stmt_result_metadata
mysql_param_count     -> mysql_stmt_param_count
mysql_param_result    -> mysql_stmt_param_metadata
mysql_prepare         -> mysql_stmt_prepare
mysql_send_long_data  -> mysql_stmt_send_long_data

client_test.c cleaned up from memory leaks


include/mysql.h:
  New call mysql_stmt_init() introduced.
  Renames:
  mysql_bind_param      -> mysql_stmt_bind_param
  mysql_bind_result     -> mysql_stmt_bind_result
  mysql_execute         -> mysql_stmt_execute
  mysql_fetch           -> mysql_stmt_fetch
  mysql_fetch_column    -> mysql_stmt_fetch_column
  mysql_get_metadata    -> mysql_stmt_result_metadata
  mysql_param_count     -> mysql_stmt_param_count
  mysql_param_result    -> mysql_stmt_param_metadata
  mysql_prepare         -> mysql_stmt_prepare
  mysql_send_long_data  -> mysql_stmt_send_long_data
  Renames are done according to the rule 'Everything call operating with
  'MYSQL_STMT' structure has 'mysql_stmt_' prefix.
  Additionally mysql_param_result was renamed to mysql_stmt_param_metadata
  and mysql_get_metadata to mysql_stmt_result_metadata.
  All renames are done in hope that new names are easier to remember and 
  understand.
libmysql/client_settings.h:
  skip_list is not needed any more
libmysql/libmysql.c:
  New call mysql_stmt_init() introduced.
  Renames:
  mysql_bind_param      -> mysql_stmt_bind_param
  mysql_bind_result     -> mysql_stmt_bind_result
  mysql_execute         -> mysql_stmt_execute
  mysql_fetch           -> mysql_stmt_fetch
  mysql_fetch_column    -> mysql_stmt_fetch_column
  mysql_get_metadata    -> mysql_stmt_result_metadata
  mysql_param_count     -> mysql_stmt_param_count
  mysql_param_result    -> mysql_stmt_param_metadata
  mysql_prepare         -> mysql_stmt_prepare
  mysql_send_long_data  -> mysql_stmt_send_long_data
sql-common/client.c:
  no skip_list argument any more
tests/client_test.c:
  - many memory leaks and valgrind errors cleaned up.
2004-03-05 16:55:09 +03:00
unknown
709356d473 Changed wellformedlen to well_formed_len
Fixed that blobs >16M can be inserted/updated
Fixed bug when doing CREATE TEMPORARY TABLE ... LIKE


include/m_ctype.h:
  Changed wellformedlen to well_formed_len
include/mysql.h:
  Fixed comment
libmysql/libmysql.c:
  Fixed indentation
libmysqld/lib_sql.cc:
  Fixed indentation
mysql-test/r/ctype_utf8.result:
  updated warning numbers
mysql-test/r/innodb.result:
  Moved test to right place
mysql-test/r/myisam-blob.result:
  More test for blobs
mysql-test/r/rpl000002.result:
  Move test to better place
mysql-test/r/rpl_log.result:
  Move test to better place
mysql-test/r/union.result:
  Move test to better place
mysql-test/t/innodb.test:
  Moved test to right place
mysql-test/t/myisam-blob.test:
  More test of blobs
mysql-test/t/rpl000002.test:
  Move test to better place
mysql-test/t/rpl_log.test:
  Move test to better place
mysql-test/t/union.test:
  Move test to better place
sql/field.cc:
  Changed wellformedlen to well_formed_len.
  Fixed that blobs >16M can be inserted/updated (new bug)
sql/field.h:
  Code optimization
sql/sql_lex.cc:
  Changed short variable names
sql/sql_show.cc:
  Optimized quote handling
sql/sql_table.cc:
  Fixed bug when doing CREATE TEMPORARY TABLE ... LIKE
sql/sql_union.cc:
  Added comment
strings/ctype-big5.c:
  Changed wellformedlen to well_formed_len
strings/ctype-bin.c:
  Changed wellformedlen to well_formed_len
strings/ctype-euc_kr.c:
  Changed wellformedlen to well_formed_len
strings/ctype-gb2312.c:
  Changed wellformedlen to well_formed_len
strings/ctype-gbk.c:
  Changed wellformedlen to well_formed_len
strings/ctype-latin1.c:
  Changed wellformedlen to well_formed_len
strings/ctype-mb.c:
  Changed wellformedlen to well_formed_len
strings/ctype-simple.c:
  Changed wellformedlen to well_formed_len
strings/ctype-sjis.c:
  Changed wellformedlen to well_formed_len
strings/ctype-tis620.c:
  Changed wellformedlen to well_formed_len
strings/ctype-ucs2.c:
  Changed wellformedlen to well_formed_len
  Indentation changes
strings/ctype-ujis.c:
  Changed wellformedlen to well_formed_len
strings/ctype-utf8.c:
  Changed wellformedlen to well_formed_len
2004-02-17 01:35:17 +02:00
unknown
b012018b7a Fix for #2212 (mysql_change_user doesn't work in embedded library)
now it's working


include/mysql.h:
  read_change_user_result 'virtual' method added
libmysql/client_settings.h:
  cli_read_change_user_result interface
libmysql/libmysql.c:
  cli_read_change_user_result implementation
libmysqld/lib_sql.cc:
  emb_read_change_user_result implementation
sql-common/client.c:
  cli_read_change_user_result added to the method's table
sql/sql_parse.cc:
  fixes to make mysql_change_user working in embedded library
2004-02-14 20:26:21 +04:00
unknown
7e7fec0be3 manual merge, bug #2247
include/mysql.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
tests/client_test.c:
  manual merge
2004-02-13 00:50:03 +03:00
unknown
f2753fe9ac Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg2248


include/mysql.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
2004-02-11 16:09:33 +03:00
unknown
94f215cbe1 Fixed bug #2248 "mysql_fetch without prior mysql_execute hangs"
Done clean-up in prep stmt API functions:
1) Removed some checks that were performed only in debug version
were making debug version more tolerable to user errors than 
production (and thus caused problems for example masking some
bugs). 
2) Also removed some other checks to make prep stmt API 
consistent with the rest of C API (this also in line with 
general politics - make checks in only those places where 
errors are very common and hard to spot).


include/mysql.h:
  Removed CHECK_EXTRA_ARGUMENTS define since it is no longer used 
  anywhere.
libmysql/libmysql.c:
  Added check that will cause mysql_fetch() to bark then it is 
  used without calling mysql_execute() before.
  Removed checks that were performed only in debug version and
  caused problems since they were making debug version more 
  tolerable to user errors than production. Also removed some
  other checks to make prep stmt API consistent in this regard 
  with the rest of C API (this also in line with general politics -
  make checks in only those places where errors are very common 
  and hard to spot).
tests/client_test.c:
  Updated tests to reflect removal of some checks in prep stmt API.
  Removed lines that caused bug #2473 to pop up, should be added 
  as separate test with the fix for this bug.
  Added test for bug#2248 "mysql_fetch without prior mysql_execute 
  hangs"
2004-02-10 16:58:20 +03:00
unknown
b4fc7c7fbf Fix for #2208 (multi-query returns wrong result in embedded library)
now we execute only one first select during mysql_real_query
others - during 'mysql_next_result'


include/mysql.h:
  'virtual' next_result added
libmysql/client_settings.h:
  cli_next_result declaration added
libmysql/libmysql.c:
  mysql_next_result now works in embedded library as well
libmysqld/lib_sql.cc:
  emb_next_result implemented
sql/sql_class.h:
  fields to store the rest of the query added
sql/sql_parse.cc:
  Saving the rest of the query added for embedded case
2004-02-10 17:09:59 +04:00
unknown
3aef1d2c4b Fix for bug #2247: "mysql_stmt_affected_rows returns affected rows from
last command"


include/mysql.h:
  Fix for bug #2247: 
  added affected_rows variable to MYSQL_STMT
libmysql/libmysql.c:
  Fix for bug #2247: 
  save mysql->affected_rows in stmt->affected_rows
  after mysql_execute() and mysql_stmt_store_result().
tests/client_test.c:
  Fix for bug #2247: test added
2004-02-06 16:03:09 +03:00
unknown
886307f282 Fix for #2126 (mysql_server_init call shouldn't be needed)
now mysql_server_init is called from mysql_init with fake parameters
mysql_once_init code included to mysql_server_init.
embedded-specific initialization is in init_embedded_server function


include/errmsg.h:
  this error won't happen
include/mysql.h:
  declarations removed
libmysql/client_settings.h:
  declaration of init_embedded_server/end_embedded_server added
libmysql/errmsg.c:
  this error won't happen
libmysql/libmysql.c:
  mysql_once_init -> mysql_server_init transformations
libmysqld/embedded_priv.h:
  declaration deleted
libmysqld/lib_sql.cc:
  mysql_server_init -> init_embedded_server
  mysql_server_end  -> end_embedded_server
libmysqld/libmysqld.c:
  check for server_inited not needed now
sql-common/client.c:
  mysql_server_init now called from mysql_init
sql/client_settings.h:
  fake mysql_server_init for server code
sql/net_serv.cc:
  we need MYSQL_CLIENT defined in embedded server
sql/sql_client.cc:
  not needed now
2003-12-18 15:51:22 +04:00
unknown
287661e66c Fixed a possible memory leak on MacOSX when using the shared libmysql.so library (Bug #2061)
mysql_server_init() now returns error code if something went wrong (Bug #2062)
Don't use my_fopen() when reading symlink information as this may cause problems when a lot of files are opened.
Free thread keys with pthread_key_delete() instead of relying on automatic free. (Bug #2062)
Fixed bug in UNION statement with alias '*'. (Bug #1249)
Fixed a bug in DELETE ... ORDER BY ... LIMIT where the rows where not deleted in the proper order. (Bug #1024).
FOUND_ROWS() could return incorrect number of rows after a query with an impossible WHERE condition.
HOW DATABASES doesn't anymore show .sym files (on windows) that doesn't point to a valid directory. (Bug #1385)


include/config-win.h:
  Ensure that USE_SYMDIR is set for all windows versions
  (This is set in makefiles, so this is just an extra safety measure)
include/my_pthread.h:
  Fixed a possible memory leak on MacOSX when using the shared libmysql.so library (Bug #2061)
include/my_sys.h:
  my_init() now returns error code if something went wrong
include/mysql.h:
  mysql_once_init() now returns error code if something went wrong
include/mysql_com.h:
  my_init() now returns error code if something went wrong
libmysql/libmysql.c:
  mysql_server_init() and mysql_once_init() now returns error code if something went wrong (Bug #2062)
mysql-test/r/limit.result:
  Update results
mysql-test/r/select_found.result:
  Update results
mysql-test/r/union.result:
  Update results
mysql-test/t/limit.test:
  Added test for DELETE ... ORDER BY ... LIMIT (bug #1024)
mysql-test/t/select_found.test:
  Added test for problem with impossible WHERE (Bug #1468)
mysql-test/t/union.test:
  Added test for problem with alias '*' (Bug #1249)
mysys/mf_pack.c:
  Don't use my_fopen() when reading symlink information as this may cause problems when a lot of files are opened.
mysys/my_init.c:
  my_init() now returns error code if something went wrong
mysys/my_lib.c:
  More debug information
mysys/my_thr_init.c:
  Free thread keys with pthread_key_delete() instead of relying on automatic free. (Bug #2062)
sql/sql_base.cc:
  Fixed bug in UNION statement with alias '*'. (Bug #1249)
sql/sql_delete.cc:
  Fixed a bug in DELETE ... ORDER BY ... LIMIT where the rows where not deleted in the proper order. (Bug #1024).
sql/sql_select.cc:
  FOUND_ROWS() could return incorrect number of rows after a query with an impossible WHERE condition.
sql/sql_show.cc:
  SHOW DATABASES doesn't anymore show .sym files (on windows) that doesn't point to a valid directory. (Bug #1385)
sql/sql_yacc.yy:
  Allow syntax UNION DISTINCT
2003-12-11 06:24:08 +02:00