If item->cached_table is set, find_field_in_tables() returns found field
even if it doesn't belong to current select. Because Item_field::fix_fields
doesn't expect such behaviour, reported bug occurs.
Item_field::fix_fields() was modifed to detect when find_field_in_tables()
can return field from outer select and process such fields accordingly.
In order to ease this code which was searching and processing outed fields was
moved into separate function called Item_field::fix_outer_field().
sql/item_subselect.h:
Fixed bug #15706: find_field_in_tables() returns field from outer select
Item_field::fix_outer_field() was marked as friend to Item_subselect class.
sql/item.h:
Fixed bug #15706: find_field_in_tables() returns field from outer select
fix_outer_field() function is added to the Item_field class.
sql/item.cc:
Fixed bug #15706: find_field_in_tables() returns field from outer select
Item_ref::fix_fields() and Item_field::fix_fields() were modifed to detect when
find_field_in_tables() can return field from outer select and process such
fields accordingly.
In order to ease this, code Item_field::fix_fields() which was searching and
processing outer fields was moved into separate function called
Item_field::fix_outer_field().
To the Item_field::fix_field() added a loop for finding context for found field.
mysql-test/t/disabled.def:
Fixed bug #15706: find_field_in_tables() returns field from outer select
Enable subselect test
The bug was in JOIN::join_free which was wrongly determining that
all joins have been already executed and therefore all used tables
can be closed.
mysql-test/r/subselect_innodb.result:
- test results fixed (Bug#12736 "Server crash during a select
mysql-test/t/subselect_innodb.test:
- a test case for Bug#12736 "Server crash during a select": test
that ha_index_or_rnd_end and mysql_unlock_tables are called
for all used tables in proper order.
sql/item_subselect.cc:
- implement subselect_union_engine::is_executed
sql/item_subselect.h:
- implement Item_subselect::is_evaluated. This function is used
to check whether we can clean up a non-correlated join of a subquery
when cleaning up the join of the outer query
sql/sql_lex.h:
- declare st_select_lex::cleanup_all_joins
sql/sql_select.cc:
- remove an argument from JOIN::join_free, it's now not used
- reimplement JOIN::join_free to not unlock tables if there
is a subquery that has not yet been evaluated. Make sure that the
new implementation calls ha_index_or_rnd_end for every table in
the join and inner joins, because all table cursors must be closed
before mysql_unlock_tables.
sql/sql_select.h:
- JOIN::join_free signature changed
sql/sql_union.cc:
- implement a helper method st_select_lex::cleanup_all_joins, which
recursively walks over a tree of joins and calls cleanup() for
each join.
- 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.
cause crash on update".
Let us update "thd" pointer in LEX, all its units and in LEX::result before
executing statement in trigger body, since triggers are associated with TABLE
object and because of this can be used in different threads.
mysql-test/r/trigger.result:
Added test case for bug #11973 "SELECT .. INTO var_name; in trigger cause
crash on update".
mysql-test/t/trigger.test:
Added test case for bug #11973 "SELECT .. INTO var_name; in trigger cause
crash on update".
sql/item_subselect.cc:
subselect_engine:
Moved implementation of set_thd() method to item_subselect.cc,
since now it also sets "thd" for subselect_engine::result.
sql/item_subselect.h:
subselect_engine:
Moved implementation of set_thd() method to item_subselect.cc,
since now it also sets "thd" for subselect_engine::result.
sql/sql_class.h:
select_result:
Added set_thd() method for updating select_result::thd value (we need this
in cases when statement to which this select_result belongs will be used
in different threads, as it happens for statements in trigger body).
multi_delete/multi_update:
Got rid of redundant "thd" member (we already have it in select_result).
sql/sql_delete.cc:
multi_delete:
Got rid of redundant "thd" member (we already have it in select_result).
sql/sql_lex.h:
st_select_lex_unit:
Added set_thd() method for updating st_select_lex_unit::thd value
(we need this in cases when statement to which this unit belongs will
be used in different threads, as it happens for statements in trigger body).
We don't update thd of select_result pointed by st_select_lex_unit::result
in this method, since it is either have too short lifetime (i.e. created for
each execution) or is accessible via Item_subquery or LEX::result and thus
already taken care of.
sql/sql_parse.cc:
multi_delete:
Got rid of redundant "thd" member (we already have it in select_result).
sql/sql_prepare.cc:
reinit_stmt_before_use():
We have to update "thd" pointer in LEX, all its units and in LEX::result,
since statements which belong to trigger body are associated with TABLE
object and because of this can be used in different threads.
sql/sql_update.cc:
multi_update:
Got rid of redundant "thd" member (we already have it in select_result).
data": remove the fix for another bug (8807) that
added OUTER_REF_TABLE_BIT to all subqueries that used a placeholder
to prevent their evaluation at prepare. As this bit hanged in
Item_subselect::used_tables_cache for ever, a constant subquery with
a placeholder was never evaluated as such, which caused wrong
choice of the execution plan for the statement.
- to fix Bug#8807 backport a better fix from 5.0
- post-review fixes.
mysql-test/r/ps.result:
Bug#11458: test results fixed
mysql-test/t/ps.test:
- add a test case for Bug#11458 "Prepared statement with subselects return
random data"
sql/item.cc:
- remove unnecessary Item_param::fix_fields
- fix Item_param::set_null to set item_type accordingly (safety:
Item_param should behave like a basic constant).
sql/item.h:
Remove Item_param::fix_fields
sql/item_subselect.h:
Remove no more existing friend.
sql/mysql_priv.h:
Add UNCACHEABLE_PREPARE to mark all subqueries as uncacheable if
in statement prepare (backport from 5.0).
sql/sql_lex.h:
Comment fixed.
sql/sql_parse.cc:
If in statement prepare, mark all subqueries as uncacheable (backport
from 5.0)
sql/sql_prepare.cc:
Switch off the uncacheable flag from all subqueries after statement
prepare is done (backport from 5.0)
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
into neptunus.(none):/home/msvensson/mysql/mysql-5.0
include/my_global.h:
Auto merged
sql/field.h:
Auto merged
sql/ha_berkeley.h:
Auto merged
sql/ha_heap.h:
Auto merged
sql/ha_innodb.h:
Auto merged
sql/ha_myisam.h:
Auto merged
sql/ha_myisammrg.h:
Auto merged
sql/ha_ndbcluster.h:
Auto merged
sql/handler.h:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.h:
Auto merged
sql/item_geofunc.h:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/item_subselect.h:
Auto merged
sql/item_sum.h:
Auto merged
BitKeeper/deleted/.del-ha_isam.h~bf53d533be3d3927:
Auto merged
BitKeeper/deleted/.del-ha_isammrg.h~66fd2e5bfe7207dc:
Auto merged
sql/examples/ha_archive.h:
Auto merged
sql/item_timefunc.h:
Auto merged
sql/opt_range.h:
Auto merged
sql/procedure.h:
Auto merged
sql/protocol.h:
Auto merged
sql/set_var.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_list.h:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_string.h:
Auto merged
sql/sql_udf.h:
Auto merged
sql/tztime.h:
Auto merged
- Introduce ifdefs so we can control when to use #pragma interface on cygwin
include/my_global.h:
Turn on use of #pragma implementation and #pragma interface if compiled with GCC and platform != Cygwin
include/raid.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/examples/ha_archive.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/examples/ha_example.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/field.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_berkeley.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_blackhole.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_heap.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_innodb.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_isam.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_isammrg.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_myisam.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_myisammrg.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_ndbcluster.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/handler.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_cmpfunc.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_func.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_geofunc.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_strfunc.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_subselect.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_sum.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_timefunc.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/opt_range.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/procedure.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/protocol.h:
replace __GNUC__ with USE_PRAGMA_IMPLEMENTATION
sql/set_var.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/sql_class.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/sql_list.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/sql_select.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/sql_string.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/sql_udf.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/tztime.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
(BUG#10041)
sql/item.cc:
depended_from shoudl be cleaned
layout fixed
function to mark range of SELECTs as dependent (used if item was resolved with PS cache of resolving identifiers)
sql/item.h:
function to mark range of SELECTs as dependent (used if item was resolved with PS cache of resolving identifiers)
sql/item_subselect.h:
function to mark range of SELECTs as dependent (used if item was resolved with PS cache of resolving identifiers)
sql/sql_base.cc:
if outer refernce (identifier) was resolved with help of cache all subqueries and resolved item itseld have to be correctly marked as dependent
Added a test case for bug #9516.
item_subselect.h:
Fixed bug #9516.
The bug was due to that fact that the class Item_subselect
inherited the generic implementation of the function
not_null_tables that was not valid for the objects
of this class. As a result evaluation of the
not_null_tables attribute was not correct for subqueries.
This caused invalid transformations of outer joins into
inner joins.
sql/item_subselect.h:
Fixed bug #9516.
The bug was due to that fact that the class Item_subselect
inherited the generic implementation of the function
not_null_tables that was not valid for the objects
of this class. As a result evaluation of the
not_null_tables attribute was not correct for subqueries.
This caused invalid transformations of outer joins into
inner joins.
mysql-test/t/subselect.test:
Added a test case for bug #9516.
mysql-test/r/subselect.result:
Added a test case for bug #9516.
into sanja.is.com.ua:/home/bell/mysql/bk/work-union_merge-5.0
sql/field.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_subselect.h:
Auto merged
sql/sql_parse.cc:
Auto merged
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
mysql-test/r/group_by.result:
Auto merged
mysql-test/r/metadata.result:
Auto merged
mysql-test/r/union.result:
Auto merged
mysql-test/t/union.test:
Auto merged
sql/item.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
support-files/mysql.server.sh:
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/ps_7ndb.result:
Auto merged
sql/item.h:
Auto merged
sql/item_subselect.h:
Auto merged
sql/item.cc:
SCCS merged
- Add function Item_param::fix_fields which will update any subselect they are part of and indicate that the subsleect is not const during prepare phase, and thus should not be executed during prepare.
mysql-test/include/ps_query.inc:
Adde new test case
mysql-test/r/ps_2myisam.result:
Update test result
mysql-test/r/ps_3innodb.result:
Update test result
mysql-test/r/ps_4heap.result:
Update test result
mysql-test/r/ps_5merge.result:
Update test result
mysql-test/r/ps_6bdb.result:
Update test result
mysql-test/r/ps_7ndb.result:
Update test result
sql/item.cc:
Add function Item_param::fix_fields, which will mark any subselects they are part of as not being a constant expression unless the param value is specified, ie. it will be not be constant during prepare phase.
sql/item.h:
Adde Item_param::fix_fields
sql/item_subselect.h:
Make Item_param::fix_field friend of Item_subselect
mysql-test/r/subselect.result:
result changing
fixed last test
test of transformation of left expression of subquery
mysql-test/t/subselect.test:
fixed last test
test of transformation of left expression of subquery
sql/item_subselect.cc:
fixfields made for left part of IN/ALL/ANY subquery before calling cols() to detect type of transformation (scalar or row)
similar action of both transformation moved to separate function
sql/item_subselect.h:
optimised field initialization and new method
BitKeeper/etc/ignore:
auto-union
BitKeeper/etc/logging_ok:
auto-union
Build-tools/Do-compile:
Auto merged
VC++Files/sql/mysqld.dsp:
Auto merged
client/Makefile.am:
Auto merged
client/mysql.cc:
Auto merged
BitKeeper/deleted/.del-acinclude.m4~f4ab416bac5003:
Auto merged
client/mysqltest.c:
Auto merged
include/my_base.h:
Auto merged
innobase/dict/dict0dict.c:
Auto merged
innobase/dict/dict0load.c:
Auto merged
innobase/include/dict0dict.h:
Auto merged
innobase/include/row0mysql.h:
Auto merged
innobase/os/os0file.c:
Auto merged
innobase/srv/srv0srv.c:
Auto merged
libmysql/libmysql.c:
Auto merged
myisam/mi_check.c:
Auto merged
myisam/mi_rnext_same.c:
Auto merged
myisam/mi_write.c:
Auto merged
myisam/sort.c:
Auto merged
mysql-test/mysql-test-run.sh:
Auto merged
mysql-test/r/ctype_ucs.result:
Auto merged
mysql-test/r/ctype_ujis.result:
Auto merged
mysql-test/r/gis-rtree.result:
Auto merged
mysql-test/r/group_by.result:
Auto merged
mysql-test/r/merge.result:
Auto merged
mysql-test/r/metadata.result:
Auto merged
mysql-test/r/ndb_alter_table.result:
Auto merged
mysql-test/r/ps_1general.result:
Auto merged
mysql-test/r/insert_update.result:
Auto merged
mysql-test/r/timezone2.result:
Auto merged
mysql-test/r/type_enum.result:
Auto merged
mysql-test/r/variables.result:
Auto merged
mysql-test/t/ctype_ucs.test:
Auto merged
mysql-test/t/merge.test:
Auto merged
mysql-test/t/ps_1general.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
mysql-test/t/system_mysql_db_fix.test:
Auto merged
mysql-test/t/variables.test:
Auto merged
ndb/include/ndbapi/NdbConnection.hpp:
Auto merged
ndb/include/ndbapi/NdbDictionary.hpp:
Auto merged
ndb/src/common/util/version.c:
Auto merged
ndb/src/kernel/blocks/dbacc/DbaccInit.cpp:
Auto merged
ndb/src/kernel/blocks/dbacc/Makefile.am:
Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Auto merged
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
ndb/src/kernel/blocks/dblqh/DblqhInit.cpp:
Auto merged
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
Auto merged
ndb/src/kernel/blocks/dbtux/Dbtux.hpp:
Auto merged
ndb/src/ndbapi/NdbBlob.cpp:
Auto merged
ndb/src/ndbapi/NdbConnection.cpp:
Auto merged
ndb/src/ndbapi/NdbDictionary.cpp:
Auto merged
ndb/src/ndbapi/NdbDictionaryImpl.cpp:
Auto merged
ndb/src/ndbapi/NdbDictionaryImpl.hpp:
Auto merged
ndb/src/ndbapi/NdbOperationExec.cpp:
Auto merged
ndb/src/ndbapi/NdbScanOperation.cpp:
Auto merged
ndb/test/ndbapi/Makefile.am:
Auto merged
scripts/make_win_src_distribution.sh:
Auto merged
scripts/mysql_install_db.sh:
Auto merged
sql/field.cc:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/ha_ndbcluster.h:
Auto merged
sql/handler.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_create.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_geofunc.cc:
Auto merged
sql/item_row.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_sum.h:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/net_serv.cc:
Auto merged
sql/password.c:
Auto merged
sql/protocol.cc:
Auto merged
sql/repl_failsafe.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_do.cc:
Auto merged
sql/sql_handler.cc:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_repl.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/examples/ha_archive.cc:
Auto merged
sql/strfunc.cc:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged
sql/tztime.h:
Auto merged
sql/udf_example.cc:
Auto merged
sql/unireg.cc:
Auto merged
Makefile.am:
Simple merge
client/mysqldump.c:
Simple merge
configure.in:
Simple merge
libmysqld/lib_sql.cc:
Automatic merge
mysql-test/r/func_str.result:
Automatic merge
mysql-test/r/grant.result:
simple merge
mysql-test/r/multi_update.result:
automatc merge
mysql-test/r/ps.result:
automatic merge
mysql-test/r/ps_2myisam.result:
Automatic merge
mysql-test/r/ps_3innodb.result:
Automatic merge
mysql-test/r/ps_4heap.result:
Automatic merge
mysql-test/r/ps_5merge.result:
Automatic merge
mysql-test/r/ps_6bdb.result:
Automatic merge
mysql-test/r/ps_7ndb.result:
Automatic merge
mysql-test/r/show_check.result:
Automatic merge
mysql-test/r/subselect.result:
Automatic merge
mysql-test/t/grant.test:
Automatic merge
mysql-test/t/multi_update.test:
Automatic merge
mysql-test/t/ps.test:
Automatic merge
mysql-test/t/show_check.test:
Automatic merge
ndb/docs/wl2077.txt:
merge
ndb/src/mgmsrv/main.cpp:
merge
scripts/mysql_fix_privilege_tables.sh:
merge
sql/item.cc:
Merge (difficult)
sql/item.h:
simple merge
sql/item_cmpfunc.h:
Automatic merge
sql/item_subselect.cc:
Simple merge
sql/item_subselect.h:
Automatic merge
sql/mysql_priv.h:
Simple merge
sql/slave.h:
Automatic merge
sql/sql_base.cc:
Removed code that was backported to 4.1
sql/sql_class.h:
Merge (some code moved to sql_insert.cc)
sql/sql_db.cc:
simple merge
sql/sql_insert.cc:
Merge (difficult as logic had changed both in 4.1 and 5.0)
Some coded moved here from sql_class.h
sql/sql_parse.cc:
Merge (difficult)
sql/sql_prepare.cc:
Simple merge
sql/sql_select.cc:
Automatic merge
sql/sql_table.cc:
Simple merge
sql/sql_update.cc:
Difficult merge because of different logic for multi-updates
sql/sql_yacc.yy:
Simple merge
tests/client_test.c:
Simple merge
fixed null processing in NOT operation used in ALL subquery (Bug #6247)
mysql-test/r/subselect.result:
new tests of ALL/ANY wiews
mysql-test/t/subselect.test:
new tests of ALL/ANY wiews
sql/item_cmpfunc.cc:
fixed special NOT ALL processing
fixed processing max/min optimized subqueries with empty results (added methods to detect empty results) and special NOP operation to process them for SOME/ANY sobqueries
sql/item_cmpfunc.h:
fixed processing max/min optimized subqueries with empty results (added methods to detect empty results) and special NOP operation to process them for SOME/ANY sobqueries
sql/item_subselect.cc:
reporting empty result added for max/min subqueries
sql/item_subselect.h:
reporting empty result added for max/min subqueries
sql/item_sum.cc:
reporting empty result added fox max/min aggregate functions
sql/item_sum.h:
reporting empty result added fox max/min aggregate functions
sql/sql_class.cc:
reporting empty result added for max/min subqueries
sql/sql_parse.cc:
reporting empty result added for max/min subqueries
sql/sql_union.cc:
reporting empty result added for max/min subqueries
include/mysqld_error.h:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
mysql-test/r/rpl_charset.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/rpl_charset.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/filesort.cc:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_innodb.h:
Auto merged
sql/handler.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_row.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/item_uniq.h:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/parse_file.cc:
Auto merged
sql/protocol.cc:
Auto merged
sql/protocol.h:
Auto merged
sql/protocol_cursor.cc:
Auto merged
sql/repl_failsafe.cc:
Auto merged
sql/repl_failsafe.h:
Auto merged
sql/set_var.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
sql/sp.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_analyse.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_db.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_error.cc:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_repl.h:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_show.cc:
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/sql_udf.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
sql/unireg.cc:
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
sql/filesort.cc:
val -> val_real
sql/item.cc:
val -> val_real
sql/item.h:
val -> val_real
sql/item_buff.cc:
val -> val_real
sql/item_cmpfunc.cc:
val -> val_real
sql/item_cmpfunc.h:
val -> val_real
sql/item_func.cc:
val -> val_real
sql/item_func.h:
val -> val_real
sql/item_geofunc.cc:
val -> val_real
sql/item_geofunc.h:
val -> val_real
sql/item_row.h:
val -> val_real
sql/item_strfunc.cc:
val -> val_real
sql/item_strfunc.h:
val -> val_real
sql/item_subselect.cc:
val -> val_real
sql/item_subselect.h:
val -> val_real
sql/item_sum.cc:
val -> val_real
sql/item_sum.h:
val -> val_real
sql/item_timefunc.h:
val -> val_real
sql/item_uniq.h:
val -> val_real
sql/procedure.h:
val -> val_real
sql/sp_head.cc:
val -> val_real
sql/sql_analyse.cc:
val -> val_real
sql/sql_class.cc:
val -> val_real
sql/sql_select.cc:
val -> val_real
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
improved mechanisn of detection posibility to be NULL for single row queries
switched off substitution optimisation for single row subqueries in PS due to problem in resolving substituted expressions
(changes to make subselects test working with PS protocol)
mysql-test/r/subselect.result:
removed incorrect error message about aggregate functions
improved mechanisn of detection posibility to be NULL for single row queries
mysql-test/t/subselect.test:
removed incorrect error message about aggregate functions
sql/item_subselect.cc:
removed incorrect error message about aggregate functions
switched off substitution optimisation for single row subqueries in PS due to problem in resolving substituted expressions
improved mechanisn of detection posibility to be NULL for single row queries
sql/item_subselect.h:
new method to help in NULL ability detection
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
(WL#2133)
include/mysqld_error.h:
new errors added.
mysql-test/r/rpl_charset.result:
new error
mysql-test/r/rpl_timezone.result:
new error
mysql-test/r/sp-security.result:
more clean error message
mysql-test/r/sp.result:
now error state intercepted correctly
mysql-test/t/connect.test:
new error message
mysql-test/t/rpl_charset.test:
new error message
mysql-test/t/rpl_timezone.test:
new error
mysql-test/t/sp-security.test:
more correct error handling
mysql-test/t/sp.test:
now error state intercepted correctly
sql/ha_innodb.cc:
-1/1 (sent/unsent) error reporting removed
sql/ha_innodb.h:
-1/1 (sent/unsent) error reporting removed
sql/item.cc:
only boolean values should be returned by fix_fields()
sql/item_cmpfunc.cc:
only boolean values should be returned by fix_fields()
sql/item_func.cc:
only boolean values should be returned by fix_fields()
net_printf/send_error calls replaced by my_error family functions
sql/item_row.cc:
only boolean values should be returned by fix_fields()
sql/item_subselect.cc:
only boolean values should be returned by fix_fields()
-1/1 (sent/unsent) error reporting removed
sql/item_subselect.h:
-1/1 (sent/unsent) error reporting removed
sql/item_sum.cc:
only boolean values should be returned by fix_fields()
sql/item_timefunc.cc:
only boolean values should be returned by fix_fields()
sql/item_uniq.h:
only boolean values should be returned by fix_fields()
sql/mysql_priv.h:
-1/1 (sent/unsent) error reporting removed
sql/mysqld.cc:
net_printf/send_error calls replaced by my_error family functions
changes in my_message_sql to support error handling correctly
sql/protocol.cc:
net_printf/send_error calls replaced by my_error family functions
sql/protocol_cursor.cc:
net_printf/send_error calls replaced by my_error family functions
sql/repl_failsafe.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/repl_failsafe.h:
-1/1 (sent/unsent) error reporting removed
sql/set_var.cc:
net_printf/send_error calls replaced by my_error family functions
sql/share/czech/errmsg.txt:
new error messages
sql/share/danish/errmsg.txt:
new error messages
sql/share/dutch/errmsg.txt:
new error messages
sql/share/english/errmsg.txt:
new error messages
sql/share/estonian/errmsg.txt:
new error messages
sql/share/french/errmsg.txt:
new error messages
sql/share/german/errmsg.txt:
new error messages
sql/share/greek/errmsg.txt:
new error messages
sql/share/hungarian/errmsg.txt:
new error messages
sql/share/italian/errmsg.txt:
new error messages
sql/share/japanese/errmsg.txt:
new error messages
sql/share/korean/errmsg.txt:
new error messages
sql/share/norwegian-ny/errmsg.txt:
new error messages
sql/share/norwegian/errmsg.txt:
new error messages
sql/share/polish/errmsg.txt:
new error messages
sql/share/portuguese/errmsg.txt:
new error messages
sql/share/romanian/errmsg.txt:
new error messages
sql/share/russian/errmsg.txt:
new error messages
sql/share/serbian/errmsg.txt:
new error messages
sql/share/slovak/errmsg.txt:
new error messages
sql/share/spanish/errmsg.txt:
new error messages
sql/share/swedish/errmsg.txt:
new error messages
sql/share/ukrainian/errmsg.txt:
new error messages
sql/slave.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/slave.h:
-1/1 (sent/unsent) error reporting removed
sql/sp.cc:
net_printf/send_error calls replaced by my_error family functions
sql/sp_head.cc:
new eror handling support
net_printf/send_error calls replaced by my_error family functions
sql/sp_rcontext.cc:
net_printf/send_error calls replaced by my_error family functions
sql/sql_acl.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/sql_acl.h:
-1/1 (sent/unsent) error reporting removed
sql/sql_base.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_class.cc:
net_printf/send_error calls replaced by my_error family functions
sql/sql_class.h:
my_messhage_sql now set/reset query_error flag
sql/sql_db.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_delete.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_do.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_error.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_handler.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_help.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/sql_insert.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_lex.h:
-1/1 (sent/unsent) error reporting removed
sql/sql_load.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_map.cc:
errors without code removed
sql/sql_parse.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed from mysql_execute_command
sql/sql_prepare.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/sql_repl.cc:
error messages fixed
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/sql_repl.h:
-1/1 (sent/unsent) error reporting removed
sql/sql_select.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_select.h:
-1/1 (sent/unsent) error reporting removed
sql/sql_show.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_table.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/sql_trigger.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_udf.cc:
net_printf/send_error calls replaced by my_error family functions
sql/sql_union.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_update.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_view.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_view.h:
-1/1 (sent/unsent) error reporting removed
sql/sql_yacc.yy:
net_printf/send_error calls replaced by my_error family functions
mysql-test/r/view.result:
test of subqueries in merged views
mysql-test/t/view.test:
test of subqueries in merged views
sql/item_subselect.h:
new method tu return place of subquery
sql/sql_lex.cc:
allow merging views with subqueries in WHERE clause
sql/sql_view.cc:
allow merging views with subqueries in WHERE clause
Fixed (together with Guilhem) bugs in mysqlbinlog regarding --offset
Prefix addresses with 0x for easier comparisons of debug logs
Fixed problem where MySQL choosed index-read even if there would be a much better range on the same index
This fix changed some 'index' queries to 'range' queries in the test suite
Don't create 'dummy' WHERE clause for trivial WHERE clauses where we can remove the WHERE clause.
This fix removed of a lot of 'Using where' notes in the test suite.
Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
Give NOTE instead of WARNING for safe field-type conversions
Makefile.am:
Don't automaticly update files from bk
client/mysqlbinlog.cc:
Merge with 4.1 (+ apply bug fixes for --offset and --start-position)
include/my_sys.h:
Faster clear_alloc_root()
mysql-test/r/bdb.result:
Updated results after merge
mysql-test/r/create.result:
Updated results after merge
mysql-test/r/func_group.result:
Updated results after merge
mysql-test/r/func_if.result:
Updated results after merge
mysql-test/r/heap_btree.result:
Updated results after merge
mysql-test/r/index_merge.result:
Updated results after merge
mysql-test/r/index_merge_ror.result:
Updated results after merge
mysql-test/r/innodb.result:
Updated results after merge
mysql-test/r/join_outer.result:
Updated results after merge
mysql-test/r/mysqlbinlog2.result:
Updated results after merge
mysql-test/r/negation_elimination.result:
Updated results after merge
mysql-test/r/null.result:
Updated results after merge
Added more tests
mysql-test/r/null_key.result:
Updated results after merge
Added more tests
mysql-test/r/order_by.result:
Updated results after merge
mysql-test/r/range.result:
Updated results after merge
Added more tests
mysql-test/r/rpl_charset.result:
Updated results after merge
mysql-test/r/sp-error.result:
Updated results after merge
mysql-test/r/sp.result:
Updated results after merge
Added delete of some stored procedures in an attempt to be able to re-run test even if it aborts in the middle
mysql-test/r/type_blob.result:
Updated results after merge
(Some warnings are now notes)
mysql-test/r/user_var.result:
Updated results after merge
Added more tests
mysql-test/r/variables.result:
Updated results after merge
mysql-test/r/view.result:
Updated results after merge
mysql-test/t/mysqlbinlog2.test:
Updated tests to use new positions
mysql-test/t/null.test:
More tests
mysql-test/t/null_key.test:
More tests
mysql-test/t/range.test:
More tests
mysql-test/t/rpl_charset.test:
Avoid big diffs in the future if tests changes
mysql-test/t/sp-error.test:
Updated error numbers
mysql-test/t/sp-security.test:
Updated error numbers
mysql-test/t/sp.test:
Updated results after merge
Added delete of some stored procedures in an attempt to be able to re-run test even if it aborts in the middle
mysql-test/t/user_var.test:
More tests
mysql-test/t/view.test:
Updated error numbers
mysys/my_alloc.c:
Write into debug log the address of the allocated area
sql/ha_isam.cc:
Prefix addresses with 0x for easier comparisons of debug logs
sql/ha_myisam.cc:
Prefix addresses with 0x for easier comparisons of debug logs
sql/ha_ndbcluster.cc:
Add missing enum to switch
sql/handler.cc:
remove compiler warning
sql/item.cc:
More debugging
Simple cleanup
sql/item.h:
Move Item::cleanup() to item.cc
sql/item_cmpfunc.cc:
Fix arena code
sql/item_subselect.cc:
After merge fixes
sql/item_subselect.h:
After merge fixes
sql/item_sum.cc:
Updated comment
sql/log_event.cc:
Remove wrong test
sql/mysql_priv.h:
Indentation fixes
sql/mysqld.cc:
After merge fixes
Added 0x to pointers in debug log
sql/opt_range.cc:
Fixed problem where MySQL choosed index-read even if there would be a much better range on the same index
This fix changed some 'index' queries to 'range' queries in the test suite
sql/set_var.cc:
Indentation fixes
sql/sp_head.cc:
Set state to INITIALIZED to make SP work with new arena code
sql/sql_base.cc:
After merge fixes
sql/sql_class.cc:
More debugging
Use clear_alloc_root() instead of init_alloc_root() as the former is faster
sql/sql_class.h:
New method 'only_prepare()'
sql/sql_lex.cc:
After merge fixes
sql/sql_lex.h:
After merge fixes
sql/sql_parse.cc:
Fix for timezone tables. (The old way to add timezone tables to global list in 'create_total_list' doesn't work anymore)
Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
sql/sql_prepare.cc:
After merge fixes
sql/sql_select.cc:
Don't create 'dummy' WHERE clause for trivial WHERE clauses where we can remove the WHERE clause.
This fix removed of a lot of 'Using where' notes in the test suite
sql/sql_table.cc:
Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
sql/sql_union.cc:
After merge fix
sql/sql_view.cc:
After merge fix
sql/table.cc:
After merge fix
sql/tztime.cc:
Update timezone table handling to use new table lists structure
sql/tztime.h:
Update timezone table handling to use new table lists structure
sql/unireg.cc:
Use 0x before pointers
(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
mysql-test/r/view.result:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/table.h:
Auto merged
tests/client_test.c:
Auto merged
sql/sql_base.cc:
Merge
sql/sql_insert.cc:
Merge
sql/sql_select.cc:
Merge
sql/sql_view.cc:
Merge
sql/table.cc:
Merge
Merged the different find_xxxx_table_in_list functions to one + some inline functions
mysql-test/r/view.result:
Fix result (remove not used view from show tables)
sql/item_subselect.cc:
Remove not used functions
sql/item_subselect.h:
Remove not used functions
sql/mysql_priv.h:
Merged the different find_xxxx_table_in_list functions to one + some inline functions
sql/sql_acl.cc:
More debugging + simple cleanups
sql/sql_base.cc:
Merged the different find_xxxx_table_in_list functions to one + some inline functions
Indentation cleanups & more comments
sql/sql_delete.cc:
Namechange
sql/sql_insert.cc:
Simple optimizations & Style cleanups
Merged common code (in mysql_prepare_insert_check_table)
sql/sql_lex.cc:
function name changes
More comments
sql/sql_parse.cc:
Function name changes
Made check_one_table_access returning bool
More debugging in 'check_access'
Added function 'check_some_access', which is used when creating a view
sql/sql_prepare.cc:
Resetting flag directly after test makes code easier to read
sql/sql_select.cc:
Code simplifications
sql/sql_show.cc:
Indentation cleanups.
Fixed typo in name
sql/sql_update.cc:
Function name change
sql/sql_view.cc:
Simple optimizations.
Style fixes.
Remove view_field_names[]
Simplified 'check_key_in_view()'
sql/table.cc:
Simplified new code in openfrm()
variable name change i -> item
Indentation changes
sql/table.h:
Fixed typo in variable name
Method name change in field iterator: end() -> end_of_fields()
tests/client_test.c:
Changed number to macro
sql/item_subselect.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
a second time". The bug was caused by incompatibility of
negations elimination algorithm and PS: during first statement
execute a subtree with negation was replaced with equivalent
subtree without NOTs.
The problem was that although this transformation was permanent,
items of the new subtree were created in execute-local memory.
The patch adds means to check if it is the first execute of a
prepared statement, and if this is the case, to allocate items
in memory of the prepared statement.
The implementation:
- backports Item_arena from 5.0
- adds Item_arena::is_stmt_prepare(),
Item_arena::is_first_stmt_execute().
- deletes THD::allocate_temporary_pool_for_ps_preparing(),
THD::free_temporary_pool_for_ps_preparing(); they
were redundant.
and adds a few invariants:
- thd->free_list never contains junk (= freed items)
- thd->current_arena is never null. If there is no
prepared statement, it points at the thd.
The rest of the patch contains mainly mechanical changes and
cleanups.
mysql-test/r/ps.result:
Test results updated (test case for Bug#4912)
mysql-test/t/ps.test:
A test case for Bug#4912 "mysqld crashs in case a statement is
executed a second time"
sql/item_cmpfunc.cc:
current_statement -> current_arena
sql/item_subselect.cc:
Statement -> Item_arena, current_statement -> current_arena
sql/item_subselect.h:
Item_subselect does not need to save thd->current_statement.
sql/item_sum.cc:
Statement -> Item_arena
sql/item_sum.h:
Statement -> Item_arena
sql/mysql_priv.h:
Statement -> Item_arena
sql/sql_base.cc:
current_statement -> current_arena
sql/sql_class.cc:
- Item_arena
- convenient set_n_backup_statement, restore_backup_statement
(nice idea, Sanja)
sql/sql_class.h:
- Item_arena: backport from 5.0
- allocate_temporary_pool_for_ps_preparing,
free_temporary_pool_for_ps_preparing removed.
sql/sql_derived.cc:
current_statement -> current_arena
sql/sql_lex.cc:
current_statement -> current_arena
sql/sql_parse.cc:
Deploy invariant that thd->free_list never contains junk items
(backport from 5.0).
sql/sql_prepare.cc:
- backporting Item_arena
- no need to allocate_temporary_pool_for_ps_preparing().
sql/sql_select.cc:
Fix for bug#4912 "mysqld crashs in case a statement is
executed a second time": if this is the first execute of
a prepared statement, negation elimination is
done in memory of the prepared statement.
sql/sql_union.cc:
Backporting Item_arena from 5.0.
mysql-test/r/func_gconcat.result:
fix of test queries
mysql-test/r/subselect.result:
resolving fields of grouped outer SELECT
mysql-test/t/func_gconcat.test:
fix of test queries
mysql-test/t/subselect.test:
resolving fields of grouped outer SELECT
sql/item.cc:
skip resolving field in table list if table list is not accessable due to groupping
layout fixed
sql/item_subselect.cc:
detection of place of subquery
sql/item_subselect.h:
detection of place of subquery
sql/mysql_priv.h:
enum_parsing_place made global type
sql/sql_lex.cc:
enum_parsing_place made global type
sql/sql_lex.h:
enum_parsing_place made global type
sql/sql_yacc.yy:
enum_parsing_place made global type
client/mysql.cc:
Auto merged
client/mysqlbinlog.cc:
Auto merged
include/my_global.h:
Auto merged
innobase/include/row0mysql.h:
Auto merged
mysql-test/r/ps_1general.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/system_mysql_db.result:
Auto merged
mysql-test/t/subselect.test:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_table.cc:
Auto merged
two TABLE_LIST copy eliminated
include/mysqld_error.h:
errors of view
libmysqld/Makefile.am:
new view file
mysql-test/r/connect.result:
SHOW TABLE show type of table
mysql-test/r/ctype_recoding.result:
SHOW TABLE show type of table
mysql-test/r/drop.result:
SHOW TABLE show type of table
mysql-test/r/grant.result:
new two privileges (CRETEA|SHOW VIEW)
mysql-test/r/lowercase_table.result:
SHOW TABLE show type of table
mysql-test/r/ps_1general.result:
SHOW TABLE show type of table
mysql-test/r/rename.result:
SHOW TABLE show type of table
mysql-test/r/rpl000009.result:
SHOW TABLE show type of table
mysql-test/r/rpl_error_ignored_table.result:
SHOW TABLE show type of table
mysql-test/r/select.result:
SHOW TABLE show type of table
mysql-test/r/system_mysql_db.result:
SHOW TABLE show type of table
new two privileges (CRETEA|SHOW VIEW)
mysql-test/t/system_mysql_db_fix.test:
removing all system tables
scripts/mysql_fix_privilege_tables.sql:
new two privileges (CRETEA|SHOW VIEW)
sql/Makefile.am:
new VIEW related file
sql/ha_myisammrg.cc:
two TABLE_LIST copy eliminated
sql/item.cc:
VIEW
sql/item.h:
VIEW
sql/item_subselect.cc:
VIEW
sql/item_subselect.h:
VIEW
sql/lex.h:
VIEW
sql/lock.cc:
VIEW
sql/mysql_priv.h:
VIEW
sql/mysqld.cc:
VIEW
new parameter - sql_updatable_view_key
sql/opt_sum.cc:
two TABLE_LIST copy eliminated
sql/set_var.cc:
new parameter - sql_updatable_view_key
sql/share/czech/errmsg.txt:
errors messages of views
sql/share/danish/errmsg.txt:
errors messages of views
sql/share/dutch/errmsg.txt:
errors messages of views
sql/share/english/errmsg.txt:
errors messages of views
sql/share/estonian/errmsg.txt:
errors messages of views
sql/share/french/errmsg.txt:
errors messages of views
sql/share/german/errmsg.txt:
errors messages of views
sql/share/greek/errmsg.txt:
errors messages of views
sql/share/hungarian/errmsg.txt:
errors messages of views
sql/share/italian/errmsg.txt:
errors messages of views
sql/share/japanese/errmsg.txt:
errors messages of views
sql/share/korean/errmsg.txt:
errors messages of views
sql/share/norwegian-ny/errmsg.txt:
errors messages of views
sql/share/norwegian/errmsg.txt:
errors messages of views
sql/share/polish/errmsg.txt:
errors messages of views
sql/share/portuguese/errmsg.txt:
errors messages of views
sql/share/romanian/errmsg.txt:
errors messages of views
sql/share/russian/errmsg.txt:
errors messages of views
sql/share/serbian/errmsg.txt:
errors messages of views
sql/share/slovak/errmsg.txt:
errors messages of views
sql/share/spanish/errmsg.txt:
errors messages of views
sql/share/swedish/errmsg.txt:
errors messages of views
sql/share/ukrainian/errmsg.txt:
errors messages of views
sql/slave.cc:
two TABLE_LIST copy eliminated
sql/sp.cc:
VIEW
sql/sql_acl.cc:
VIEW
sql/sql_acl.h:
VIEW
sql/sql_base.cc:
VIEW
sql/sql_cache.cc:
two TABLE_LIST copy eliminated
sql/sql_class.h:
VIEW
sql/sql_db.cc:
two TABLE_LIST copy eliminated
sql/sql_delete.cc:
VIEW
sql/sql_derived.cc:
VIEW
sql/sql_handler.cc:
two TABLE_LIST copy eliminated
sql/sql_help.cc:
two TABLE_LIST copy eliminated
sql/sql_insert.cc:
VIEW
sql/sql_lex.cc:
VIEW
sql/sql_lex.h:
VIEW
sql/sql_load.cc:
VIEW
sql/sql_olap.cc:
VIEW
sql/sql_parse.cc:
two TABLE_LIST copy eliminated
VIEW
sql/sql_prepare.cc:
VIEW
sql/sql_rename.cc:
two TABLE_LIST copy eliminated
sql/sql_select.cc:
VIEW
sql/sql_show.cc:
VIEW
sql/sql_table.cc:
VIEW
sql/sql_union.cc:
VIEW
sql/sql_update.cc:
VIEW
sql/sql_yacc.yy:
VIEW
sql/table.cc:
VIEW
sql/table.h:
VIEW
sql/tztime.cc:
two TABLE_LIST copy eliminated
sql/unireg.h:
VIEW
tests/client_test.c:
VIEW
restoring current senect pointer before PS rexecution (backport from 5.0)
removed spaces at lines ends
mysql-test/r/subselect.result:
Aggregate function comparation with ALL/ANY/SOME subselect test
mysql-test/t/subselect.test:
Aggregate function comparation with ALL/ANY/SOME subselect test
sql/item_subselect.cc:
removed spaces at lines ends
aggregate functions check during substitution made only for single row subselects
sql/item_subselect.h:
removed spaces at lines ends
sql/sql_prepare.cc:
restoring current senect pointer before PS rexecution (backport from 5.0)
BitKeeper/etc/ignore:
auto-union
BitKeeper/etc/logging_ok:
auto-union
client/mysqltest.c:
Auto merged
configure.in:
Auto merged
include/my_sys.h:
Auto merged
include/mysql_com.h:
Auto merged
libmysql/libmysql.c:
Auto merged
libmysqld/Makefile.am:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
myisam/mi_check.c:
Auto merged
myisam/myisamchk.c:
Auto merged
myisam/myisamdef.h:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/null.result:
Auto merged
mysql-test/r/query_cache.result:
Auto merged
mysql-test/r/rpl_server_id2.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/variables.result:
Auto merged
mysql-test/t/rpl000015.test:
Auto merged
mysql-test/t/rpl_error_ignored_table.test:
Auto merged
mysql-test/t/rpl_log.test:
Auto merged
mysql-test/t/rpl_log_pos.test:
Auto merged
mysql-test/t/rpl_max_relay_size.test:
Auto merged
mysql-test/t/rpl_relayrotate.test:
Auto merged
mysql-test/t/rpl_rotate_logs.test:
Auto merged
mysql-test/t/rpl_server_id2.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
mysql-test/t/variables.test:
Auto merged
mysys/my_pthread.c:
Auto merged
netware/BUILD/compile-netware-all:
Auto merged
netware/BUILD/compile-netware-standard:
Auto merged
netware/BUILD/mwenv:
Auto merged
netware/Makefile.am:
Auto merged
netware/my_manage.c:
Auto merged
netware/my_manage.h:
Auto merged
netware/mysql_test_run.c:
Auto merged
scripts/mysql_install_db.sh:
Auto merged
sql/Makefile.am:
Auto merged
sql/ha_berkeley.cc:
Auto merged
sql/ha_berkeley.h:
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.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_sum.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/lock.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/protocol.cc:
Auto merged
sql/protocol.h:
Auto merged
sql/repl_failsafe.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_db.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.h:
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
sql/sql_union.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
tests/client_test.c:
Auto merged
mysql-test/r/sp.result:
test suite for Bug #2266
mysql-test/t/sp.test:
test suite for Bug #2266
sql/item_subselect.cc:
made ancestor for Statement (Item_arena)
sql/item_subselect.h:
made ancestor for Statement (Item_arena)
sql/item_sum.cc:
made ancestor for Statement (Item_arena)
sql/item_sum.h:
made ancestor for Statement (Item_arena)
sql/mysql_priv.h:
reset_stmt_for_execute use PS and SP
sql/sp_head.cc:
sp_head use Item_arena as ancestor to be PS cleunup compatible
SP use PS storing/restoring/cleanup mechanisms
cleanup() of SP Items added
Items created in temporary memory pool during SP execution saved for normal freeing after SP execution
sql/sp_head.h:
sp_head use Item_arena
sql/sql_base.cc:
made ancestor for Statement (Item_arena)
results of wild_setup made permanent
setup_conds make natural joins expanding only once and store results in PS/SP memory
sql/sql_class.cc:
made ancestor for Statement (Item_arena)
sql/sql_class.h:
made ancestor for Statement (Item_arena)
method to detect PS preparation added
sql/sql_delete.cc:
storing where for DELETE and mark first execution
sql/sql_derived.cc:
use method
sql/sql_insert.cc:
mark first execution for INSERT
sql/sql_lex.cc:
flags to correctly make transformations of query and storing them in memory of PS/SP
made ancestor for Statement (Item_arena)
sql/sql_lex.h:
reved variable od SP ol saving data
flags to correctly make transformations of query and storing them in memory of PS/SP
sql/sql_parse.cc:
cleunup unit for any query
sql/sql_prepare.cc:
made ancestor for Statement (Item_arena)
storing where moved to preparation
changed interface of reset_stmt_for_execute to use it is SP
do not restore where/order by/group by before first execution (but tables and unit can be chenged without execution and should be prepared (subqueries executes on demand))
sql/sql_select.cc:
storing where for SELECT/multi-DELETE/... and mark first execution
sql/sql_union.cc:
made ancestor for Statement (Item_arena)
sql/sql_update.cc:
storing where for UPDATE and mark first execution
mysql-test/r/subselect.result:
ALL/ANY test
mysql-test/t/subselect.test:
ALL/ANY test
sql/item_subselect.cc:
keep old engine & JOIN if we changed subquery Item, which allow avoid second all SELECT items fix_fields call with pervios clean up (because of second setup_tables which remove table->key_use and maybe something else)
keep list when we change Item in SELECT list
processing inserted max/min function (now JOIN::prepare will be called only once)
methods of changing item for subselect engines
sql/item_subselect.h:
change item & results procedure
sql/item_sum.cc:
Item_sum_hybrid::clear moved to .cc file (to keep .h clean and to make inserving/removing debug info easy)
sql/item_sum.h:
Item_sum_hybrid::clear moved to .cc file (to keep .h clean and to make inserving/removing debug info easy)
sql/sql_lex.cc:
note about new method
sql/sql_lex.h:
method for changing result of UNION JOINs
sql/sql_select.cc:
method for changing result in JOIN
sql/sql_select.h:
method for changing result in JOIN
sql/sql_union.cc:
method for changing result in JOIN
sql/handler.h:
Fixed (portability) bug. No qualified method names in the class definition.
sql/item_cmpfunc.h:
Attempt to silence cast warnings on some platforms.
sql/item_subselect.h:
Attempt to silence cast warnings on some platforms.
sql/set_var.cc:
Silence warning (missing cast).
sql/spatial.h:
Attempt to silence cast warnings on some platforms.
sql/sql_cache.cc:
Silence warning (wrong cast).
sql/sql_lex.h:
Attempt to silence cast warnings on some platforms.
fixed UNION preparation
sql/item.cc:
debug output added
sql/item.h:
debug output added
sql/item_cmpfunc.cc:
correct cleunup() for Item_in_optimizer
sql/item_cmpfunc.h:
correct cleunup() for Item_in_optimizer
debug output added
sql/item_func.h:
debug output added
sql/item_subselect.cc:
support of prepared statemnts added - mostly memorry allocation manegement, only one trabsformatio & correct cleupup()
sql/item_subselect.h:
support of prepared statemnts added - mostly memorry allocation manegement, only one trabsformatio & correct cleupup()
sql/item_sum.cc:
debug output added
sql/item_sum.h:
debug output added
sql/sql_class.cc:
function to switch allocation arena for Items
sql/sql_class.h:
function to switch allocation arena for Items
pointer on current prepared statement added
sql/sql_lex.cc:
comment fixed
sql/sql_lex.h:
item cleanup support
sql/sql_prepare.cc:
- fixed preparation of PS to avoid storing junk in its memory + correct work with union
- fixed tables cleanup for UNION & subqueries
sql/sql_select.cc:
removed condition which is always true for now
fixed layout
sql/sql_union.cc:
support of UNION subquery cleanup
tests/client_test.c:
test of repeatable subqueries
test of correct UNION initialisation
Here i added Item_*::cleanup() functions,
removed a lot of ~Item_*'s,
added code to restore order_list and group_list
sql/item.cc:
cleanups methods implemented
Item_ref constructors changed
sql/item.h:
cleanups declared
Item_ref constructors changed
some ~Item_* deleted
sql/item_cmpfunc.cc:
new Item_ref format
sql/item_cmpfunc.h:
saving/restoring of the original arguments added to
eq and equal functions
sql/item_func.cc:
New Item_ref format
sql/item_func.h:
destructors removed/changed to 'cleanup()'
sql/item_row.cc:
New Item_ref format
sql/item_row.h:
~Item_row -> cleanup()
sql/item_strfunc.cc:
new Item_ref format
sql/item_strfunc.h:
destructors removed
sql/item_subselect.cc:
Item_subselect implementation,
new Item_ref() format
sql/item_subselect.h:
cleanups for subselects declared
sql/item_sum.cc:
cleanups implementations
sql/item_sum.h:
cleanups declarations
destructors removed
sql/mysql_priv.h:
free_items, cleanup_items exported
sql/sql_prepare.cc:
cleanup_items, free_items calls added
stmt->query_id= thd->query_id restored
cleanup procedures for group_list and order_list added
sql/sql_yacc.yy:
New Item_ref() format
This bug happens when a query, having subselects in the fields list,
needs temporary table.
Item_subselect::get_tmp_table_item isn't implemented and just returns
*this. So the tmp_table_item takes value not from temporary but
from original table.
mysql-test/r/subselect.result:
appropriate test result added
mysql-test/t/subselect.test:
test case added
sql/item_subselect.cc:
Item_subselect::get_tmp_table_item implementation
sql/item_subselect.h:
Item_subselect::get_tmp_table_item declaration
Fixed compiler warnings (a lot of hidden variables detected by the Forte compiler)
Added a lot of 'version_xxx' strings to 'show variables'
Prevent copying of TMP_TABLE_PARAM (This caused core dump bug on Solaris)
Fixed problem with printing sub selects to debug log
Docs/mysqld_error.txt:
Updated error messages
Makefile.am:
Added missing SSL library (Should be in source distribution)
configure.in:
Added missing SSL library
include/sql_common.h:
Move duplicated prototypes
innobase/os/os0file.c:
Added comment for line that could be removed
innobase/srv/srv0srv.c:
Added comment for line that could be removed
innobase/srv/srv0start.c:
Added comment for line that could be removed
innobase/trx/trx0sys.c:
Added cast to remove compiler warning
isam/isamchk.c:
Fixed compiler warning
libmysql/conf_to_src.c:
Include files in proper order
myisam/mi_check.c:
Removed else part that caused compiler warning
myisam/mi_delete.c:
Added cast
myisam/mi_page.c:
Added cast
myisam/mi_preload.c:
Added cast
myisam/mi_write.c:
Added cast
myisam/myisampack.c:
changed 'byte' to 'current_byte' to avoid compiler warnings
mysql-test/mysql-test-run.sh:
Removed start-from as test '<' is not portable and this can easily be done from command line
mysys/hash.c:
Added cast
mysys/mf_wcomp.c:
Removed not reached line
mysys/my_append.c:
Fixed include file order to get this more portable
mysys/my_copy.c:
Fixed include file order to get this more portable
mysys/my_redel.c:
Fixed include file order to get this more portable
sql-common/client.c:
More DBUG_PRINT
sql-common/pack.c:
Added casts becasue Fortre compiler apparently compares (ulonglong) < (longlong) as signed
sql/ha_heap.cc:
Changed variable names to not cause hidden variables
sql/ha_innodb.cc:
Changed variable names to not cause hidden variables
sql/item.cc:
Changed variable names to not cause hidden variables
sql/item.h:
Changed variable names to not cause hidden variables
sql/item_cmpfunc.h:
Changed variable names to not cause hidden variables
sql/item_func.cc:
Changed variable names to not cause hidden variables
sql/item_subselect.cc:
Changed variable names to not cause hidden variables
sql/item_subselect.h:
Changed variable names to not cause hidden variables
sql/item_sum.cc:
Changed variable names to not cause hidden variables
sql/item_timefunc.cc:
Changed variable names to not cause hidden variables
sql/log.cc:
Changed variable names to not cause hidden variables
sql/protocol.cc:
Changed variable names to not cause hidden variables
sql/protocol.h:
Changed variable names to not cause hidden variables
Remove function not declared in protocol.cc
sql/protocol_cursor.cc:
Changed variable names to not cause hidden variables
sql/set_var.cc:
Added a lot of 'version_xxx' strings
Changed 'bdb_version' to 'version_bdb'
sql/sql_class.cc:
Changed variable names to not cause hidden variables
Add TMP_TABLE_PARAM::init() to allow one to initialize structure several times
sql/sql_class.h:
Prevent copying of TMP_TABLE_PARAM (This caused core dump bug on Solaris)
sql/sql_derived.cc:
Avoid copying TMP_TABLE_PARAM (Use class version instead)
sql/sql_error.cc:
More DBUG
sql/sql_help.cc:
Fixed compiler warning
sql/sql_lex.cc:
Changed variable names to not cause hidden variables
sql/sql_list.h:
Changed variable names to not cause hidden variables
sql/sql_parse.cc:
Changed variable names to not cause hidden variables
sql/sql_select.cc:
Changed variable names to not cause hidden variables
Ensure that you don't send NULL to printf() for %s
Fixed problem with printing sub selects to debug log
sql/sql_select.h:
Changed variable names to not cause hidden variables
sql/sql_union.cc:
Changed variable names to not cause hidden variables
Don't use local copy of TMP_TABLE_PARAM (Caused core dump on Solaris)
sql/sql_update.cc:
Indentation cleanup
sql/sql_yacc.yy:
Remove warning
strings/conf_to_src.c:
Fixed include file order
sql/item_create.cc:
specify cause of uncachability
sql/item_func.cc:
specify cause of uncachability
sql/item_subselect.cc:
fixed setting RAND_TABLE_BIT
specify cause of uncachability
sql/item_subselect.h:
used one field for all uncachability causes
sql/mysql_priv.h:
causes of uncachability
sql/sql_lex.cc:
specify cause of uncachability
sql/sql_lex.h:
used one field for all uncachability causes
sql/sql_select.cc:
used one field for all uncachability causes
sql/sql_union.cc:
used one field for all uncachability causes
sql/sql_yacc.yy:
specify cause of uncachability
mysql-test/r/func_str.result:
new results
sql/item.cc:
charset changed
printing string moved to String
sql/item_cmpfunc.cc:
new comparation class builder to avoid long switch
new print_agrs used
sql/item_cmpfunc.h:
new comparation class builder to avoid long switch
sql/item_func.cc:
new print_agrs
sql/item_func.h:
new print_agrs
sql/item_strfunc.cc:
new print_agrs
sql/item_subselect.cc:
new comparation class builder to avoid long switch
sql/item_subselect.h:
new comparation class builder to avoid long switch
sql/item_timefunc.cc:
charset changed
sql/mysql_priv.h:
new comparation class builder to avoid long switch
sql/mysqld.cc:
new comparation class builder to avoid long switch
sql/sql_parse.cc:
new comparation class builder to avoid long switch
sql/sql_string.cc:
string printing moved to String class
sql/sql_string.h:
string printing moved to String class
sql/sql_yacc.yy:
birect class creation where it is possible