Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
for some expressions.
The classes Item_func_between, Item_func_if, Item_func_in are modified.
Item_func_between/in objects can represent now [NOT]BETWEEN/IN expressions.
The class Item_func_opt_neg is added to factor out the functionality
common for the modified classes Item_func_between and Item_func_in.
item_cmpfunc.cc:
Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
for some expressions.
Added Item_func_between::fix_fields(), Item_func_if::fix_fields(),
Item_func_in::fix_fields(). They correct generic calculation of
the not_null_tables attribute when it is needed.
Modified Item_func_between::val_int(), Item_func_in::val_int().
opt_range.cc:
Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
for some expressions.
The function get_mm_tree() is modified. There cannot be NOT before
BETWEEN/IN anymore. Rather Item_func_between/in objects can represent
now [NOT]BETWEEN/IN expressions.
sql_yacc.yy:
Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
for some expressions.
Item_func_between/in objects can represent now [NOT]BETWEEN/IN expresions.
join_outer.result:
Fixed some testcases results (bugs #12101, #12102)
join_outer.test:
Added testcases for bugs #12101, #12102
mysql-test/t/join_outer.test:
Added testcases for bugs #12101, #12102
mysql-test/r/join_outer.result:
Fixed some testcases results (bugs #12101, #12102)
sql/sql_yacc.yy:
Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
for some expressions.
Item_func_between/in objects can represent now [NOT]BETWEEN/IN expresions.
sql/opt_range.cc:
Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
for some expressions.
The function get_mm_tree() is modified. There cannot be NOT before
BETWEEN/IN anymore. Rather Item_func_between/in objects can represent
now [NOT]BETWEEN/IN expressions.
sql/item_cmpfunc.cc:
Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
for some expressions.
Added Item_func_between::fix_fields(), Item_func_if::fix_fields(),
Item_func_in::fix_fields(). They correct generic calculation of
the not_null_tables attribute when it is needed.
Modified Item_func_between::val_int(), Item_func_in::val_int().
sql/item_cmpfunc.h:
Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
for some expressions.
The classes Item_func_between, Item_func_if, Item_func_in are modified.
Item_func_between/in objects can represent now [NOT]BETWEEN/IN expressions.
The class Item_func_opt_neg is added to factor out the functionality
common for the modified classes Item_func_between and Item_func_in.
- current_arena to stmt_arena: the thread may have more than one
'current' arenas: one for runtime data, and one for the parsed
tree of a statement. Only one of them is active at any moment.
- set_item_arena -> set_query_arena, because Item_arena was renamed to
Query_arena a while ago
- set_n_backup_item_arena -> set_n_backup_active_arena;
the active arena is the arena thd->mem_root and thd->free_list
are currently pointing at.
- restore_backup_item_arena -> restore_active_arena (with the same
rationale)
- change_arena_if_needed -> activate_stmt_arena_if_needed; this
method sets thd->stmt_arena active if it's not done yet.
sql/item.cc:
Rename.
sql/item_cmpfunc.cc:
Rename.
sql/item_func.cc:
Rename.
sql/item_subselect.cc:
Rename.
sql/item_subselect.h:
Remove an unused forward declaration.
sql/item_sum.h:
Remove an unused forward declaration.
sql/mysql_priv.h:
Remove an unused forward declaration.
sql/sp.cc:
Rename.
sql/sp_head.cc:
Rename.
sql/sql_base.cc:
Rename.
sql/sql_class.cc:
Rename.
sql/sql_class.h:
Rename.
sql/sql_lex.cc:
Rename.
sql/sql_parse.cc:
Rename.
sql/sql_prepare.cc:
Rename.
sql/sql_select.cc:
Rename.
sql/sql_show.cc:
Rename.
sql/sql_union.cc:
Rename.
sql/sql_view.cc:
Rename.
sql/table.cc:
Rename.
include/my_global.h:
Safer macros to avoid possible overflows
sql/item_cmpfunc.cc:
Simple optimization
sql/sp_head.cc:
Indentation fixes
Remove not needed "else" levels
Added error checking for 'new'
Simpler reseting of thd->spcont in execute_procedure
sql/sql_base.cc:
Faster new
sql/sql_lex.cc:
Use 'TRUE' instead of 'true'
sql/sql_parse.cc:
Faster new
sql/sql_view.cc:
No need to set 'tables' as it's not used
sql/table.cc:
Simpler DBUG_ASSERT()
mysql-test/r/row.result:
Correct NULL handling in row comporison
mysql-test/t/row.test:
Correct NULL handling in row comporison (BUG#12509)
sql/item_cmpfunc.cc:
stop on NULL comparison only if it is allowed
sql/item_cmpfunc.h:
support optimisation in case of processing WHERE/HAVING, where NULL and FALSE are equal
mysql-test/r/select.result:
Update results
mysql-test/t/select.test:
Remove regression test
sql/item_cmpfunc.cc:
Revert patch for checking length of ESCAPE, it is not correct.
mysql-test/r/select.result:
results for test of bug 12595
mysql-test/t/select.test:
test for bug #12595
sql/item_cmpfunc.cc:
check whether the size of the escape string is exactly 1 (bug #12595)
Added a test case for bug #12392.
item_cmpfunc.cc:
Fixed bug #12392.
Missing handling of rows containing NULL components
when evaluating IN predicates caused a crash.
sql/item_cmpfunc.cc:
Fixed bug #12392.
Missing handling of rows containing NULL components
when evaluating IN predicates caused a crash.
mysql-test/r/subselect.result:
Added a test case for bug #12392.
mysql-test/t/subselect.test:
Added a test case for bug #12392.
into mishka.local:/home/my/mysql-5.0
client/mysqldump.c:
Auto merged
include/my_sys.h:
Auto merged
mysys/Makefile.am:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/log.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
tests/mysql_client_test.c:
Auto merged
sql/sql_select.cc:
Auto merged
mysys/default.c:
SCCS merged
Changed defaults option --instance to --defaults-group-suffix
Changed option handling to allow --defaults-file, --defaults-extra-file and --defaults-group-suffix to be given in any order
Changed MYSQL_INSTANCE to MYSQL_GROUP_SUFFIX
mysql_print_defaults now understands --defaults-group-suffix
Remove usage of my_tempnam() (not safe function)
if( -> if ( and while( to while (
BitKeeper/deleted/.del-my_tempnam.c~a8562f15dad3012f:
Delete: mysys/my_tempnam.c
VC++Files/client/mysqlclient.dsp:
Remove not used file my_tempnam.c
VC++Files/client/mysqlclient_ia64.dsp:
Remove not used file my_tempnam.c
VC++Files/libmysql/libmysql.dsp:
Remove not used file my_tempnam.c
VC++Files/libmysql/libmysql_ia64.dsp:
Remove not used file my_tempnam.c
VC++Files/mysys/mysys.dsp:
Remove not used file my_tempnam.c
VC++Files/mysys/mysys_ia64.dsp:
Remove not used file my_tempnam.c
client/mysql.cc:
Change to use get_defaults_options()
Remove compiler warnings
client/mysqldump.c:
Indentation fixes
Use quoted table name for 'primary_key_fields'
extra/my_print_defaults.c:
Add support for --defaults-group-suffix
change to use get_default_options()
extra/replace.c:
Replace my_tempnam() with create_tmp_file() to allow us to remove my_tempnam.c
include/config-win.h:
Added DEFAULT_GROUP_SUFFIX_ENV
include/my_sys.h:
Change defaults_instance -> defaults_group_suffix
Change get_defaults_files -> get_defaults_options
libmysql/Makefile.shared:
Added DEFAULT_GROUP_SUFFIX_ENV
mysys/Makefile.am:
Added DEFAULT_GROUP_SUFFIX_ENV
Remove my_tempnam.c
mysys/default.c:
Changed --instance to --defaults-group-suffix
Changed MYSQL_INSTANCE to MYSQL_GROUP_SUFFIX and moved the name to Makefile.am
(mysys shouldn't by MySQL independent)
Changed option handling to allow --defaults-file, --defaults-extra-file and --defaults-group-suffix to be given in any order
mysys/default_modify.c:
Optimized code to use allocated space more efficently
Reduce code size
Ensure that realloc() works independent of argument size
mysys/my_bitmap.c:
Added missing return
sql/ha_innodb.cc:
Change if( -> if (
sql/ha_ndbcluster.cc:
Change while( -> while (
sql/item_cmpfunc.cc:
Break loop early (simple optimization)
sql/item_strfunc.cc:
Change if( -> if (
sql/log.cc:
Fixed comment
sql/mysqld.cc:
Change if( -> if (
sql/opt_range.cc:
while( -> while (
if( -> if (
sql/parse_file.cc:
Change if( -> if (
sql/sql_cache.cc:
while( -> while (
sql/sql_parse.cc:
Change if( -> if (
sql/sql_prepare.cc:
Added comment
sql/sql_select.cc:
while( -> while (
Removed index variable by incrementing pointer
sql/sql_show.cc:
Change if( -> if (
sql/sql_yacc.yy:
Change if( -> if (
tests/mysql_client_test.c:
Added cast to first argument to bzero()
into sanja.is.com.ua:/home/bell/mysql/bk/work-bug6-5.0
BitKeeper/etc/config:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/sp-security.result:
merge
mysql-test/r/view.result:
merge
mysql-test/t/sp-security.test:
merge
mysql-test/t/view.test:
merge
sql/item_cmpfunc.cc:
merge
sql/sql_class.h:
merge
correct value of CURRENT_USER() in SP with "security definer" (BUG#7291)
BitKeeper/etc/config:
switch off open logging
mysql-test/r/sp-security.result:
correct value from current_user() in function run from "security definer"
mysql-test/r/view.result:
evaluation constant functions in WHERE (BUG#4663)
mysql-test/t/sp-security.test:
correct value from current_user() in function run from "security definer"
mysql-test/t/view.test:
evaluation constant functions in WHERE (BUG#4663)
sql/item.cc:
Item_static_string_func creation if it is need
sql/item.h:
support of Item_static_string_func creation
sql/item_cmpfunc.cc:
do not evaluate items during view creation
sql/item_create.cc:
create Item_func_user
sql/item_strfunc.cc:
Item_func_sysconst in case of converting value still have to correctly print itself
=> use Item_static_string_func instead of Item_string
Item_func_user return USER() or CURRENT_USER()
sql/item_strfunc.h:
support of correct charset conversion procedure in Item_func_sysconst
sql/sql_class.h:
new method
sql/sql_yacc.yy:
Item_func_user now support both USER() and CURRENT_USER(), so we have to pass parametr what it is
mysql-test/r/group_by.result:
After merge fix
(Put test in same order as in 4.1)
mysql-test/t/group_by.test:
After merge fix
(Put test in same order as in 4.1)
sql/item_cmpfunc.cc:
After merge fix (+ simple fix to not allow compiler to do tail optimization)
sql/item_cmpfunc.h:
After merge fix
sql/field.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_view.cc:
Auto merged
strings/ctype-utf8.c:
Auto merged
- Mostly indentation fixes
- Added missing test
- Ensure that Item_func_case() checks for stack overruns
- Use real_item() instead of (Item_ref*) item
- Fixed wrong error handling
myisam/mi_unique.c:
Improved comments
myisam/myisampack.c:
Updated version number
mysql-test/r/group_by.result:
Added test that was lost during earlier merge
mysql-test/r/information_schema.result:
Safety fix: Drop procedures before used
mysql-test/t/group_by.test:
Added test that was lost during earlier merge
mysql-test/t/information_schema.test:
Safety fix: Drop procedures before used
mysys/hash.c:
Updated comment
sql/field.cc:
false -> FALSE
sql/ha_ndbcluster.cc:
Fix some style issues
- No () around argument to 'case'
- Space before ( in switch and if
- Removed 'goto'
- Added {}
- Added () to make expressions easier to read
- my_snprintf -> strmov
sql/handler.cc:
if( -> if (
sql/item.cc:
Indentation changes
sql/item.h:
false -> FALSE
sql/item_cmpfunc.cc:
Ensure that Item_func_case() check for stack overrun properly
sql/item_cmpfunc.h:
Ensure that Item_func_case() check for stack overrun properly
sql/item_func.cc:
Indentation fixes
Fixed wrong goto label
sql/mysqld.cc:
Remove test for opt_disable_networking as this flag can never be set here
sql/opt_range.cc:
Simplify code
sql/sql_class.h:
Move define out from middle of class definition
sql/sql_parse.cc:
Remove extra empty lines
sql/sql_select.cc:
use real_item() instead of (Item_ref*) item
Modifed function comment to be align with others
Simple optimization
sql/sql_union.cc:
Portability fix:
Don't use 'bool_variable|=...'
sql/sql_view.cc:
Move List_iterator_fast out from loops (rewind is faster than creating a new itearator)
strings/ctype-utf8.c:
if( -> if (
strings/ctype.c:
Remove disabled code
strings/decimal.c:
Indentation fixes
strings/xml.c:
Indentation fixes
include/my_bitmap.h:
new bitmap operation
mysql-test/r/view.result:
added warnings
Correct inserting data check (absence of default value) for view underlying tables (BUG#6443)
mysql-test/t/view.test:
Correct inserting data check (absence of default value) for view underlying tables (BUG#6443)
mysys/my_bitmap.c:
new bitmap operation
sql/field.h:
index of field in table added
sql/item.cc:
Name resolution context added
table list removed from fix_fields() arguments
sql/item.h:
Name resolution context added
table list removed from fix_fields() arguments
sql/item_cmpfunc.cc:
table list removed from fix_fields() arguments
sql/item_cmpfunc.h:
table list removed from fix_fields() arguments
sql/item_func.cc:
table list removed from fix_fields() arguments
sql/item_func.h:
table list removed from fix_fields() arguments
sql/item_row.cc:
table list removed from fix_fields() arguments
sql/item_row.h:
table list removed from fix_fields() arguments
sql/item_strfunc.cc:
fixed server crash on NULL argument
sql/item_strfunc.h:
table list removed from fix_fields() arguments
sql/item_subselect.cc:
table list removed from fix_fields() arguments
sql/item_subselect.h:
table list removed from fix_fields() arguments
sql/item_sum.cc:
table list removed from fix_fields() arguments
sql/item_sum.h:
table list removed from fix_fields() arguments
sql/item_timefunc.cc:
table list removed from fix_fields() arguments
sql/item_timefunc.h:
table list removed from fix_fields() arguments
sql/item_uniq.h:
table list removed from fix_fields() arguments
sql/log_event.cc:
Name resolution context added
sql/log_event.h:
Name resolution context added
sql/mysql_priv.h:
Name resolution context added
sql/set_var.cc:
table list removed from fix_fields() arguments
sql/share/errmsg.txt:
new error message
sql/sp.cc:
Name resolution context added
sql/sp_head.cc:
table list removed from fix_fields() arguments
sql/sp_head.h:
Name resolution context added
sql/sql_base.cc:
table list removed from fix_fields() arguments
Name resolution context added
sql/sql_class.cc:
renamed variable
sql/sql_delete.cc:
Name resolution context added
sql/sql_derived.cc:
Name resolution context added
sql/sql_do.cc:
table list removed from fix_fields() arguments
sql/sql_handler.cc:
Name resolution context added
sql/sql_help.cc:
Name resolution context added
sql/sql_insert.cc:
Name resolution context added
table list removed from fix_fields() arguments
sql/sql_lex.cc:
Name resolution context added
sql/sql_lex.h:
removed resolve mode (information stored into name resolution context)
sql/sql_load.cc:
table list removed from fix_fields() arguments
sql/sql_olap.cc:
Name resolution context added
sql/sql_parse.cc:
Name resolution context added
sql/sql_prepare.cc:
table list removed from fix_fields() arguments
sql/sql_select.cc:
table list removed from fix_fields() arguments
sql/sql_show.cc:
Name resolution context added
sql/sql_trigger.cc:
table list removed from fix_fields() arguments
sql/sql_udf.h:
table list removed from fix_fields() arguments
sql/sql_union.cc:
Name resolution context added
sql/sql_update.cc:
Name resolution context added
sql/sql_view.cc:
Name resolution context added
sql/sql_view.h:
table list removed from fix_fields() arguments
sql/sql_yacc.yy:
Name resolution context added
sql/table.cc:
Name resolution context added
merged view processing moved
sql/table.h:
merged view processing moved
Wrong comparing method were choosen which results in false comparison.
Make Item_bool_func2::fix_length_and_dec() to get type and field from
real_item() to make REF_ITEM pass the check.
sql/item_cmpfunc.cc:
Fix bug#11325 Wrong date comparison in views
mysql-test/t/view.test:
Test case for bug#11325 Wrong date comparison in views.
mysql-test/r/view.result:
Test case for bug#11325 Wrong date comparison in views.
Added a test case for bug #11142.
item_cmpfunc.cc:
Fixed bug #11142.
Implementation of Item_func_nullif::is_null was corrected.
sql/item_cmpfunc.cc:
Fixed bug #11142.
Implementation of Item_func_nullif::is_null was corrected.
mysql-test/t/func_if.test:
Added a test case for bug #11142.
mysql-test/r/func_if.result:
Added a test case for bug #11142.
heap/hp_hash.c:
fix for windows 64-bit compiler warnings
heap/hp_update.c:
fix for windows 64-bit compiler warnings
mysys/default.c:
fix for windows 64-bit compiler warnings
mysys/default_modify.c:
fix for windows 64-bit compiler warnings
mysys/mf_iocache.c:
fix for windows 64-bit compiler warnings
mysys/mf_keycache.c:
fix for windows 64-bit compiler warnings
mysys/my_alloc.c:
fix for windows 64-bit compiler warnings
mysys/my_getopt.c:
fix for windows 64-bit compiler warnings
mysys/my_mmap.c:
fix for windows 64-bit compiler warnings
mysys/my_once.c:
fix for windows 64-bit compiler warnings
mysys/string.c:
fix for windows 64-bit compiler warnings
sql-common/client.c:
fix for windows 64-bit compiler warnings
sql/field.cc:
fix for windows 64-bit compiler warnings
sql/gstream.cc:
fix for windows 64-bit compiler warnings
sql/ha_myisam.cc:
fix for windows 64-bit compiler warnings
sql/ha_myisammrg.cc:
fix for windows 64-bit compiler warnings
sql/item.cc:
fix for windows 64-bit compiler warnings
sql/item.h:
fix for windows 64-bit compiler warnings
sql/item_cmpfunc.cc:
fix for windows 64-bit compiler warnings
sql/password.c:
fix for windows 64-bit compiler warnings
sql/set_var.h:
fix for windows 64-bit compiler warnings
strings/ctype-big5.c:
fix for windows 64-bit compiler warnings
strings/ctype-bin.c:
fix for windows 64-bit compiler warnings
strings/ctype-cp932.c:
fix for windows 64-bit compiler warnings
strings/ctype-eucjpms.c:
fix for windows 64-bit compiler warnings
strings/ctype-mb.c:
fix for windows 64-bit compiler warnings
strings/ctype-simple.c:
fix for windows 64-bit compiler warnings
strings/ctype-sjis.c:
fix for windows 64-bit compiler warnings
strings/ctype-uca.c:
fix for windows 64-bit compiler warnings
strings/ctype-ucs2.c:
fix for windows 64-bit compiler warnings
strings/ctype-ujis.c:
fix for windows 64-bit compiler warnings
strings/ctype-utf8.c:
fix for windows 64-bit compiler warnings
strings/ctype.c:
fix for windows 64-bit compiler warnings
strings/decimal.c:
fix for windows 64-bit compiler warnings
strings/xml.c:
fix for windows 64-bit compiler warnings
mysql-test/r/create.result:
test result fixed
mysql-test/r/distinct.result:
test result fixed
mysql-test/t/distinct.test:
test case added
sql/item_cmpfunc.cc:
max_length should be calculated differently for DECIMAL_RESULT and others
BitKeeper/etc/logging_ok:
auto-union
client/sql_string.cc:
Auto merged
configure.in:
Auto merged
include/my_global.h:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/olap.result:
Auto merged
mysql-test/r/warnings.result:
Auto merged
mysql-test/t/create.test:
Auto merged
mysql-test/t/warnings.test:
Auto merged
mysys/raid.cc:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
sql/field.cc:
Auto merged
BitKeeper/deleted/.del-ha_isam.cc~4dce65904db2675e:
Auto merged
BitKeeper/deleted/.del-ha_isammrg.cc~dc682e4755d77a2e:
Auto merged
sql/ha_berkeley.cc:
Auto merged
sql/ha_blackhole.cc:
Auto merged
sql/ha_heap.cc:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/ha_myisammrg.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_geofunc.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/item_uniq.cc:
Auto merged
sql/lock.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_range.h:
Auto merged
sql/procedure.cc:
Auto merged
sql/protocol.cc:
Auto merged
sql/protocol_cursor.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_analyse.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_error.cc:
Auto merged
sql/sql_handler.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_map.cc:
Auto merged
sql/sql_olap.cc:
Auto merged
sql/sql_repl.cc:
Auto merged
sql/sql_string.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_udf.cc:
Auto merged
sql/examples/ha_archive.cc:
Auto merged
sql/examples/ha_example.cc:
Auto merged
sql/examples/ha_tina.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/tztime.cc:
Auto merged
strings/ctype-win1250ch.c:
Auto merged
mysql-test/r/func_gconcat.result:
merge & ensure that 4.1 and 5.0 source have tests in same order
mysql-test/r/innodb.result:
merge & ensure that 4.1 and 5.0 source have tests in same order
mysql-test/t/func_gconcat.test:
merge & ensure that 4.1 and 5.0 source have tests in same order
mysql-test/t/innodb.test:
merge & ensure that 4.1 and 5.0 source have tests in same order
sql/item_func.cc:
merge
sql/mysqld.cc:
merge
sql/opt_range.cc:
merge
sql/sql_parse.cc:
merge
Give better name to goto labels
sql/sql_select.cc:
merge
Ensure that 'null_value' is not accessed before val() is called in FIELD() functions
Fixed initialization of key maps. This fixes some problems with keys when you have more than 64 keys
Fixed that ROLLUP don't always create a temporary table. This fix ensures that func_gconcat.test results are now predictable
mysql-test/r/func_gconcat.result:
Move innodb specific test to innodb.test
Changed table name r2 -> t2
More test to see how ROLLUP was optimized
mysql-test/r/innodb.result:
Moved test here form func_gconcat
mysql-test/r/olap.result:
New test results after optimization
mysql-test/t/func_gconcat.test:
Move innodb specific test to innodb.test
Changed table name r2 -> t2
More test to see how ROLLUP was optimized
mysql-test/t/innodb.test:
Moved test here form func_gconcat
sql/field.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_berkeley.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_blackhole.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_heap.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_innodb.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_isam.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_isammrg.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_myisam.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_myisammrg.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_ndbcluster.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/handler.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/hash_filo.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_cmpfunc.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_func.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
Ensure that 'null_value' is not accessed before val() is called
sql/item_geofunc.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_strfunc.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_subselect.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_sum.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_timefunc.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_uniq.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/log_event.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/mysql_priv.h:
Change key_map_full to not be const as we are giving it a proper value on startup
sql/mysqld.cc:
Move key_map variables here and initialize key_map_full properly
sql/opt_range.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/opt_range.h:
Fix that test_quick_select() works with any ammount of keys
sql/procedure.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/protocol.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/protocol_cursor.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/set_var.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_analyse.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_class.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_crypt.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_insert.cc:
Fixed that max_rows is ulong
sql/sql_list.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_map.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_olap.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_select.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
Fixed that ROLLUP don't have to always create a temporary table
Added new argument to remove_const() to make above possible
Fixed some errors that creapt up when we don't always do a temporary table for ROLLUP
sql/sql_string.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_table.cc:
Simple optimizations
Fixed wrong checking of build_table_path() in undef-ed code
sql/sql_udf.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_yacc.yy:
removed extra {}
Fixed bug #9939: a wrong conversion of arguments
for functions COALESCE and IFNULL.
The str_op virtual method was added into Item_func_numhybrid.
item_func.cc:
Fixed bug #9939: a wrong conversion of arguments
for functions COALESCE and IFNULL.
The str_op virtual method was added into Item_func_numhybrid.
item_cmpfunc.h, item_cmpfunc.cc:
Fixed bug #9939: a wrong conversion of arguments
for functions COALESCE and IFNULL.
Item_func_coalesce and Item_func_ifnull now
inherit from a modified Item_func_numhybrid.
case.test, case.result:
Added test cases for bug #9939.
mysql-test/r/case.result:
Added test cases for bug #9939.
mysql-test/t/case.test:
Added test cases for bug #9939.
sql/item_cmpfunc.cc:
Fixed bug #9939: a wrong conversion of arguments
for functions COALESCE and IFNULL.
Item_func_coalesce and Item_func_ifnull now
inherit from a modified Item_func_numhybrid.
sql/item_cmpfunc.h:
Fixed bug #9939: a wrong conversion of arguments
for functions COALESCE and IFNULL.
Item_func_coalesce and Item_func_ifnull now
inherit from a modified Item_func_numhybrid.
sql/item_func.cc:
Fixed bug #9939: a wrong conversion of arguments
for functions COALESCE and IFNULL.
The str_op virtual method was added into Item_func_numhybrid.
sql/item_func.h:
Fixed bug #9939: a wrong conversion of arguments
for functions COALESCE and IFNULL.
he str_op virtual method was added into Item_func_numhybrid.
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
Integer overflow results in wrong field sortlength.
sql/item_cmpfunc.cc:
Fix bug #9669 Ordering on IF function with FROM_UNIXTIME function fails.
mysql-test/t/func_if.test:
Test for bug #9669 Ordering on IF function with FROM_UNIXTIME function fails.
mysql-test/r/func_if.result:
Test for bug #9669 Ordering on IF function with FROM_UNIXTIME function fails.
BitKeeper/deleted/.del-ha_isam.cc~4dce65904db2675e:
Auto merged
BitKeeper/deleted/.del-ha_isammrg.cc~dc682e4755d77a2e:
Auto merged
client/sql_string.cc:
Auto merged
mysys/raid.cc:
Auto merged
sql/field.cc:
Auto merged
sql/ha_berkeley.cc:
Auto merged
sql/ha_blackhole.cc:
Auto merged
sql/ha_heap.cc:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/ha_myisammrg.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_geofunc.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/item_uniq.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/procedure.cc:
Auto merged
sql/protocol.cc:
Auto merged
sql/protocol_cursor.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_analyse.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_map.cc:
Auto merged
sql/sql_olap.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_string.cc:
Auto merged
sql/examples/ha_archive.cc:
Auto merged
sql/sql_udf.cc:
Auto merged
sql/tztime.cc:
Auto merged
sql/examples/ha_example.cc:
Auto merged
sql/examples/ha_tina.cc:
Auto merged
Set #pragma implementation" earlier
Many files:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
client/sql_string.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
mysys/raid.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/field.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_berkeley.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_blackhole.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_heap.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_innodb.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_isam.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_isammrg.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_myisam.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_myisammrg.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_ndbcluster.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/handler.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/hash_filo.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_cmpfunc.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_func.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_geofunc.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_strfunc.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_subselect.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_sum.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_timefunc.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_uniq.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/log_event.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/opt_range.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/procedure.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/protocol.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/protocol_cursor.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/set_var.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_analyse.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_class.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_crypt.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_list.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_map.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_olap.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/examples/ha_archive.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_select.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_string.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_udf.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/examples/ha_example.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/examples/ha_tina.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/tztime.cc:
Set #pragma implementation" earlier
sql/item_cmpfunc.cc:
Put the buff parameter back in check_stack_overrun().
sql/item_func.cc:
Put the buff parameter back in check_stack_overrun().
sql/item_subselect.cc:
Put the buff parameter back in check_stack_overrun().
sql/mysql_priv.h:
Put the buff parameter back in check_stack_overrun().
sql/mysqld.cc:
Style fixes.
sql/sp_head.cc:
Put the buff parameter back in check_stack_overrun().
sql/sql_parse.cc:
Put the buff parameter back in check_stack_overrun(), and added comment explaining the purpose.
sql/table.cc:
Put the buff parameter back in check_stack_overrun().
into mysql.com:/home/pem/work/mysql-5.0
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
BitKeeper/deleted/.del-ha_isam.cc~4dce65904db2675e:
Auto merged
BitKeeper/deleted/.del-ha_isammrg.cc~dc682e4755d77a2e:
Auto merged
client/sql_string.cc:
Auto merged
client/sql_string.h:
Auto merged
include/my_global.h:
Auto merged
include/my_sys.h:
Auto merged
mysql-test/mysql-test-run.sh:
Auto merged
mysys/my_open.c:
Auto merged
mysys/raid.cc:
Auto merged
ndb/src/kernel/blocks/dbtux/Dbtux.hpp:
Auto merged
sql/field.cc:
Auto merged
sql/ha_berkeley.cc:
Auto merged
sql/ha_blackhole.cc:
Auto merged
sql/ha_heap.cc:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/ha_myisammrg.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_geofunc.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/item_uniq.cc:
Auto merged
sql/item_uniq.h:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/procedure.cc:
Auto merged
sql/protocol.cc:
Auto merged
sql/protocol_cursor.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_analyse.cc:
Auto merged
sql/sql_analyse.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_map.cc:
Auto merged
sql/sql_olap.cc:
Auto merged
sql/sql_string.cc:
Auto merged
sql/sql_udf.cc:
Auto merged
sql/tztime.cc:
Auto merged
sql/opt_range.cc:
Manual merge
sql/sql_parse.cc:
Use select_lex pointer instead of lex->select_lex
sql/sql_repl.cc:
Function moved to log.cc, fix made there instead
sql/sql_class.cc:
Auto merged
sql/sql_select.cc:
Auto merged
This only showed up on two known platforms, both ia64 (one HP-UX and one Linux wich icc).
For some reason, they only get half the stack size they are supposed to have, which
makes deep SP recursion overrun the stack before check_stack_overrun() is triggered.
Also made som minor fixes in the check_stack_overrun() definition, supporting variable
margins.
No test case added, but the reason for the bug report was a failed existing test case
on these machines, which now works.
sql/item_cmpfunc.cc:
Adopted call to new check_stack_overrun() definition.
sql/item_func.cc:
Adopted calls to new check_stack_overrun() definition.
sql/item_subselect.cc:
Adopted call to new check_stack_overrun() definition.
sql/mysql_priv.h:
Changed definition of check_stack_overrun(), thread_stack_min variable no longer needed.
sql/mysqld.cc:
thread_stack_min variable no longer needed (with variable margin arg. to check_thread_overrun()).
On (at least some) ia64 machines, it seems we only get half the requested stack in reality,
so deep SP recursion crashes before the thread overrun check is triggered.
We work around this by requesting twice the stack requested to get expected size.
sql/sp_head.cc:
Adopted call to new check_stack_overrun() definition, and use a wider margin
execution.
sql/sql_parse.cc:
Modified check_stack_overrun() definition. Removed unused arg that didn't sever any
purpose, and added a 'margin' argument to support different margins for different
callrers.
sql/table.cc:
Adopted call to new check_stack_overrun() definition.
sql/ha_innodb.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/key.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/unireg.cc:
Auto merged
Added option --count to mysqlshow (to show number of rows)
Fixed possible core dump in information schema
client/client_priv.h:
--count for mysqlshow
client/mysqlshow.c:
Added option --count to be used when the user want's number of rows per table in the output
(We shouldn't use count(*) as default as this can be a slow operation)
mysys/my_thr_init.c:
Correct comment
sql/ha_berkeley.cc:
Remove not used variable
sql/ha_berkeley.h:
Remove not used variable
sql/ha_innodb.cc:
Remove not used function
sql/ha_ndbcluster.cc:
false -> FALSE
true -> TRUE
sql/handler.cc:
Added and fixed comments
Remove 'strange' code to remove compiler warnings (better to do things like this with attribute)
sql/item.cc:
false -> FALSE
sql/item_cmpfunc.cc:
Fixed indentation
sql/item_cmpfunc.h:
marked BETWEEN as a bool function
sql/item_func.cc:
Simple optimzation
sql/key.cc:
Removed wrong code
sql/log.cc:
Check result from open_index_file()
sql/mysql_priv.h:
Simplyfy some test of netware
sql/mysqld.cc:
Fixed indentation
Check result form open_index_file()
Simplify code with IF_NETWARE()
sql/opt_range.cc:
false -> FALSE
true -> TRUE
Fixed indentation
sql/opt_sum.cc:
Fixed comments
sql/sp_head.cc:
Simple optimzation
Move variable declarations to begining of blocks
sql/sql_acl.cc:
Fix long lines
Rename xx -> column
Move declaration to beginning of block
sql/sql_parse.cc:
Removed comment
sql/sql_select.cc:
Indentation fixes
sql/sql_show.cc:
Fixed reference outside of array (possible core dump)
sql/sql_table.cc:
Simplify code
Combine common code
sql/sql_test.cc:
false -> FALSE
sql/sql_trigger.cc:
false -> false
true -> TRUE
sql/sql_yacc.yy:
Simpler test
sql/unireg.cc:
Added comment
Mostly about precision/decimals of the results of the operations
include/decimal.h:
decimal interface changed a little
sql/field.cc:
a lot of precision/decimals related changes to the Field_new_decimal
sql/field.h:
Field_new_decimal interface changed
sql/ha_ndbcluster.cc:
f->precision should be used here
sql/item.cc:
precision/decimals counting related changes
sql/item.h:
precision/decimals counting related changes
sql/item_cmpfunc.cc:
precision/decimals counting related changes
sql/item_cmpfunc.h:
precision/decimals counting related changes
sql/item_func.cc:
precision/decimals counting related changes
sql/item_func.h:
precision/decimals counting related changes
sql/item_sum.cc:
precision/decimals counting related changes
sql/item_sum.h:
precision/decimals counting related changes
sql/my_decimal.cc:
precision/decimals counting related changes
sql/my_decimal.h:
precision/decimals counting related changes
sql/mysqld.cc:
precision/decimals counting related changes
sql/set_var.cc:
precision/decimals counting related changes
sql/sp_head.cc:
dbug_decimal_print was replaced with dbug_decimal_as_string
sql/sql_class.h:
div_precincrement variable added
sql/sql_parse.cc:
precision/decimals counting related changes
sql/sql_select.cc:
precision/decimals counting related changes
sql/sql_show.cc:
Field::representation_length was removed
strings/decimal.c:
decimal_actual_fraction was introduced
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
mysql-test/r/group_by.result:
Auto merged
ndb/src/kernel/blocks/dbacc/DbaccMain.cpp:
Auto merged
scripts/make_win_src_distribution.sh:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_subselect.h:
Auto merged
sql/sql_select.cc:
Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
merge
sql/item_cmpfunc.cc:
merge
support-files/mysql.server.sh:
merge
mysql-test/r/group_by.result:
result change
mysql-test/r/union.result:
result change
mysql-test/r/view.result:
result change
mysql-test/t/subselect.test:
fixed mistake of merge
sql/field.cc:
new 5.0 types support
temporary table/db names detection in field fixed
sql/field.h:
removed non-existent methods
added wrongly deleted during manual merge string
sql/item.cc:
support of new types added to merge of union types routines
sql/item.h:
fixed method definition
sql/item_cmpfunc.cc:
fixed type
sql/item_func.h:
item type name fixed
sql/item_subselect.cc:
added forgoten methods
sql/item_subselect.h:
fixed type
sql/sql_derived.cc:
fixed typo of manual merge
sql/sql_view.cc:
added new parameter
platforms": yet another issue with floating pointer comparisons.
The fix uses the workaround with volatiles.
sql/item_cmpfunc.cc:
A fix for the failing mysql_client_test on some Intel platforms
when compiled with optimization.
We don't use -ffloat-store compileation as it may slow all
floating point operations.
and bug#8849 "problem with insert statement with table alias's":
make equality propagation work in stored procedures and prepared
statements.
Equality propagation can change AND/OR structure of ON expressions,
so the fix is to provide each execution of PS/SP with it's own
copy of AND/OR tree. We have been doing that already for WHERE clauses,
now ON clauses are also copied.
mysql-test/r/ps.result:
Bug#8115: test results fixed.
mysql-test/r/sp.result:
Bug#8849: test results fixed.
mysql-test/t/ps.test:
A test case for Bug#8115 "Server Crash with prepared statement".
mysql-test/t/sp.test:
A test case for Bug#8849 "problem with insert statement with table
alias's".
sql/item_cmpfunc.cc:
Comment a parse tree transformation.
sql/item_cmpfunc.h:
Comment how Item_equal works with PS/SP.
sql/mysql_priv.h:
Add declaration for init_stmt_after_parse.
sql/sp_head.cc:
Call init_stmt_after_parse in restore_lex(), which is used to
grab TABLE_LIST and SELECT_LEX list of a parsed substatement of
stored procedure. This is a necessary post-init step which
must be done for any statement which can be executed many times.
sql/sql_prepare.cc:
Implement init_stmt_after_parse() which prepares AND/OR
structure of all ON expressions and WHERE clauses of a statement
for copying.
sql/sql_select.cc:
Implementation of equality propagation inspected with regard to
prepared statements and stored procedures. We now restore
AND/OR structure of every ON expression in addition to AND/OR
structure of WHERE clauses when reexecuting a PS/SP.
sql/table.h:
Add declaration for TABLE::prep_on_expr.