Class for sending data from server to client (Protocol)
This handles both the old ( <= 4.0 ) protocol and then new binary protocol that is used for prepared statements.
libmysql/libmysql.c:
Jump over reserved bits in the binary protocol
libmysqld/Makefile.am:
rename of net_pkg.cc to protocol.cc
mysql-test/r/case.result:
Fixed previously wrong test
mysql-test/r/cast.result:
Fixed previously wrong test
sql/Makefile.am:
Rename of net_pkg.cc to protocol.cc
sql/field.cc:
Binary protocol
Added key handling functions for new VARCHAR type
sql/field.h:
New protocol
sql/ha_berkeley.cc:
New protocol
sql/ha_berkeley.h:
New protocol
sql/ha_innodb.cc:
New protocol
sql/ha_myisam.cc:
New protocol
sql/item.cc:
New protocol
sql/item.h:
New protocol
sql/item_func.cc:
Removed old code from 3.23
sql/item_func.h:
Set cached_result_type as it was previosly used before set
sql/item_subselect.cc:
Standard make_field() is now good enough
sql/item_subselect.h:
Use default make_field()
sql/item_sum.cc:
Clean up Item_sum::make_field()
sql/item_sum.h:
Use standard make_field()
sql/item_timefunc.h:
return correct types for casts()
Use standard make_field()
sql/log_event.cc:
New protocol
sql/log_event.h:
New protocol
sql/mysql_priv.h:
Move things to protocol.h
sql/opt_range.cc:
Indentation cleanups + small optimization
sql/procedure.h:
Use MYSQL_TYPE instead of FIELD_TYPE
sql/protocol.cc:
Class for sending data from server to client.
This handles both the old ( <= 4.0 ) protocol and then new binary protocol that is used for prepared statements.
sql/repl_failsafe.cc:
New protocol
sql/slave.cc:
New protocol
sql/sql_acl.cc:
New protocol
sql/sql_base.cc:
Move send_fields() to protocol.cc
sql/sql_class.cc:
New protocol
sql/sql_class.h:
New protocol
sql/sql_db.cc:
New protocol
sql/sql_error.cc:
New protocol
sql/sql_handler.cc:
New protocol
sql/sql_help.cc:
New protocol
sql/sql_parse.cc:
Remove wrong assert (variable was not initalized at this point)
sql/sql_prepare.cc:
New protocol
sql/sql_repl.cc:
New protocol
sql/sql_select.cc:
New protocol
sql/sql_show.cc:
New protocol
sql/sql_string.h:
New functions used by the protocol functions
sql/sql_table.cc:
New protocol
sql/structs.h:
Make second_part ulong to prepare for ANSI sub-seconds
sql/time.cc:
New convert function needed by the new protocol functions
sql/mysqld.cc:
With the introduction of Pro release version the InnoDB table engine
was added for all binaries and not more define only the max package
Implements creation and dropping of PROCEDUREs, IN, OUT, and INOUT parameters,
single-statement procedures, rudimentary multi-statement (begin-end) prodedures
(when the client can handle it), and local variables.
Missing most of the embedded SQL language, all attributes, FUNCTIONs, error handling,
reparses procedures at each call (no caching), etc, etc.
Certainly buggy too, but procedures can actually be created and called....
sql/Makefile.am:
Added SP files.
sql/item.cc:
Added this*_item() methods for Item_splocal. (SP local variable)
sql/item.h:
Added this*_item() methods for SPs in Item, and the new Item_splocal
class (SP local variable).
sql/lex.h:
Added new symbols for SPs. (Note: SPSET is temporary and will go away later.)
sql/sql_class.cc:
Initialize SP runtime context in THD.
sql/sql_class.h:
Add SP runtime context to THD.
sql/sql_lex.cc:
Init. buf pointer to beginning of command (needed by SPs).
Also initialize SP head and parse time context.
sql/sql_lex.h:
New SQLCOM_ tags for SPs, and added pointer to beginning of command pointer and
SP head and parse-time context to LEX.
sql/sql_parse.cc:
Added SQLCOM_CREATE_PROCEDURE, _CALL, _ALTER_PROCEDURE and _DROP_PROCEDURE cases.
(Still rudimentary and lacking proper error handling...)
sql/sql_yacc.yy:
Lots and lots of additions for SPs...
(Still even more missing, and no error messages...)
NULL with row (IN)
cardinality error of row inside row
new[]
fixed layout
mysql-test/r/row.result:
test of optimized IN with Rows
test of NULL with row
test of cardinality error of row inside row
mysql-test/t/row.test:
test of optimized IN with Rows
test of NULL with row
test of cardinality error of row inside row
sql/item_cmpfunc.cc:
optimized IN with Rows
NULL with row (IN)
cardinality error of row inside row
sql/item_cmpfunc.h:
optimized IN with Rows
NULL with row (IN)
cardinality error of row inside row
fixed layout
sql/sql_list.h:
fixed layout
new[]
renamed row item test
mysql-test/r/row.result:
IN with row item without constant optimisation
mysql-test/t/row.test:
IN with row item without constant optimisation
sql/item_cmpfunc.cc:
IN with row item without constant optimisation
sql/item_cmpfunc.h:
IN with row item without constant optimisation
Fix for save_in_field to take extra bool argumnet (4.0 merge compatibility)
sql/item.cc:
Fix for save_in_field to take extra bool argumnet (missed one)
sql/sql_prepare.cc:
cleanups for init_param_items
Fixed compilation problem when OPENSSL was enabled.
libmysqld/lib_sql.cc:
Remove usage of acl_getroot() as user accounts is not useful with embedded server
sql/sql_acl.cc:
Fixed compilation problem when OPENSSL was enabled
optimization of left expression evaluation
more descriptive method name
mysql-test/r/func_in.result:
test of _NEW_ IN behaviour with NULL
mysql-test/r/subselect.result:
test of _NEW_ IN/ALL/ANY/SOME behaviour with NULL
mysql-test/t/func_in.test:
test of _NEW_ IN behaviour with NULL
mysql-test/t/subselect.test:
test of _NEW_ IN/ALL/ANY/SOME behaviour with NULL
sql/item.cc:
_NEW_ IN/ALL/ANY/SOME behaviour with NULL
optimization of left expression evaluation
sql/item.h:
_NEW_ IN/ALL/ANY/SOME behaviour with NULL
optimization of left expression evaluation
sql/item_cmpfunc.cc:
_NEW_ IN/ALL/ANY/SOME behaviour with NULL
optimization of left expression evaluation
sql/item_cmpfunc.h:
_NEW_ IN/ALL/ANY/SOME behaviour with NULL
optimization of left expression evaluation
sql/item_subselect.cc:
_NEW_ IN/ALL/ANY/SOME behaviour with NULL
optimization of left expression evaluation
sql/item_subselect.h:
_NEW_ IN/ALL/ANY/SOME behaviour with NULL
optimization of left expression evaluation
sql/sql_class.cc:
more descriptive method name
sql/sql_union.cc:
more descriptive method name
libmysql/libmysql.c:
Auto merged
libmysql/password.c:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/password.c:
Auto merged
sql/sql_analyse.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql-bench/server-cfg.sh:
Auto merged
sql/sql_yacc.yy:
Auto merged
Added THD to add_to_xxx_list() functions for faster parsing.
heap/_check.c:
After merge fix
mysql-test/r/distinct.result:
After merge fix
mysql-test/r/multi_update.result:
Make timestamp test portable
mysql-test/t/multi_update.test:
Make timestamp test portable
sql/field.cc:
After merge fix
sql/item_sum.cc:
After merge fix
sql/log_event.cc:
Remove compiler warning
sql/mysql_priv.h:
Added THD to add_to_list (Faster parsing)
sql/sql_derived.cc:
Fixed parameters to create_tmp_table()
sql/sql_lex.cc:
Added THD to add_to_list (Faster parsing)
sql/sql_lex.h:
Added THD to add_to_list (Faster parsing)
sql/sql_parse.cc:
Added THD to add_to_list (Faster parsing)
sql/sql_select.cc:
After merge fixes
Fixed return values from JOIN::optimize()
Replaced test_function_query with '!tables_list'
Optimized arguments to create_tmp_table()
sql/sql_select.h:
Removed test_function_query variable
Updated prototypes
sql/sql_union.cc:
Updated argument lists.
sql/sql_update.cc:
After merge fixes
sql/sql_yacc.yy:
Added THD to all add_xxx_to_list() functions
sql/table.h:
After merge fix
prohibited using procedure inside subquery
fixed error handling of procedure analize
mysql-test/r/subselect.result:
test of PROCEDURE in subselect
test of PROCEDURE of subselect
mysql-test/t/subselect.test:
test of PROCEDURE in subselect
test of PROCEDURE of subselect
sql/sql_analyse.cc:
fixed error handling in procedure analize
sql/sql_parse.cc:
fixed bug of PROCEDURE in same query with subselects
sql/sql_yacc.yy:
prohibited using procedure inside subquery
Heikki will merge to 4.0: Prevent listing the same column twice in an InnoDB index: that will cause index corruption when that col is UPDATEd
sql/ha_innobase.cc:
Heikki will merge to 4.0: Prevent listing the same column twice in an InnoDB index: that will cause index corruption when that col is UPDATEd
innobase/include/db0err.h:
Heikki will merge to 4.0: Prevent listing the same column twice in an InnoDB index: that will cause index corruption when that col is UPDATEd
innobase/dict/dict0dict.c:
Heikki will merge to 4.0: Prevent listing the same column twice in an InnoDB index: that will cause index corruption when that col is UPDATEd
innobase/row/row0mysql.c:
Heikki will merge to 4.0: Prevent listing the same column twice in an InnoDB index: that will cause index corruption when that col is UPDATEd
BitKeeper/etc/ignore:
auto-union
acinclude.m4:
Auto merged
configure.in:
Auto merged
heap/hp_delete.c:
Auto merged
heap/hp_scan.c:
Auto merged
include/my_base.h:
Auto merged
libmysql/libmysql.c:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
myisam/mi_check.c:
Auto merged
myisam/mi_rnext_same.c:
Auto merged
myisam/sort.c:
Auto merged
mysql-test/r/alter_table.result:
Auto merged
mysql-test/r/distinct.result:
Auto merged
mysql-test/r/func_math.result:
Auto merged
mysql-test/r/group_by.result:
Auto merged
mysql-test/r/innodb.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/t/group_by.test:
Auto merged
mysql-test/t/select.test:
Auto merged
mysys/hash.c:
Auto merged
sql/field.h:
Auto merged
sql/field_conv.cc:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sql_analyse.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_udf.cc:
Auto merged
sql/structs.h:
Auto merged
sql/uniques.cc:
Auto merged
strings/strto.c:
Auto merged
vio/vio.c:
Auto merged
BitKeeper/triggers/post-commit:
Add changeset to commit messages
sql-bench/crash-me.sh:
Use version from 4.0
sql-bench/server-cfg.sh:
Use version from 4.0
Made keybuff_size longlong (To make show variables work similar on 32
and 64 bit systems)
Fixed some 'not initalized variable errors' in multi-table-update.
Fixed memory leak in multi-table-update.
Now all tests works under valgrind without any errors.
libmysqld/lib_sql.cc:
Copy arguments given to mysql_server_init()
mysql-test/r/temp_table.result:
Update test results (after merge form 3.23)
sql/handler.cc:
Made keybuff_size longlong
sql/mysql_priv.h:
Made keybuff_size longlong
sql/mysqld.cc:
Made keybuff_size longlong
sql/set_var.cc:
Made keybuff_size longlong
sql/set_var.h:
Made keybuff_size longlong
sql/sql_select.cc:
Simple cleanup
sql/sql_select.h:
Make TMP_TABLE_PARAM to be allocated through Sql_alloc
sql/sql_update.cc:
Fixed some 'not initalized variable errors' in multi-table-update.
Fixed memory leak in multi-table-update