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
(BUG##9398, BUG#8703)
fixed wrong join view detection in multi-delete which lead to server crash
mysql-test/r/lowercase_view.result:
added new tests of updation and selection from the same table
mysql-test/r/view.result:
added new tests of updation and selection from the same table
added test of multidelete command over join view which lead to server crash
test suite from bugs #9398 and #8703
mysql-test/t/lowercase_view.test:
added new tests of updation and selection from the same table
mysql-test/t/view.test:
added new tests of updation and selection from the same table
added test of multidelete command over join view which lead to server crash
test suite from bugs #9398 and #8703
sql/sql_base.cc:
changed procedure of finding tables
sql/sql_class.cc:
added derived table procession detection
sql/sql_class.h:
added derived table procession detection
sql/sql_delete.cc:
fixed detection of selection from table which update for multidelete
sql/sql_derived.cc:
added derived table procession detection
sql/sql_lex.cc:
added detection os SELECTs processed inside derived tables
removed old mechanism of multidelete/multiupdate table duplication detection (which can't work with views)
sql/sql_lex.h:
added detection os SELECTs processed inside derived tables
removed old mechanism of multidelete/multiupdate table duplication detection (which can't work with views)
sql/sql_parse.cc:
removed wrong test of join view (for multidelete in can be not only first table)
sql/sql_prepare.cc:
added detection os SELECTs processed inside derived tables (reset it for reusing in PS/SP)
sql/sql_select.cc:
added detection os SELECTs processed inside derived tables
sql/sql_update.cc:
fixed detection of selection from table which update for multiupdate
mysql-test/r/func_group.result:
new result
mysql-test/r/metadata.result:
new result
test of metadata of variables, unions and derived tables
mysql-test/r/union.result:
new results
test of union of enum
mysql-test/t/metadata.test:
test of metadata of variables, unions and derived tables
mysql-test/t/union.test:
test of union of enum
sql/field.cc:
Field type merging rules added
Fixed table name/alias returting for field made from temporary tables
sql/field.h:
removed unned field type reporting
sql/item.cc:
fixed bug in NEW_DATE type field creartion
replaced mechanism of merging types of UNION
sql/item.h:
replaced mechanism of merging types of UNION
sql/item_func.h:
new item type to make correct field type detection possible
sql/item_subselect.cc:
added table name parameter to prepare() to show right table alias for derived tables
sql/sql_derived.cc:
added table name parameter to prepare() to show right table alias for derived tables
sql/sql_lex.h:
added table name parameter to prepare() to show right table alias for derived tables
sql/sql_parse.cc:
made function for enum/set pack length calculation
sql/sql_prepare.cc:
added table name parameter to prepare() to show right table alias for derived tables
sql/sql_select.cc:
new temporary table field creation by Item_type_holder
fixed table alias for temporary table
sql/sql_union.cc:
added table name parameter to prepare() to show right table alias for derived tables
BitKeeper/etc/logging_ok:
auto-union
client/mysql.cc:
Auto merged
extra/my_print_defaults.c:
Auto merged
include/m_string.h:
Auto merged
mysql-test/mysql-test-run.sh:
Auto merged
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/r/user_var.result:
Auto merged
mysql-test/t/user_var.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
sql/item_func.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
strings/ctype-simple.c:
Auto merged
strings/ctype-ucs2.c:
Auto merged
strings/ctype-utf8.c:
Auto merged
libmysql/libmysql.c:
ul
mysql-test/r/ps_1general.result:
Merge
mysql-test/t/derived.test:
Merge
mysql-test/t/ps_1general.test:
Merge
mysql-test/t/type_float.test:
Merge
sql/field.cc:
ul
sql/item.cc:
ul
sql/item.h:
ul
sql/item_func.h:
ul
sql/item_strfunc.cc:
ul
sql/item_sum.cc:
ul
sql/item_sum.h:
ul
sql/procedure.h:
ul
sql/sql_derived.cc:
Trivial merge
sql/sql_parse.cc:
ul
sql/sql_update.cc:
Trivial merge
strings/strtod.c:
Use updated code from 4.1
This is bascily same code as we had before or 5.0, execpt that we now have higher accuracy for floating points value that are integers (like 123.45E+02)
mysql-test/r/derived.result:
test of union subquery in the FROM clause with complex distinct/all
mysql-test/t/derived.test:
test of union subquery in the FROM clause with complex distinct/all
sql/sql_derived.cc:
removed wrong distinct UNION detection
Collect all tables and SPs refered by a statement, and open all tables
with an implicit LOCK TABLES. Do find things refered by triggers and views,
we open them first (and then repeat this until nothing new is found), before
doing the actual lock tables.
mysql-test/r/information_schema.result:
Updated result for WL#2130.
mysql-test/r/lock.result:
Updated result for WL#2130.
mysql-test/r/sp-error.result:
Updated result for WL#2130.
mysql-test/r/sp.result:
Updated result for WL#2130.
mysql-test/r/view.result:
Updated result for WL#2130.
mysql-test/t/information_schema.test:
Disabled one test case due to a bug involving LOCK TABLES,
which shows up with WL#2130.
mysql-test/t/lock.test:
New error message with WL#2130. This change is under debate and might change
in the future, but will do for now.
mysql-test/t/sp-error.test:
Updated for WL#2130. Some tests are voided when table access does work from
functions.
mysql-test/t/sp.test:
Updated for WL#2130.
mysql-test/t/view.test:
Updated for WL#2130.
sql/item_func.cc:
We now have to set net.no_send_ok for functions too, with WL#2130.
sql/share/errmsg.txt:
Reused an error code since the old use was voided by WL#2130, but a new
one was needed instead (similar, but more specific restriction).
sql/sp.cc:
Fixed error handling and collection of used tables for WL#2130.
sql/sp.h:
Fixed error handling and collection of used tables for WL#2130.
sql/sp_head.cc:
Added support functions for collecting and merging hash tables and lists
of used tables from SPs and substatements, for WL#2130.
sql/sp_head.h:
Added support functions for collecting and merging hash tables and lists
of used tables from SPs and substatements, for WL#2130.
sql/sql_base.cc:
Changed the way table->query_id is tested and set during with locked tables
in effect. This makes some SP test cases work with WL#2130, but has a side
effect on some error cases with explicit LOCK TABLES. It's still debated if
this is the correct way, so it might change.
sql/sql_class.h:
Added flags for circumventing some interference between WL#2130 and mysql_make_view().
sql/sql_derived.cc:
Added some missing initializations. (Potential bugs.)
sql/sql_lex.cc:
Clear the new hash tables for WL#2130.
sql/sql_lex.h:
Added hash tables for procedures and tables too (as for functions), for WL#2130.
sql/sql_parse.cc:
WL#2130: Make table accesses from stored functions work by adding an implicit
LOCK TABLES around (most) executed statements. To do this, we have to go through
a loop where we collect all SPs and tables in mysql_execute_statement.
sql/sql_prepare.cc:
Cache both functions and procedures for WL#2130.
sql/sql_show.cc:
Added some missing initializations. (Potential bugs.)
sql/sql_view.cc:
Shortcut mysql_make_view() if thd->shortcut_make_view is true during
the pre-open phase for collecting tables in WL#2130. Otherwise, the
similar mechanism here causes interference.
sql/sql_yacc.yy:
For WL#2130, added caching of procedures and disallowed LOCK/UNLOCK TABLES in SPs.
Split TABLE to TABLE and TABLE_SHARE (TABLE_SHARE is still allocated as part of table, will be fixed soon)
Created Field::make_field() and made Field_num::make_field() to call this
Added 'TABLE_SHARE->db' that points to database name; Changed all usage of table_cache_key as database name to use this instead
Changed field->table_name to point to pointer to alias. This allows us to change alias for a table by just updating one pointer.
Renamed TABLE_SHARE->real_name to table_name
Renamed TABLE->table_name to alias
Renamed TABLE_LIST->real_name to table_name
include/myisam.h:
Added const before names
mysql-test/r/group_min_max.result:
Make results repeatable
mysql-test/t/group_min_max.test:
Make results repeatable
sql/field.cc:
Created Field::make_field() and made Field_num::make_field() to call this
Use TABLE_SHARE
Use sql_strmake() instead of sql_memdup() to simplify code
sql/field.h:
Changed table_name to be pointer to table_name. This allows us to change alias for all fields by just changing one pointer.
Use TABLE_SHARE
sql/field_conv.cc:
Use TABLE_SHARE
sql/filesort.cc:
Use TABLE_SHARE
sql/ha_berkeley.cc:
Use TABLE_SHARE
sql/ha_heap.cc:
Use TABLE_SHARE
sql/ha_innodb.cc:
Use TABLE_SHARE
sql/ha_myisam.cc:
Use TABLE_SHARE
sql/ha_myisammrg.cc:
Use TABLE_SHARE
Change some pointer handling to use const char*
sql/ha_ndbcluster.cc:
Use TABLE_SHARE
sql/handler.cc:
Use TABLE_SHARE
sql/item.cc:
Use TABLE_SHARE
sql/item_func.cc:
Use TABLE_SHARE
sql/item_subselect.cc:
Use TABLE_SHARE
sql/item_sum.cc:
Use TABLE_SHARE
sql/key.cc:
Use TABLE_SHARE
sql/lock.cc:
Use TABLE_SHARE
sql/log_event.cc:
real_name -> table_name
sql/mysql_priv.h:
Use TABLE_SHARE
sql/opt_range.cc:
Use TABLE_SHARE
sql/opt_sum.cc:
Use TABLE_SHARE
sql/records.cc:
Use TABLE_SHARE
sql/repl_failsafe.cc:
real_name -> table_name
sql/slave.cc:
Use TABLE_SHARE
sql/sp.cc:
Use TABLE_SHARE
sql/sp_head.cc:
real_name -> table_name
sql/sql_acl.cc:
Use TABLE_SHARE
removed unnecessary assert
fixed indentation
changed some char * -> const char*
sql/sql_acl.h:
changed some char* -> const char*
sql/sql_base.cc:
Use TABLE_SHARE
sql/sql_cache.cc:
Use TABLE_SHARE
sql/sql_class.cc:
Use TABLE_SHARE
sql/sql_db.cc:
real_name -> table_name
sql/sql_delete.cc:
Use TABLE_SHARE
sql/sql_derived.cc:
Use TABLE_SHARE
sql/sql_handler.cc:
Use TABLE_SHARE
sql/sql_help.cc:
Use TABLE_SHARE
sql/sql_insert.cc:
Use TABLE_SHARE
sql/sql_load.cc:
Use TABLE_SHARE
sql/sql_parse.cc:
Use TABLE_SHARE
sql/sql_rename.cc:
real_name -> table_name
sql/sql_select.cc:
Use TABLE_SHARE
table->blob_fields now points to field offsets, not fields
tmp_table->table_name now points to alias name
sql/sql_show.cc:
Use TABLE_SHARE
sql/sql_table.cc:
Use TABLE_SHARE
sql/sql_test.cc:
Use TABLE_SHARE
sql/sql_trigger.cc:
Use TABLE_SHARE
sql/sql_udf.cc:
Use TABLE_SHARE
sql/sql_union.cc:
real_name -> table_name
sql/sql_update.cc:
Use TABLE_SHARE
sql/sql_view.cc:
Use TABLE_SHARE
sql/table.cc:
Split TABLE to TABLE and TABLE_SHARE
Changed blob_field to be field offsets instead of pointer to fields
Only initialize table->s->default_values with default record (not all table->record[#])
Some indentation changes
sql/table.h:
Split TABLE to TABLE and TABLE_SHARE
sql/tztime.cc:
real_name -> table_name
sql/unireg.cc:
Use TABLE_SHARE
sql/unireg.h:
Use TABLE_SHARE
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
We should not call free_tmp_table() for derived table in
mysql_derived_filling(), since by this moment this table is already
registered in THD::derived_tables list and thus free_tmp_table() will
be called for it automatically in close_thread_tables().
sql/sql_derived.cc:
We should not call free_tmp_table() for derived table in
mysql_derived_filling(), since by this moment this table is already
registered in THD::derived_tables list and thus free_tmp_table() will
be called for it automatically in close_thread_tables().
tables requires privileges for them if some table or column level grants
present" (with after-review fixes).
We should set SELECT_ACL for implicitly opened tables in
my_tz_check_n_skip_implicit_tables() to be able to bypass privilege
checking in check_grant(). Also we should exclude those tables from
privilege checking in multi-update.
mysql-test/r/timezone2.result:
Extended test for bug #6116 "SET time_zone := ... requires access to
mysql.time_zone tables"
Added test for bug #6765 "Implicit access to time zone description
tables requires privileges for them if some table or column level grants
present"
mysql-test/t/timezone2.test:
Extended test for bug #6116 "SET time_zone := ... requires access to
mysql.time_zone tables"
Added test for bug #6765 "Implicit access to time zone description
tables requires privileges for them if some table or column level grants
present"
sql/item_geofunc.cc:
sql_acl.h is now included via mysql_priv.h
sql/item_strfunc.cc:
sql_acl.h is now included via mysql_priv.h
sql/log.cc:
sql_acl.h is now included via mysql_priv.h
sql/mysql_priv.h:
Now we have to include sql_acl.h before tztime.h, since
my_tz_check_n_skip_implicit_tables() defined there requires
SELECT_ACL constant defined in sql_acl.h.
sql/mysqld.cc:
sql_acl.h is now included via mysql_priv.h
sql/repl_failsafe.cc:
sql_acl.h is now included via mysql_priv.h
sql/set_var.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_acl.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_base.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_cache.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_class.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_db.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_derived.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_do.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_insert.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_parse.cc:
check_one_table_access(): Tweaked comments.
multi_update_precheck(): Added skipping of implicitly opened tables
during privilege checking.
sql/sql_prepare.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_repl.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_show.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_update.cc:
sql_acl.h is now included via mysql_priv.h
sql/sql_yacc.yy:
sql_acl.h is now included via mysql_priv.h
sql/tztime.h:
my_tz_check_n_skip_implicit_tables():
We should set SELECT_ACL for implictly opened tables to be able to
bypass privilege checking in check_grant().
Fixed compiler warnings
Fix core dump when sending SIGHUP to mysqld
mysql-test/r/drop_temp_table.result:
After merge fixes
mysql-test/r/grant.result:
After merge fixes
mysql-test/r/group_min_max.result:
After merge fixes
mysql-test/r/innodb.result:
After merge fixes
mysql-test/r/insert_select.result:
After merge fixes
mysql-test/r/rpl_charset.result:
After merge fixes
mysql-test/r/rpl_create_database.result:
After merge fixes
mysql-test/r/rpl_loaddata_rule_m.result:
After merge fixes
mysql-test/t/rpl_charset.test:
After merge fixes
mysql-test/t/rpl_create_database.test:
After merge fixes
sql-common/client.c:
After merge fixes
sql/item.cc:
After merge fixes
sql/mysqld.cc:
Fix core dump when sending SIGHUP to mysqld
sql/sql_acl.cc:
Better comment
sql/sql_derived.cc:
Fixed comment
Added missing DBUG_RETURN
sql/sql_insert.cc:
Fixed compiler warnings
After merge fixes
sql/sql_lex.cc:
After merge fixes
Removed compiler warnings
sql/sql_parse.cc:
After merge fixes
sql/sql_select.cc:
More debugging
sql/sql_table.cc:
Added missing DBUG_VOID_RETURN
sql/sql_update.cc:
Fixed compiler warning
sql/sql_view.cc:
Added missing DBUG_RETURN
Fixed compiler warnings
Added flag to signal that the view is a derived table
- open and create derived tables
- detect which tables should be locked for write
- lock and fill derived tables
some unitialized variables fixed
mysql-test/r/lock_multi.result:
correct results returned
mysql-test/r/multi_update.result:
correct results returned
mysql-test/r/view.result:
correct results returned
mysql-test/t/multi_update.test:
correct results returned
mysql-test/t/view.test:
correct results returned
sql/mysql_priv.h:
derived tables processing splited on table creation and table filling
sql/sql_base.cc:
derived tables processing splited on table creation and table filling
sql/sql_class.h:
function to detect when we need fill derived tables
sql/sql_derived.cc:
derived tables processing splited on table creation and table filling
sql/sql_lex.cc:
fixed uninitialized value
sql/sql_load.cc:
fixed uninitialized value
sql/sql_parse.cc:
initialization muved (will be done for all queries)
sql/sql_prepare.cc:
preparation of multiupdate changed a bit because new locking procedure
sql/sql_update.cc:
new lock for multiupdate:
- open and create derived tables
- detect which tables should be locked for write
- lock and fill derived tables
sql/table.h:
place to store select_result between creation and filling tables
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
sql/field.cc:
fixed compatibility fields type detection
sql/item.cc:
fixed compatibility fields detection with using standard method for all fields, also some bugs are fixed
sql/sql_derived.cc:
some cleanup
single row subquery always can return NULL (no rows found) (BUG#5590)
mysql-test/r/subselect.result:
maybe_null flag returning by subquwery for temporary table creation
mysql-test/t/subselect.test:
maybe_null flag returning by subquwery for temporary table creation
sql/item.cc:
storing maybe_null in type holder
sql/item_subselect.cc:
single row subquery always can return NULL (no rows found)
sql/sql_derived.cc:
fixed error handling if creating derived table failed
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.
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
BitKeeper/etc/ignore:
auto-union
BitKeeper/etc/logging_ok:
auto-union
VC++Files/libmysqld/libmysqld.dsp:
Auto merged
VC++Files/sql/mysqld.dsp:
Auto merged
client/mysql.cc:
Auto merged
client/mysqlbinlog.cc:
Auto merged
client/mysqltest.c:
Auto merged
include/config-netware.h:
Auto merged
include/my_base.h:
Auto merged
include/my_global.h:
Auto merged
include/my_sys.h:
Auto merged
include/mysql_com.h:
Auto merged
include/sql_state.h:
Auto merged
innobase/include/row0mysql.h:
Auto merged
innobase/row/row0sel.c:
Auto merged
libmysql/libmysql.c:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
myisam/mi_check.c:
Auto merged
mysql-test/r/bdb.result:
Auto merged
mysql-test/r/connect.result:
Auto merged
mysql-test/r/ctype_ucs.result:
Auto merged
mysql-test/r/derived.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/func_like.result:
Auto merged
mysql-test/r/func_sapdb.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/insert.result:
Auto merged
mysql-test/r/insert_select.result:
Auto merged
mysql-test/r/join_outer.result:
Auto merged
mysql-test/r/key.result:
Auto merged
mysql-test/r/multi_update.result:
Auto merged
mysql-test/r/mysqldump.result:
Auto merged
mysql-test/r/null.result:
Auto merged
mysql-test/r/null_key.result:
Auto merged
mysql-test/r/query_cache.result:
Auto merged
mysql-test/r/rpl_rotate_logs.result:
Auto merged
mysql-test/r/rpl_server_id1.result:
Auto merged
mysql-test/r/rpl_until.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/r/show_check.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/system_mysql_db.result:
Auto merged
mysql-test/r/union.result:
Auto merged
mysql-test/r/variables.result:
Auto merged
mysql-test/t/multi_update.test:
Auto merged
mysql-test/t/mysqlbinlog.test:
Auto merged
mysql-test/t/rpl000015.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
mysql-test/t/variables.test:
Auto merged
mysys/mf_iocache2.c:
Auto merged
mysys/my_bitmap.c:
Auto merged
mysys/my_pthread.c:
Auto merged
netware/Makefile.am:
Auto merged
netware/my_manage.c:
Auto merged
netware/mysql_test_run.c:
Auto merged
netware/BUILD/compile-linux-tools:
Auto merged
netware/BUILD/compile-netware-standard:
Auto merged
netware/BUILD/mwenv:
Auto merged
netware/BUILD/nwbootstrap:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
scripts/mysql_install_db.sh:
Auto merged
sql/ha_berkeley.cc:
Auto merged
sql/ha_berkeley.h:
Auto merged
sql/ha_heap.h:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_create.cc:
Auto merged
sql/item_create.h:
Auto merged
sql/item_func.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_sum.h:
Auto merged
sql/item_timefunc.h:
Auto merged
sql/lex.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/net_serv.cc:
Auto merged
sql/protocol.cc:
Auto merged
sql/protocol.h:
Auto merged
sql/records.cc:
Auto merged
sql/repl_failsafe.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_acl.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_string.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/structs.h:
Auto merged
sql-common/client.c:
Auto merged
configure.in:
Merge with 4.1
include/mysqld_error.h:
New errors from 4.1
libmysqld/Makefile.am:
Merge with 4.1
myisam/myisamchk.c:
Merge with 4.1
myisam/myisamdef.h:
Merge with 4.1
myisam/sort.c:
Merge with 4.1
mysql-test/r/mysqlbinlog.result:
Merge with 4.1
mysql-test/r/range.result:
Merge with 4.1
mysql-test/r/rpl_flush_log_loop.result:
Merge with 4.1
mysql-test/r/rpl_replicate_do.result:
Merge with 4.1
mysql-test/r/rpl_temporary.result:
Merge with 4.1
mysql-test/r/rpl_user_variables.result:
Merge with 4.1
mysql-test/t/func_time.test:
Merge with 4.1
scripts/mysql_create_system_tables.sh:
Merge with 4.1
scripts/mysql_fix_privilege_tables.sql:
Merge with 4.1
sql/Makefile.am:
Merge with 4.1
sql/filesort.cc:
Merge with 4.1
sql/ha_innodb.cc:
Merge with 4.1
sql/ha_innodb.h:
Merge with 4.1
sql/ha_myisam.cc:
Merge with 4.1
sql/handler.cc:
Merge with 4.1
sql/handler.h:
Merge with 4.1
sql/item_func.cc:
Merge with 4.1
sql/item_timefunc.cc:
Merge with 4.1
sql/log.cc:
Merge with 4.1
sql/log_event.cc:
Merge with 4.1
sql/mysqld.cc:
Merge with 4.1
sql/opt_range.cc:
Merge with 4.1
sql/opt_range.h:
Merge with 4.1
sql/share/czech/errmsg.txt:
Merge with 4.1
Updated english error messages
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/slave.cc:
Merge with 4.1
sql/sql_class.cc:
Merge with 4.1
sql/sql_class.h:
Merge with 4.1
sql/sql_db.cc:
Merge with 4.1
sql/sql_insert.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 tree
Changed // comments to /* */
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_yacc.yy:
Merge with 4.1
sql/table.h:
Merge with 4.1
tests/client_test.c:
Merge with 4.1
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
Fixed bugs in group_concat with ORDER BY and DISTINCT (Bugs #2695, #3381 and #3319)
Fixed crash when doing rollback in slave and the io thread catched up with the sql thread
Set locked_in_memory properly
include/mysql_com.h:
Fixed compiler warning
libmysqld/emb_qcache.cc:
Removed not used variable
libmysqld/lib_sql.cc:
Removed not used variable
myisam/mi_locking.c:
Added comment
myisam/mi_rnext.c:
Fixed bug in concurrent insert
myisam/mi_rprev.c:
Simple optimization
mysql-test/r/func_gconcat.result:
New tests
mysql-test/t/func_gconcat.test:
New tests
mysql-test/t/func_group.test:
Cleanup
sql-common/client.c:
Removed compiler warning
sql/derror.cc:
Better comments
sql/field.cc:
Removed not used function/variable
sql/field.h:
Removed not needed variable
sql/ha_innodb.cc:
Removed not used function
sql/item.cc:
Fixed compiler warning
sql/item_cmpfunc.cc:
Fixed compiler warning
sql/item_func.cc:
Fixed compiler warning
sql/item_geofunc.cc:
Fixed compiler warning
sql/item_sum.cc:
Fixed bugs in group_concat and added more comments
(Bugs #2695, #3381 and #3319)
- field->abs_offset was not needed
- Wrong assumption of field order in temporary table
- Some not used variables removed
- Added ORDER BY fields after argument fields so that code in sql_select.cc can move all fields to point to temporary tables, if needed.
- Optimized loops
sql/item_sum.h:
Bug fixing and cleanup of group_concat()
sql/log.cc:
Removed wrong comment
sql/log_event.cc:
Removed compiler warning
sql/mysqld.cc:
Set locked_in_memory properly
sql/protocol.cc:
Removed compiler warning
sql/set_var.cc:
Code cleanup
sql/slave.cc:
Fixed crash when doing rollback in slave and the io thread catched up with the sql thread
sql/sql_cache.cc:
Removed compiler warnings
sql/sql_derived.cc:
Removed not used variable
sql/sql_insert.cc:
Removed compiler warnings
sql/sql_lex.cc:
Removed not used lable
sql/sql_lex.h:
Removed compiler warnings
sql/sql_parse.cc:
Removed compiler warnings
sql/sql_prepare.cc:
Removed compiler warnings
sql/sql_select.cc:
Removed not used variables
Added function comments
sql/sql_show.cc:
Removed compiler warnings
sql/sql_yacc.yy:
Fix for ORDER BY handling in GROUP_CONCAT()
sql/item.cc:
layout fixed
fixed bug in prepared statements with subqueries and outer references
sql/item.h:
neg_transformer get thd argument to call fix_fields
sql/item_cmpfunc.cc:
DBUG_ASSERT(fixed == 0) added to fix_fields()
fixed Item_in_optimizer fixed flag
neg_arguments(), neg_transformer() call fix_field() on created items to avoid bouble fix field or non-called fixfields()
sql/item_cmpfunc.h:
neg_transformer get thd argument to call fix_fields
fixed forgoten cleanup() call of parent class
sql/item_func.cc:
DBUG_ASSERT(fixed == 0) and fixed flag check added to fix_fields()
sql/item_func.h:
DBUG_ASSERT(fixed == 0) added to fix_fields()
fixed forgoten cleanup() call of parent class
sql/item_row.cc:
DBUG_ASSERT(fixed == 0) added to fix_fields()
added forgoten 'fixed' flag set
sql/item_subselect.cc:
DBUG_ASSERT(fixed == 0) added to fix_fields()
fixed subquery transformation
sql/sql_base.cc:
check of fixed flag added
sql/sql_derived.cc:
fixed cleunup union in derived table during EXPLAIN command processing
sql/sql_select.cc:
thd argument add to function to allow call fix_fields() of new created items
fixed EXPLAIN double preparation
check of fixed flag added
eliminate_not_funcs fixed for corrcet fix_fields call of new created items
sql/sql_select.h:
thd argument add to function to allow call fix_fields() of new created items
sql/sql_union.cc:
union processing fixed
tests/client_test.c:
layout fixed
new test of outer references fron subqueries
sql/sql_derived.cc:
memory leack fixed
sql/sql_lex.cc:
flag to avoid double cleaning
sql/sql_lex.h:
flag to avoid double cleaning
sql/sql_select.cc:
right way to cleanup JOIN_TAB
sql/sql_select.h:
right way to cleanup JOIN_TAB
sql/sql_union.cc:
flag to avoid double cleaning
mysql-test/r/derived.result:
test of error handling in derived tables with UPDATE & DELETE
mysql-test/t/derived.test:
test of error handling in derived tables with UPDATE & DELETE
sql/mysql_priv.h:
opened tables counter added to avoid loop of tables calculating in lock_tables
sql/sql_acl.cc:
opened tables counter added to avoid loop of tables calculating in lock_tables, here it is just for compatibility
sql/sql_base.cc:
removed unneeded assignment
opened tables counter added to avoid loop of tables calculating in lock_tables
commentary fixed
sql/sql_derived.cc:
mysql_derived made static
variable res moved in place where it used
priveleges written in correct place
sql/sql_handler.cc:
opened tables counter added to avoid loop of tables calculating in lock_tables
sql/sql_parse.cc:
mistyping in commentary fixed
(BUG#2120 sfter merge)
mysql-test/r/derived.result:
correct results of derived tble EXPLAIN
test of "Using Index" with derived tables
mysql-test/t/derived.test:
test of "Using Index" with derived tables
sql/mysql_priv.h:
way to force derived table save JOIN after execution
sql/sql_derived.cc:
way to force derived table save JOIN after execution
sql/sql_lex.h:
way to force derived table save JOIN after execution
sql/sql_select.cc:
make JOIN::prepare, JOIN::optimize only once for EXPLAIN of derived table
fixed BUG#2120 and other problem with EXPLAINing derived tables
mysql-test/r/derived.result:
correct tables names & Co in derived tables
test case for BUG#2120
mysql-test/t/derived.test:
test case for BUG#2120
sql/mysql_priv.h:
derived tables processing moved after open/locking all tables (in open_and_lock_tables)
sql/repl_failsafe.cc:
correct initialization of TABLE_LIST
sql/sql_acl.cc:
used simple table opening without derived table processing to avoid unneeded initialization of SELECT_LEX
sql/sql_base.cc:
derived tables processing moved after open/locking all tables (in open_and_lock_tables)
sql/sql_delete.cc:
all tables processing is done during opening
sql/sql_derived.cc:
derived tables processing moved after open/locking all tables (in open_and_lock_tables) to sutisfy "all query tables locking" at the moment
sql/sql_insert.cc:
all tables processing is done during opening
correct initialization of TABLE_LIST
sql/sql_lex.cc:
now table list will be created for whole query
layout fix
correct check of updated table in subqueries
sql/sql_lex.h:
now table list will be created for whole query
correct check of updated table in subqueries
sql/sql_olap.cc:
THIS FUNCTION IS USED NOWHERE
it will be good to remove it at all (handle_olaps)
sql/sql_parse.cc:
derived tables processing moved after open/locking all tables (in open_and_lock_tables)
sql/sql_prepare.cc:
new creating list parameters
all tables processing is done during opening
sql/sql_select.cc:
all tables processing is done during opening
sql/sql_select.h:
now it used only within file where is defined
sql/sql_udf.cc:
used simple table opening without derived table processing to avoid unneeded initialization of SELECT_LEX
sql/sql_update.cc:
all tables processing is done during opening
moved LIMIT initialialization, because it is need only for single select derived table
mysql-test/r/derived.result:
test suite for BUG#2349
mysql-test/t/derived.test:
test suite for BUG#2349
sql/sql_derived.cc:
assigned correct lex->current_select (BUG#2349)
moved LIMIT initialialization, because it is need only for single select
mysql-test/r/subselect_innodb.result:
bug 2048 test
mysql-test/t/subselect_innodb.test:
bug 2048 test
sql/item_subselect.cc:
do not unlock tables for subqueries
sql/sql_derived.cc:
derived table tables can be unlocked
sql/sql_lex.h:
new interface to pass additional options
sql/sql_union.cc:
new interface to pass additional options
do not unlock tables for UNION
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
mysql-test/r/union.result:
new tests, more correct results for old one
mysql-test/t/union.test:
new tests, more correct results for old one
sql/field.cc:
new way to make field types csting
sql/field.h:
new way to make field types csting
sql/item.cc:
new way to make field types csting
sql/sql_derived.cc:
fixed typo
sql/sql_lex.h:
comment added
mysql-test/r/union.result:
new results with max union field length detecting
type conversion tests
mysql-test/t/union.test:
type conversion tests
sql/field.h:
field converion support
sql/item.cc:
fixed printing field of internal temporary table of SELECT (reference from HAVING clause)
layout fix
new item for storing field type
sql/item.h:
new item for storing field type
sql/item_subselect.cc:
new subquery item length/dec detecting
sql/mysql_priv.h:
we do not need pre-inited tables and fields
sql/sql_base.cc:
we do not need double fix_fielding
sql/sql_class.h:
we do not need double fix_fielding
sql/sql_derived.cc:
preparing moved before temporary table creation
sql/sql_lex.h:
we do not need pre-inited tables and fields
new lists to store fields types and fields of temporary table
sql/sql_parse.cc:
we do not need pre-inited tables and fields
sql/sql_prepare.cc:
we do not need pre-inited tables and fields
sql/sql_select.cc:
we do not need pre-inited tables and fields
support mysql_select call from derived tables after it preparing (in derived table routing)
support of crreating temporary table fields from Item_type_holder
sql/sql_select.h:
we do not need pre-inited tables and fields
sql/sql_union.cc:
we do not need pre-inited tables and fields
check of columns number in union moved to prepare()
prepering of SELECTS moved before temporary table creation, fixed union columns type/length detecting
sql/sql_update.cc:
we do not need pre-inited tables and fields
mysql-test/t/subselect.test:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_sum.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/item_timefunc.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/subselect.result:
SCCS merged
mysql-test/r/subselect.result:
fixed drop table statement
test for BUG#1536
mysql-test/t/subselect.test:
fixed drop table statement
test for BUG#1536
sql/sql_derived.cc:
all tree of derived table should be deleted
sql/sql_lex.cc:
delete subtree method
sql/sql_lex.h:
delete subtree method
new EXPLAIN parameter to show real query as it was interpreted
(SCRUM) (WL#1274)
mysql-test/r/subselect.result:
new explains
mysql-test/r/union.result:
new explains
mysql-test/t/subselect.test:
new explains
mysql-test/t/union.test:
new explains
sql/item.cc:
fixed printability of Items in SELECT list
sql/item.h:
fixed printability of Items in SELECT list
sql/item_cmpfunc.cc:
fixed print()
sql/item_cmpfunc.h:
fixed print()
sql/item_subselect.cc:
subqueries made printable
sql/item_subselect.h:
subqueries made printable
sql/mysql_priv.h:
union option made looks like options
sql/sql_derived.cc:
now this link is used
sql/sql_lex.cc:
subqueries made printable
sql/sql_lex.h:
subqueries made printable
new EXPLAIN parameter support
sql/sql_parse.cc:
new EXPLAIN parameter
sql/sql_select.cc:
debug output
new EXPLAIN parameter support
sql/sql_select.h:
new EXPLAIN parameter support
sql/sql_yacc.yy:
new EXPLAIN parameter support
SELECT printability support
mysql-test/r/union.result:
Auto merged
mysql-test/t/union.test:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
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/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/subselect.result:
SCCS merged
mysql-test/t/subselect.test:
SCCS merged
include/mysql.h:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.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_derived.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql-common/client.c:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_repl.cc:
Auto merged
sql/sql_show.cc:
Auto merged
libmysqld/lib_sql.cc:
SCCS merged
libmysqld/libmysqld.c:
SCCS merged
sql/sql_parse.cc:
SCCS merged
WL#604 Privileges in embedded library
code added to check privileges in embedded library
NO_EMBEDDED_ACCESS_CHECKS macros inserted in code so we can exclude
access-checking parts. Actually we now can exclude these parts from
standalone server as well. Do we need it?
Access checks are disabled in embedded server by default. One should
edit libmysqld/Makefile manually to get this working.
We definitely need the separate configure for embedded server
include/mysql.h:
options added so user of embedded library can set the client host
it will work as if the usual client connects from this host
libmysqld/Makefile.am:
Usually one doesn't need access checking in embedded library
we definitely should separate configure for embedded server
libmysqld/lib_sql.cc:
necessary code for getting passwords and access checks added
libmysqld/libmysqld.c:
code #ifdef-ed - we use this only when we check permissions
sql-common/client.c:
one mysql_close left now
sql/item_strfunc.cc:
#ifndef-s added
sql/log.cc:
#ifndef-s added
sql/mysql_priv.h:
#ifndef-s added
also i removed default parameters from check_access and check_table_access
definitions to set definitions working
sql/mysqld.cc:
#ifndef-s added
localhost renamed to my_localhost
sql/repl_failsafe.cc:
parameters added
sql/set_var.cc:
#ifndef-s added
sql/sql_acl.cc:
#ifndef-s added
sql/sql_acl.h:
#ifndef-s added
sql/sql_base.cc:
#ifndef-s added
sql/sql_cache.cc:
#ifndef-s added
sql/sql_class.cc:
#ifndef-s added
sql/sql_db.cc:
#ifndef-s added
sql/sql_derived.cc:
#ifndef-s added
sql/sql_insert.cc:
#ifndef-s added
sql/sql_parse.cc:
a horde of #ifndef-s added
sql/sql_prepare.cc:
#ifndef-s added
sql/sql_repl.cc:
parameters added
sql/sql_show.cc:
#ifndef-s added
sql/sql_update.cc:
#ifndef-s added
fixed bug in Item_sum
fixed bug in dependence remover
after merge fix
mysql-test/r/subselect.result:
after merge fix
mysql-test/r/union.result:
new test
mysql-test/t/subselect.test:
after merge fix
mysql-test/t/union.test:
new test
sql/item.cc:
fixed returned value
sql/item.h:
fixed flag dropper
(I was not able to find Item whicj need more to be fix_fielded twice)
sql/item_subselect.h:
fixed initialisation
sql/item_sum.cc:
fixed absence of walk method of Item_sum
sql/item_sum.h:
fixed absence of walk method of Item_sum
sql/mysql_priv.h:
setup_fields reverter
sql/sql_base.cc:
setup_fields reverter
sql/sql_derived.cc:
fixed bug of lack of fix_fields call
sql/sql_union.cc:
fixed bug of lack of fix_fields call
sql/item.cc:
As far as now transformer called after setup_wild() it is impossible to have '*' Item
sql/item.h:
As far as now transformer called after setup_wild() it is impossible to have '*' Item
sql/item_subselect.cc:
replaced Item_ref_on_list_position (which need erly ref_array initialisation)
sql/mysql_priv.h:
setup_ref_array moved to st_select_lex class
sql/sql_delete.cc:
setup_ref_array moved to st_select_lex class
sql/sql_derived.cc:
setup_ref_array moved to st_select_lex class
sql/sql_lex.cc:
removed double initialisation
select_n_having_items moved to any query initializations, because it used in setup_ref_array method
setup_ref_array moved to st_select_lex class
sql/sql_lex.h:
setup_ref_array moved to st_select_lex class
sql/sql_select.cc:
setup_ref_array moved to st_select_lex class
sql/sql_table.cc:
setup_ref_array moved to st_select_lex class
sql/sql_union.cc:
setup_ref_array moved to st_select_lex class
sql/sql_update.cc:
setup_ref_array moved to st_select_lex class
into sanja.is.com.ua:/home/bell/mysql/bk/work-simple_in-4.1
sql/item_sum.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_union.cc:
Auto merged
mysql-test/r/derived.result:
test of BUG#1031
mysql-test/t/derived.test:
test of BUG#1031
sql/item_sum.cc:
'alias' parameter added to create_tmp_table
sql/sql_derived.cc:
Derived table should be named (to pass it name to Field and then to Item_field)
sql/sql_select.cc:
'alias' parameter added to create_tmp_table
sql/sql_select.h:
'alias' parameter added to create_tmp_table
sql/sql_union.cc:
'alias' parameter added to create_tmp_table
sql/sql_update.cc:
'alias' parameter added to create_tmp_table
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/item_sum.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/table.h:
Auto merged
mysql-test/r/innodb.result:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
removerd unused loop_id
mysql-test/r/subselect.result:
test of BUG#922
mysql-test/t/subselect.test:
test of BUG#922
sql/item.cc:
removerd unused loop_id
we need count HAVING clause elements, because agregate function can be present in it
sql/item.h:
removerd unused loop_id
sql/item_subselect.cc:
new name of field
sql/sql_derived.cc:
new name of field
sql/sql_lex.cc:
new name of field
sql/sql_lex.h:
new name of field
sql/sql_select.cc:
new name of field
sql/sql_union.cc:
new name of field
mysql-test/r/innodb.result:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/table.h:
Auto merged
It looks like samll revolution in SELECT_LEX tree, but it was only natural way to solve problem with name resolution of external fields inside subselect which belongs to global order of union
also it have following advantages:
- removed mess with current_select type conversion
- type checking/converting
- a lot of virtual methods
- fake select for union execution allocated only once (it was allocated for every subselect with union executing)
changes:
fixed bug with outer fields name resolution of subqueries which belong to global ORDER BY clause
remuved select_lex() function, now thd->lex.current_select always have type SELECT_LEX
new SELECT_LEX (fake_select_lex) will be allocated in case of UNION for using in UNION processing
fake_select_lex allocated for union hold global ORDER BY & LIMIT clauses and have linkage equal to GLOBAL_OPTIONS_TYPE
new description of SELECT_LEX tree
(SCRUM)
sql/item.cc:
global parameters moved to fake_select_lex
sql/item_subselect.cc:
global parameters moved to fake_select_lex
sql/item_sum.cc:
no need type checking & converion now
sql/sql_delete.cc:
no need type checking & converion now
sql/sql_derived.cc:
global parameters moved to fake_select_lex
sql/sql_lex.cc:
not used fields/mrthods moved from st_select_lex_node to st_select_lex
global parameters moved to fake_select_lex
sql/sql_lex.h:
comments about new tree of select_lex s
not used fields/mrthods moved from st_select_lex_node to st_select_lex
global parameters moved to fake_select_lex
sql/sql_parse.cc:
global parameters moved to fake_select_lex
allocation of fake_select_lex on demand
sql/sql_select.cc:
now fake_select_lex marked as GLOBAL_OPTIONS_TYPE
sql/sql_union.cc:
global parameters moved to fake_select_lex
sql/sql_yacc.yy:
global parameters moved to fake_select_lex
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_subselect.h:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.h:
Auto merged
mysql-test/r/subselect.result:
merging (wiil be fixed after building)
sql/item_subselect.cc:
merging
sql/sql_select.cc:
merging
sql/item.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
into sanja.is.com.ua:/home/bell/mysql/bk/work-top-4.1
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
Added initialization of all important global variables
BUILD/SETUP.sh:
build with readline
client/mysqltest.c:
Added variable SERVER_VERSION
myisam/mi_key.c:
Indentation change
myisam/mi_open.c:
After merge fix
myisam/mi_range.c:
After merge fix
myisam/mi_rkey.c:
After merge fix
myisam/mi_search.c:
After merge fix
myisam/myisamdef.h:
After merge fix
mysql-test/include/not_embedded.inc:
Fix test (because of wrong utf8 test)
mysql-test/r/alter_table.result:
Updated results after merge
mysql-test/r/create.result:
Updated results after merge
mysql-test/r/ctype_recoding.result:
Updated results after merge
mysql-test/r/fulltext.result:
Updated results after merge
mysql-test/r/func_group.result:
Updated results after merge
mysql-test/r/group_by.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/null_key.result:
Updated results after merge
mysql-test/r/order_by.result:
Updated results after merge
mysql-test/r/query_cache.result:
Updated results after merge
mysql-test/r/repair.result:
Updated results after merge
mysql-test/r/rpl_flush_tables.result:
Updated results after merge
mysql-test/r/union.result:
Updated results after merge
mysql-test/r/update.result:
Updated results after merge
mysql-test/t/ansi.test:
After merge fixes
mysql-test/t/create.test:
After merge fixes
mysql-test/t/ctype_recoding.test:
After merge fixes
mysql-test/t/ctype_ujis.test:
After merge fixes
mysql-test/t/fulltext.test:
After merge fixes
mysql-test/t/innodb.test:
After merge fixes
mysql-test/t/join_outer.test:
After merge fixes
mysql-test/t/loaddata.test:
After merge fixes
mysql-test/t/order_by.test:
After merge fixes
mysql-test/t/rpl_flush_tables.test:
After merge fixes
mysql-test/t/status.test:
After merge fixes
mysql-test/t/subselect.test:
After merge fixes
sql/convert.cc:
Code cleanup
sql/field.cc:
After merge fixes
sql/filesort.cc:
Remove compiler warning
sql/item.cc:
More efficient set_name() (no mallocs)
sql/item_cmpfunc.cc:
Code Code cleanup
Item_bool_func2::fix_fields() added to get error handling right for cmp_charset
sql/item_cmpfunc.h:
New prototypes
sql/item_func.cc:
After merge fix
sql/item_strfunc.cc:
Faster check for BINARY
sql/log_event.cc:
Comment cleanup
sql/mysql_priv.h:
New prototypes and variables
sql/mysqld.cc:
Added initialization of all important global variables.
Cleanup of variable declarations
This is needed ot make the embedded version restartable
sql/opt_sum.cc:
After merge fix
sql/set_var.cc:
Code cleanup
sql/sql_acl.cc:
After merge fix
Better error message
sql/sql_db.cc:
After merge fix
sql/sql_derived.cc:
After merge fix
sql/sql_insert.cc:
Indentation cleanups
sql/sql_list.h:
Added empty() to base_ilist
sql/sql_parse.cc:
After merge fix
sql/sql_select.cc:
After merge fix
Fixed derived name handling in EXPLAIN
sql/sql_show.cc:
After merge fix
sql/sql_string.cc:
Made copy_and_convert global
sql/sql_string.h:
Made copy_and_convert global
sql/sql_update.cc:
After merge fix
sql/sql_yacc.yy:
After merge fix
sql/thr_malloc.cc:
Added sql_strmake_with_convert()
sql/unireg.h:
Added MAX_ALIAS_NAME
strings/ctype-ujis.c:
Fixed bug in converting to ujis
mysql-test/r/func_group.result:
new tests
mysql-test/t/func_group.test:
new tests
sql/item.cc:
count items in select list
sql/item_subselect.cc:
use number of item in select list for array creation
sql/item_sum.cc:
with_sum_func now is boolean
sql/sql_derived.cc:
use number of item in select list for array creation
sql/sql_lex.cc:
create_refs changed with parsing_place enum variable
sql/sql_lex.h:
added items in select list counter
create_refs changed with parsing_place enum variable
with_sum_func now is boolean
sql/sql_select.cc:
use number of item in select list for array creation
sql/sql_union.cc:
use number of item in select list for array creation
sql/sql_yacc.yy:
create_refs changed with parsing_place enum variable
removed "of is null" if it is possible
(this cset should be SCRUM related, but not approved as scrum task yet)
mysql-test/r/subselect.result:
new subselect test result (new place of error detecting & and more subselect reducing)
sql/item.cc:
layout fix
sql/item.h:
unneed ';'
fixed print pethod
sql/item_cmpfunc.cc:
new method to support transformation after fix_fields
sql/item_cmpfunc.h:
new method to support transformation after fix_fields
fixed Item printing
sql/item_subselect.cc:
new transformation
sql/item_subselect.h:
new transformation
sql/sql_derived.cc:
'table' & 'table_list' now is not union
sql/sql_lex.cc:
'table' & 'table_list' now is not union to support reinit only shared tables (but all)
sql/sql_lex.h:
mark fake st_select_lex
sql/sql_olap.cc:
fixed table assignment
TODO added
sql/sql_select.cc:
'table' & 'table_list' now is not union
transforming subselect
sql/sql_union.cc:
prepare make on fix_fields
sql/sql_yacc.yy:
fixed layout
sql/table.h:
'table & 'table_list' now is different fields
Don't create temporary objects with no table name
myisam/mi_open.c:
After merge fix
mysql-test/r/analyse.result:
After merge fix
mysql-test/r/backup.result:
After merge fix
mysql-test/r/create.result:
After merge fix
mysql-test/r/delete.result:
After merge fix
mysql-test/r/func_like.result:
After merge fix
mysql-test/r/innodb.result:
After merge fix
mysql-test/r/rpl_loaddatalocal.result:
After merge fix
mysql-test/r/type_timestamp.result:
After merge fix
mysql-test/t/delete.test:
Change to not use table 't'
sql/sql_class.h:
Remove usage of thd when creating 'Table_ident'
Don't create temporary objects with no table name
sql/sql_derived.cc:
Indentation fix
sql/sql_select.cc:
After merge fix
Fixed wrong return -> DBUG_RETURN()
sql/sql_yacc.yy:
Remove usage of thd when creating 'Table_ident'
UNION's bug fixes and code clean-up
mysql-test/r/subselect.result:
An insignificant consequent of my UNION"s clean-up
sql/sql_derived.cc:
Fix a bug that our CTO reported
sql/sql_lex.h:
Fixing some bugs in UNION's with code clean-up
sql/sql_union.cc:
Fixing some bugs in UNION's with code clean-up
sql/sql_yacc.yy:
Fixing some bugs in UNION's with code clean-up
libmysql/libmysql.c:
Auto merged
scripts/mysqld_safe.sh:
Auto merged
sql/field.cc:
Auto merged
sql/lex.h:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
Portability fixes
Added new client function: mysql_get_server_version()
New server help code (From Victor Vagin)
Fixed wrong usage of binary()
Disabled RTREE usage for now.
BitKeeper/etc/ignore:
added scripts/fill_help_tables.sql
client/mysql.cc:
Some fixes when using 'help'
cmd-line-utils/libedit/compat.h:
Portability fix
cmd-line-utils/libedit/fgetln.c:
Portability fix
include/mysql.h:
Added new client function: mysql_get_server_version()
libmysql/libmysql.c:
Added new client function: mysql_get_server_version()
libmysqld/libmysqld.c:
Fixed prototype
mysql-test/install_test_db.sh:
Added creation of help tables
mysql-test/r/connect.result:
Added help tables
mysql-test/r/myisam.result:
Test of RTREE index
mysql-test/r/type_ranges.result:
updated results
mysql-test/t/myisam.test:
Test of RTREE index
mysql-test/t/type_ranges.test:
Updated test
mysys/charset.c:
Indentation change
mysys/my_symlink.c:
Removed compiler warning
scripts/fill_help_tables.sh:
Update for new help tables
sql/field.cc:
Indentation changes
sql/filesort.cc:
Optimized character set usage
sql/item_cmpfunc.cc:
Fix wrong usage of binary()
sql/item_cmpfunc.h:
Fix wrong usage of binary()
sql/item_func.cc:
Fix wrong usage of binary()
sql/item_func.h:
Fix wrong usage of binary()
sql/item_strfunc.cc:
Fix wrong usage of binary()
sql/item_sum.cc:
Fix wrong usage of binary()
sql/item_sum.h:
Fix wrong usage of binary()
sql/key.cc:
Indentation change
sql/lex.h:
HELP -> HELP_SYM
sql/mysql_priv.h:
Make get_field() more general
sql/password.c:
Indentation change + variable initialisation moved
sql/sql_acl.cc:
Make get_field() more general
sql/sql_base.cc:
Added comments + assertion for double call to mysql_lock_tables
sql/sql_cache.cc:
Indentation changes
sql/sql_class.h:
Added need_strxnfrm to SORT_FIELD to be able to optimise character set handling in filesort
sql/sql_derived.cc:
Renamed variables
sql/sql_help.cc:
New help functions (from Victor Vagin)
sql/sql_lex.cc:
Removed variables that doesn't have to be initialized for each query
sql/sql_lex.h:
Removed not used variable (olap)
sql/sql_parse.cc:
Fixed (not fatal) access of unitialized memory
Indentation / code cleanup
sql/sql_prepare.cc:
Indentaion cleanup
sql/sql_table.cc:
Disabled RTREE until 5.0
sql/sql_udf.cc:
Make get_field() more general
sql/sql_yacc.yy:
Removed access to uninitialized memory
Always set offset_limit and select_limit when using LIMIT (removed warnings)
Allow usage of 'help week'
sql/table.cc:
Make get_field() more general
More comments
sql/table.h:
Fixded type of TABLE_LIST->derived
sql/time.cc:
Stricter date / datetime handling (to be able to handle timestamps with days and microseconds)
strings/ctype-bin.c:
Added cha
fixed length of fields created in fubselect
fixed resolving fields of reduced in derived table subselect
mysql-test/r/subselect.result:
test of created with subselect fields
mysql-test/t/subselect.test:
test of created with subselect fields
sql/item.cc:
fixed length of fields created in fubselect
fixed resolving fields of reduced in derived table subselect
sql/item_subselect.cc:
improving of fields list creation in derived tables and unions
sql/mysql_priv.h:
improving of fields list creation in derived tables and unions
sql/sql_derived.cc:
improving of fields list creation in derived tables and unions
sql/sql_lex.h:
improving of fields list creation in derived tables and unions
sql/sql_parse.cc:
improving of fields list creation in derived tables and unions
sql/sql_prepare.cc:
improving of fields list creation in derived tables and unions
sql/sql_select.cc:
improving of fields list creation in derived tables and unions
sql/sql_select.h:
improving of fields list creation in derived tables and unions
sql/sql_union.cc:
improving of fields list creation in derived tables and unions
sql/sql_update.cc:
improving of fields list creation in derived tables and unions
fixed derived tables with subselect inside
mysql-test/r/derived.result:
test of subselects inside derived tables
mysql-test/t/derived.test:
test of subselects inside derived tables
mysql-test/t/subselect.test:
subselect test (not finished)
sql/item.cc:
after merge fix
sql/item.h:
after merge fix
sql/item_cmpfunc.h:
after merge fix
sql/item_subselect.cc:
after merge fix
sql/item_sum.h:
after merge fix
sql/mysql_priv.h:
fixed derived tables with subselect inside
sql/sql_class.h:
after merge fix
sql/sql_derived.cc:
fixed derived tables with subselect inside
sql/sql_lex.cc:
fixed derived tables with subselect inside
sql/sql_lex.h:
fixed derived tables with subselect inside
sql/sql_parse.cc:
fixed derived tables with subselect inside
after merge fix
sql/sql_prepare.cc:
after merge fix
sql/sql_select.cc:
after merge fix
fixed derived tables with subselect inside
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_sum.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_list.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_olap.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
fixed memory leacks
mysql-test/r/subselect.result:
some changes in subselect tests
mysql-test/t/subselect.test:
some changes in subselect tests
sql/item.cc:
some item made copyable
methods for creating copy of item list
tmp_table_field() splited
sql/item.h:
some item made copyable
methods for creating copy of item list
tmp_table_field() splited
sql/item_cmpfunc.cc:
changed references creation
sql/item_cmpfunc.h:
changed references creation
sql/item_func.cc:
some item made copyable
methods for creating copy of item list
changed references creation
sql/item_func.h:
some item made copyable
methods for creating copy of item list
changed references creation
tmp_table_field() splited
sql/item_subselect.cc:
changed references creation
sql/item_sum.cc:
some item made copyable
methods for creating copy of item list
sql/item_sum.h:
some item made copyable
methods for creating copy of item list
sql/item_timefunc.h:
tmp_table_field() splited
sql/item_uniq.h:
some item made copyable
methods for creating copy of item list
sql/mysql_priv.h:
fixed subselects with temporary tables
sql/sql_base.cc:
fixed subselects with temporary tables
sql/sql_class.h:
fixed subselects with temporary tables
sql/sql_delete.cc:
fixed subselects with temporary tables
sql/sql_derived.cc:
fixed subselects with temporary tables
sql/sql_do.cc:
fixed subselects with temporary tables
sql/sql_insert.cc:
fixed subselects with temporary tables
sql/sql_lex.cc:
fixed subselects with temporary tables
sql/sql_lex.h:
fixed subselects with temporary tables
sql/sql_list.h:
fixed subselects with temporary tables
sql/sql_load.cc:
fixed subselects with temporary tables
sql/sql_olap.cc:
fixed subselects with temporary tables
sql/sql_parse.cc:
fixed subselects with temporary tables
sql/sql_prepare.cc:
fixed subselects with temporary tables
sql/sql_select.cc:
fixed subselects with temporary tables
sql/sql_select.h:
fixed subselects with temporary tables
sql/sql_table.cc:
fixed subselects with temporary tables
sql/sql_union.cc:
fixed subselects with temporary tables
sql/sql_update.cc:
fixed subselects with temporary tables
sql/sql_yacc.yy:
fixed subselects with temporary tables
mysys/my_init.c:
Move my_once_free() up to not get warnings for this from safemalloc.
sql/item_row.cc:
Removed compiler warnings
sql/sql_select.cc:
split fix_tables_pointer() into two functions to be able to reuse code
sql/sql_select.h:
split fix_tables_pointer() into two functions to be able to reuse code
mysql-test/r/subselect.result:
Auto merged
sql/item.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
fixed bug of calling setup_fields without correct lex->current_select pointer in mysql_derived
more correct creation of reference in Item_field::fix_field
mysql-test/r/subselect.result:
new explain with subselect reduced
mysql-test/t/subselect.test:
new explain with subselect reduced
sql/item.cc:
support of subselect without FROM reducing
more correct creation of reference in Item_field::fix_field
sql/item.h:
support of subselect without FROM reducing
sql/item_cmpfunc.cc:
support of subselect without FROM reducing
sql/item_cmpfunc.h:
support of subselect without FROM reducing
sql/item_func.cc:
support of subselect without FROM reducing
sql/item_func.h:
support of subselect without FROM reducing
sql/item_row.cc:
support of subselect without FROM reducing
sql/item_row.h:
support of subselect without FROM reducing
sql/item_strfunc.h:
fixed layout
support of subselect without FROM reducing
sql/item_subselect.cc:
support of subselect without FROM reducing
sql/item_subselect.h:
support of subselect without FROM reducing
sql/mysql_priv.h:
reference in Item_field::fix_field related changes
sql/sql_base.cc:
reference in Item_field::fix_field related changes
sql/sql_derived.cc:
fixed bug of calling setup_fields without correct lex->current_select pointer
I still have to make a test case for :
UPDATE from sub-select with derived table
mysql-test/r/multi_update.result:
Test for found rows in multi-table update
mysql-test/r/subselect.result:
Fix for new syntax for UNION's
mysql-test/t/multi_update.test:
Test for found rows in multi-table update
mysql-test/t/subselect.test:
Fix for new syntax for UNION's
sql/sql_cache.cc:
Fix for a bug that involved derived table in sub-select in UPDATE or
DELETE statement
sql/sql_derived.cc:
Fix for a bug that involved derived table in sub-select in UPDATE or
DELETE statement
sql/sql_parse.cc:
Fix for a bug that involved derived table in sub-select in UPDATE or
DELETE statement
sql/sql_show.cc:
Fix for th eshow of replication status
sql/sql_yacc.yy:
Three fixes.
One for not allowing mixing of braces and non-braces in UNION's
Second one for table aliases in multi-table deletes / updates
Third one for using derived tables within sub-selects for
UPDATE / DELETE commands
Added THD to add_to_xxx_list() functions for faster parsing.
heap/_check.c:
After merge fix
mysql-test/r/distinct.result:
After merge fix
mysql-test/r/multi_update.result:
Make timestamp test portable
mysql-test/t/multi_update.test:
Make timestamp test portable
sql/field.cc:
After merge fix
sql/item_sum.cc:
After merge fix
sql/log_event.cc:
Remove compiler warning
sql/mysql_priv.h:
Added THD to add_to_list (Faster parsing)
sql/sql_derived.cc:
Fixed parameters to create_tmp_table()
sql/sql_lex.cc:
Added THD to add_to_list (Faster parsing)
sql/sql_lex.h:
Added THD to add_to_list (Faster parsing)
sql/sql_parse.cc:
Added THD to add_to_list (Faster parsing)
sql/sql_select.cc:
After merge fixes
Fixed return values from JOIN::optimize()
Replaced test_function_query with '!tables_list'
Optimized arguments to create_tmp_table()
sql/sql_select.h:
Removed test_function_query variable
Updated prototypes
sql/sql_union.cc:
Updated argument lists.
sql/sql_update.cc:
After merge fixes
sql/sql_yacc.yy:
Added THD to all add_xxx_to_list() functions
sql/table.h:
After merge fix
I am pushing now, because :
* I have a fix for crashing bug
* Sanja will destroy my changes in sub-select test ... ;)
mysql-test/r/derived.result:
tests for recent bugs
mysql-test/r/subselect.result:
tests for recent bugs
mysql-test/t/derived.test:
tests for recent bugs
mysql-test/t/subselect.test:
tests for recent bugs
sql/sql_derived.cc:
Luckily, we have `make test` so that my last changes could be re-checked
mysql-test/t/subselect.test:
fixing problems with aliases being forced on derived tables
sql/item_func.cc:
Fixing a bug that caused MySQL to crash on SELECT ...GROUP BY func(feilds)
sql/item_sum.cc:
Making us compatible with ISO C++ paragrah 7.1.9.4
sql/item_sum.h:
Making us compatible with ISO C++ paragrah 7.1.9.4
sql/sql_derived.cc:
Fixing two more bugs in derived tables.
One in EXPLAIN and another causing wrong result in opt_sum_query()
sql/sql_yacc.yy:
Making possible INSERT from SELECT list_of_constants
mysql-test/r/derived.result:
test for a bug fix which caused a deadlock !
Also test for a bug fix with using() on derived tables
mysql-test/r/subselect.result:
correcting previous changes caused by a bug ..
mysql-test/t/derived.test:
test for a bug fix which caused a deadlock !
Also test for a bug fix with using() on derived tables
mysql-test/t/subselect.test:
corrections of previous changes caused by a bug ..
sql/sql_base.cc:
A for for a bug which caused a deadlock !
Also fix for a bug with using() on derived tables
sql/sql_derived.cc:
code cleanup
sql/sql_lex.cc:
fix for deadlock
doing it in sql_yacc.yy does not work
this commit contains fixes for other tests
there are fixes in subselect test which will have to be changed
once fix_fields is fixed to work with aliased derived tables
sql/sql_delete.cc:
new order in global select list
sql/sql_derived.cc:
removed recursion from derived tables
sql/sql_insert.cc:
new order in global select list
sql/sql_lex.h:
pointer to global select list
sql/sql_select.cc:
new order in global select list
sql/sql_update.cc:
new order in global select list
- fixed switching from heap to MyISAM table
- fixed error handler
sql/sql_derived.cc:
A fix for the bug when MyISAM tmp table has to be created in order to resolve derived table.
fixed error handler
sql/sql_parse.cc:
fixed error handler
sql/sql_union.cc:
fixed switching from heap to MyISAM table
mysql-test/r/subselect.result:
test of derived table external field bug
mysql-test/t/subselect.test:
test of derived table external field bug
sql/sql_derived.cc:
lex->current_select always should point on current SELECT_LEX_NODE during query execution
onversion with check
sql/item.cc:
removed similar code
sql/item_sum.cc:
conversion with check
sql/sql_delete.cc:
conversion with check
sql/sql_derived.cc:
style fix
sql/sql_lex.cc:
conversion with check
moved similar code to function
sql/sql_lex.h:
conversion with check
moved similar code to function
sql/sql_parse.cc:
conversion with check
sql/sql_update.cc:
conversion with check
sql/sql_yacc.yy:
conversion with check
and a bug fix for derived tables
include/thr_lock.h:
changes for mysqladmin debug
mysys/thr_lock.c:
changes for mysqladmin debug
sql/lock.cc:
changes for mysqladmin debug
sql/sql_derived.cc:
bug fix for derived ..
sql/sql_parse.cc:
bug fix for derived
sql/sql_test.cc:
changes for mysqladmin debug
include/mysql_com.h:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/distinct.result:
Auto merged
mysql-test/r/group_by.result:
Auto merged
mysql-test/r/innodb.result:
Auto merged
mysql-test/r/key_primary.result:
Auto merged
mysql-test/r/merge.result:
Auto merged
mysql-test/r/odbc.result:
Auto merged
mysql-test/r/order_by.result:
Auto merged
mysql-test/r/union.result:
Auto merged
mysql-test/r/user_var.result:
Auto merged
mysql-test/r/varbinary.result:
Auto merged
mysql-test/t/union.test:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_update.cc:
Auto merged
sql/table.h:
Auto merged
Warning handling and initial prepared statement handling (last not complete yet)
Changed a lot of functions that returned 0/1 to my_bool type.
GRANT handling now uses read/write locks instead of mutex
Change basic net functions to use THD instead of NET
(needed for 4.1 protocol)
Use my_sprintf instead of sprintf() + strlen()
Added alloc_query() to be able to chare query initialization code with
prepared statements.
Cleanup handling of SHOW COUNT(*) WARNINGS and SELECT LAST_INSERT_ID()
Note that the following test fails (will be fixed ASAP):
sub_select, union, rpl_rotate_logs and rpl_mystery22
BitKeeper/deleted/.del-README~3449730baf983117:
Delete: mysql-test/t/README
BitKeeper/deleted/.del-sql_error.cc~2f1caca8d2485dbe:
Delete: libmysqld/sql_error.cc
BitKeeper/deleted/.del-sql_prepare.cc~f703729793935ed6:
Delete: libmysqld/sql_prepare.cc
Docs/manual.texi:
Updated variable list
client/mysql.cc:
Show warning count to user.
client/mysqltest.c:
Add warnings to test results
configure.in:
New shared library version number
include/errmsg.h:
Indentation cleanup
include/mysql.h:
Removed MYSQL_ERROR
Indentaion cleanups
include/mysql_com.h:
Changed functions to returns true/false to my_bool.
include/mysqld_error.h:
New error messages
isam/pack_isam.c:
Indentation change
libmysql/Makefile.am:
Fix of wrong merge
libmysql/Makefile.shared:
Indentation cleanup
libmysql/errmsg.c:
Removed not used errors
libmysql/libmysql.c:
Change functions to return 1 on error (not -1)
Change type of functions that returns 0/1 to my_bool
Lot of code optimizations.
Lot of changes for prepared statements. This now handles sending of binary data to server.
Receving of binary data is not yet done (will have to wait until server code for this is ready)
mysql_warning_count and mysql_warnings() implemented.
libmysql/libmysql.def:
Added mysql_warnings and mysql_warning_count
libmysql/manager.c:
Fixed wrong testing of result from my_connect()
libmysqld/lib_sql.cc:
Removed global variable THR_NET
Change basic net functions to use THD instead of NET
GRANT handling now uses read/write locks instead of mutex
libmysqld/libmysqld.c:
Changed functions to be my_bool
myisam/ft_boolean_search.c:
Trivial code cleanup
myisam/ft_stopwords.c:
Trivial code cleanup
myisam/mi_check.c:
Update to 4.1 structures
myisam/myisampack.c:
Trivial code cleanup
myisam/rt_key.c:
Code cleanup
myisam/rt_test.c:
Code cleanup
Removed compiler warnings
myisam/sp_key.c:
Indentation changes
myisam/sp_test.c:
Removed compiler warnings
mysql-test/README:
Updated to reflect the new --external flag.
mysql-test/mysql-test-run.sh:
--local (start new server) is now default.
Use --external to test against external server.
mysql-test/r/rollback.result:
Updated for 4.1 warnings
mysql-test/r/rpl_log.result:
Update for 4.1
mysql-test/t/rollback.test:
Updated for 4.1 warnings
mysql-test/t/rpl_log_pos.test:
Portability fix
mysys/hash.c:
Indentation change
mysys/my_error.c:
Indentation change
mysys/tree.c:
Updated file description
sql/field.cc:
Fixed bugs introduced by merge
Use my_sprintf instead of sprintf() + strlen()
sql/field.h:
Add CHARSET_INFO to field structure
sql/gstream.h:
Indentation changes.
Added GPL copyright header
sql/ha_innodb.cc:
Updated parameters for net functions.
sql/item.cc:
Updates of Item_param
Indentation changes
sql/item.h:
Removed size_of() function from item.
sql/item_func.cc:
Update function usage for 4.1
Added get_system_var()
sql/item_func.h:
Indentation change
sql/item_strfunc.cc:
Removed not needed inclusion of gstream.h
Update to use system variables (from 4.0)
sql/item_sum.h:
Removed size_of() functions from item.
sql/item_timefunc.cc:
Change sprintf() + strlen() -> my_sprintf()
Added length parameter to ->append()
sql/item_timefunc.h:
Removed size_of() functions from item.
sql/item_uniq.h:
Removed size_of() functions from item.
sql/lex.h:
Removed SQL_ERROR_COUNT variable
sql/log.cc:
Change sprintf() + strlen() -> my_sprintf()
sql/log_event.cc:
Change sprintf() + strlen() -> my_sprintf()
sql/mini_client.cc:
Added check that one always specifies a length to mc_mysql_query()
sql/mysql_priv.h:
New prototypes
Change of NET -> THD parameter for net functions.
sql/mysqld.cc:
New startup options: 'max_prepared_statements', 'max_error_count'
Updated usage of net functions.
sql/net_pkg.cc:
Change basic net functions to use THD instead of NET
(needed to be able to handle 4.0 and 4.1 protocols)
Lots of function comments
sql/net_serv.cc:
Change int return values -> my_bool
Updated net_write_command() to take an extra header block to be added to the packet.
(This made the prepared statement code much nicer and more efficient)
sql/repl_failsafe.cc:
Update net functions to use THD instead of NET
sql/set_var.cc:
Added @@error_count and @@warning_count variables.
Updated to 4.1 function usage
sql/set_var.h:
Added @@error_count and @@warning_count variables.
sql/share/czech/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/english/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/greek/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/hungarian/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/japanese/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/korean/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/norwegian-ny/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/norwegian/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/polish/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/romanian/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/slovak/errmsg.txt:
Removed Warning: from warning error messages.
sql/share/swedish/errmsg.txt:
Removed Warning: from warning error messages.
sql/slave.cc:
Change basic net functions to use THD instead of NET
skip_load_data_file recoded to fit new client/server protocol
sql/spatial.h:
Added copyright header
Indentation cleanups
sql/sql_acl.cc:
Change basic net functions to use THD instead of NET
GRANT handling now uses read/write locks instead of mutex
sql/sql_analyse.cc:
Change basic net functions to use THD instead of NET
sprintf() + strlen() -> my_sprintf()
sql/sql_base.cc:
More DBUG statements
sql/sql_class.cc:
Change basic net functions to use THD instead of NET
warning and prepared statement handling
sql/sql_class.h:
Change basic net functions to use THD instead of NET
warning and prepared statement handling
sql/sql_db.cc:
Code cleanup & optimization.
sql/sql_delete.cc:
Change basic net functions to use THD instead of NET
sql/sql_derived.cc:
Change basic net functions to use THD instead of NET
sql/sql_do.cc:
Change basic net functions to use THD instead of NET
sql/sql_error.cc:
Big rewrite of error handling.
sql/sql_handler.cc:
Change basic net functions to use THD instead of NET
sql/sql_insert.cc:
Change basic net functions to use THD instead of NET
sql/sql_lex.cc:
Change basic net functions to use THD instead of NET
sql/sql_lex.h:
Added param_count to st_select_lex_node
sql/sql_list.h:
Removed not needed error list.
sql/sql_load.cc:
Change basic net functions to use THD instead of NET
sql/sql_parse.cc:
Change basic net functions to use THD instead of NET
Added alloc_query() to be able to chare query initialization code with
prepared statements.
Update of warning handling.
Added create_select_for_variable() (for SHOW COUNT(*) WARNINGS)
sql/sql_prepare.cc:
Initial prepared statement handling
sql/sql_rename.cc:
Change basic net functions to use THD instead of NET
sql/sql_repl.cc:
Change basic net functions to use THD instead of NET
sql/sql_select.cc:
Small code cleanups
Added missing initialization of error that caused some queries that returned an empty result set to fail
sql/sql_select.h:
Ensure that JOIN.error is properly initialized
sql/sql_show.cc:
Change basic net functions to use THD instead of NET
A lot of optimization
sql/sql_table.cc:
Change basic net functions to use THD instead of NET
Indentaion cleanup
sql/sql_udf.cc:
Change basic net functions to use THD instead of NET
sql/sql_union.cc:
Change basic net functions to use THD instead of NET
sql/sql_update.cc:
Change basic net functions to use THD instead of NET
sql/sql_yacc.yy:
Change basic net functions to use THD instead of NET
Cleanup handling of SHOW COUNT(*) WARNINGS and SELECT LAST_INSERT_ID()
sql/structs.h:
Moved structures to files where they was used
sql/table.cc:
Don't accept empty database names
sql/uniques.cc:
Indentation cleanup
sql/unireg.cc:
Change basic net functions to use THD instead of NET
sql/unireg.h:
Added defaults for warnings and prepared statements
strings/ctype-simple.c:
optimization
tests/client_test.c:
Fixed wrong paramaters to printf()
fixed bug in mysql-test/create-test-result
fixed bug in union-subselect engine
mysql-test/create-test-result:
fixed bug in reject file name assembling
mysql-test/r/compare.result:
new EXPLAIN
mysql-test/r/create.result:
new EXPLAIN
mysql-test/r/distinct.result:
new EXPLAIN
mysql-test/r/explain.result:
new EXPLAIN
mysql-test/r/group_by.result:
new EXPLAIN
mysql-test/r/heap.result:
new EXPLAIN
mysql-test/r/heap_btree.result:
new EXPLAIN
mysql-test/r/heap_hash.result:
new EXPLAIN
mysql-test/r/innodb.result:
new EXPLAIN
mysql-test/r/join_outer.result:
new EXPLAIN
mysql-test/r/key_diff.result:
new EXPLAIN
mysql-test/r/key_primary.result:
new EXPLAIN
mysql-test/r/merge.result:
new EXPLAIN
mysql-test/r/myisam.result:
new EXPLAIN
mysql-test/r/null_key.result:
new EXPLAIN
mysql-test/r/odbc.result:
new EXPLAIN
mysql-test/r/order_by.result:
new EXPLAIN
mysql-test/r/range.result:
new EXPLAIN
mysql-test/r/select.result:
new EXPLAIN
mysql-test/r/subselect.result:
new EXPLAIN
mysql-test/r/type_datetime.result:
new EXPLAIN
mysql-test/r/union.result:
new EXPLAIN
mysql-test/r/user_var.result:
new EXPLAIN
mysql-test/r/varbinary.result:
new EXPLAIN
mysql-test/t/subselect.test:
new EXPLAIN
mysql-test/t/union.test:
new EXPLAIN
sql/mysql_priv.h:
new EXPLAIN
sql/sql_class.cc:
new EXPLAIN
sql/sql_class.h:
new EXPLAIN
sql/sql_derived.cc:
new EXPLAIN
sql/sql_lex.h:
new EXPLAIN
sql/sql_parse.cc:
new EXPLAIN
sql/sql_select.cc:
new EXPLAIN
sql/sql_union.cc:
fixed bug in subselect-UNION engine
sql/table.h:
new EXPLAIN
new error handling
Item_ref bug fixed
include/mysql_com.h:
new error handling
query cache pointer description
mysql-test/r/distinct.result:
new result's after Monty's bug fixing
mysql-test/r/subselect.result:
subselect with union test
mysql-test/t/subselect.test:
subselect with union test
sql/item.cc:
subselect with union
Item_ref bug fixed
sql/item_cmpfunc.cc:
Monty's bug fixing
sql/item_subselect.cc:
TODO changing
subselect with union
sql/item_subselect.h:
subselect with union
sql/mysql_priv.h:
Item_ref bug fixed
sql/mysqld.cc:
new error handling
sql/net_pkg.cc:
new error handling
sql/net_serv.cc:
new error handling
sql/sql_base.cc:
Item_ref bug fixed
sql/sql_class.cc:
new error handling
sql/sql_class.h:
new error handling
sql/sql_derived.cc:
subselect with union
sql/sql_insert.cc:
new error handling (only with mysql_select now)
sql/sql_lex.cc:
subselect with union
sql/sql_lex.h:
subselect with union
sql/sql_parse.cc:
new error handling
sql/sql_select.cc:
new error handling
subselect with union
removed thd->where=0 hack
sql/sql_select.h:
subselect with union
sql/sql_union.cc:
subselect with union
sql/sql_update.cc:
new error handling (only with mysql_select now)
sql/sql_yacc.yy:
subselect with union
mysql-test/r/derived.result:
derived table bug test
mysql-test/t/derived.test:
derived table bug test
sql/mysql_priv.h:
new mysql_new_select call & layout fixing
sql/sql_class.h:
passing unit as parameter of Table_ident constructor
sql/sql_lex.cc:
new SELECT_LEX structure methods
sql/sql_lex.h:
new SELECT_LEX structure definition
sql/table.h:
fixed layout
mysql-test/r/union.result:
small bug fixes in unions
BitKeeper/etc/ignore:
Added Docs/manual.texi.orig Docs/manual.texi.rej to the ignore list
mysql-test/t/union.test:
test for a bug fix in union's
sql/sql_union.cc:
bug fix for unions