into moonbone.local:/work/tmp_merge-5.0-opt-mysql
mysql-test/r/key.result:
Auto merged
mysql-test/t/key.test:
Auto merged
sql/table.cc:
Auto merged
support-files/mysql.spec.sh:
Auto merged
An UNIQUE KEY consisting of NOT NULL columns
was displayed as PRIMARY KEY in "DESC t1".
According to the code, that was intentional
behaviour for some reasons unknown to me.
This code was written before bitkeeper time,
so I cannot check who and why made this.
After discussing on dev-public, a decision
was made to remove this code
mysql-test/r/key.result:
Adding test case.
mysql-test/t/key.test:
Adding test case.
sql/table.cc:
Removing old wrong code
Only check for FN_DEVCHAR in filenames if FN_DEVCHAR is defined.
This allows to use table names with ":" on non windows platforms.
On Windows platform get an error if you use table name that contains FN_DEVCHAR
include/config-win.h:
Moved FN_DEVCHAR to config-win.h
include/my_global.h:
Moved FN_DEVCHAR to config-win.h
mysql-test/r/create.result:
Added testcase for Bug#19479:mysqldump creates invalid dump
BitKeeper/etc/ignore:
Added sql/share/iso639-2.txt sql/share/fixerrmsg.pl to the ignore list
mysql-test/t/create.test:
Added testcase for Bug#19479:mysqldump creates invalid dump
mysys/mf_fn_ext.c:
Added checking of BASKSLASH_MBTAIL as dirname_part depends on it.
Fixed cast and indentation.
sql/table.cc:
Only check for FN_DEVCHAR in filenames if FN_DEVCHAR is defined.
This allows to use table names with ":" on non windows platforms.
On Windows platform get an error if you use table name that contains FN_DEVCHAR
into mysql.com:/home/kgeorge/mysql/5.0/B18681
sql/sql_acl.cc:
Auto merged
sql/table.cc:
Auto merged
mysql-test/r/view_grant.result:
resolved conflict
mysql-test/t/view_grant.test:
resolved merge conflict
When reading a view definition from a .frm file it was
throwing a SQL error if the DEFINER user is not defined.
Changed it to a warning to match the (documented) case
when a view with undefined DEFINER user is created.
mysql-test/r/view_grant.result:
test case for the bug
mysql-test/t/view_grant.test:
test case for the bug
sql/sql_acl.cc:
Initialized the members to no privileges so even if
the subsequent checks fail it will still initialize
the security context.
sql/table.cc:
Turned the error of undefined DEFINER user in reading
a view definition to a warning.
The check for view security was lacking several points :
1. Check with the right set of permissions : for each table ref that
participates in a view there were the right credentials to use in it's
security_ctx member, but these weren't used for checking the credentials.
This makes hard enforcing the SQL SECURITY DEFINER|INVOKER property
consistently.
2. Because of the above the security checking for views was just ruled out
in explicit ways in several places.
3. The security was checked only for the columns of the tables that are
brought into the query from a view. So if there is no column reference
outside of the view definition it was not detecting the lack of access to
the tables in the view in SQL SECURITY INVOKER mode.
The fix below tries to fix the above 3 points.
mysql-test/r/grant.result:
removed nondeterminism (unspecified order) in some test output
mysql-test/r/view_grant.result:
Somewhat extended test case for the bug and similar queries.
mysql-test/t/grant.test:
removed nondeterminism (unspecified order) in some test output
mysql-test/t/view_grant.test:
Somewhat extended test case for the bug and similar queries.
sql/mysql_priv.h:
A wrapper for setup_tables that also checks access to the tables
sql/sql_acl.cc:
removed artificial security check stop and used the table ref's credentials.
sql/sql_base.cc:
a wrapper for setup_tables to check access to the tables
sql/sql_delete.cc:
wrapper called.
sql/sql_insert.cc:
wrapper called
sql/sql_load.cc:
wrapper called
sql/sql_parse.cc:
wrapper called and artificial check stop removed
sql/sql_select.cc:
wrapper called
sql/sql_update.cc:
wrapper called
sql/table.cc:
Mask table access to the view error as well.
table.cc:
Fixing to use system_charset_info instead of default_charset_info.
Crash happened because the "ctype" array is empty in UCS2,
and thus cannot be used with my_isspace().
The reason why UCS2 appeared in this context was because of
of default_charset_info variable incorrectly substituted to my_isspace().
As functions check_db_name(), check_table_name() and check_column_name()
always get values in utf8, system_charset_info must be used instead.
ctype_ucs2_def.test, ctype_ucs2_def-master.opt, ctype_ucs2_def.result:
new file
sql/table.cc:
Bug#18004 Connecting crashes server when default charset is UCS2
Use of default_charset_info was wrong.
Functions check_db_name, check_table_name and check_column_name
get values of system_charset_info character set (utf8).
into mysql.com:/home/timka/mysql/src/5.0-bug-15229
mysql-test/r/join.result:
Auto merged
mysql-test/t/join.test:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged
sql/sql_base.cc:
SCCS merged
The cause of this bug was a design flaw due to which the list of natural
join columns was incorrectly computed and stored for nested joins that
are not natural joins, but are operands (possibly indirect) of nested joins.
The patch corrects the flaw in a such a way, that the result columns of a
table reference are materialized only if it is a leaf table (that is, only
if it is a view, stored table, or natural/using join).
mysql-test/r/join.result:
Added test for BUG#15229 and uncommented failing test cases of
BUG#15357 (now fixed by this patch).
mysql-test/t/join.test:
Added test for BUG#15229 and uncommented failing test cases of
BUG#15357 (now fixed by this patch).
sql/sql_base.cc:
- Do not materialize the result columns of regular nested joins
(that are not natural/using joins).
- Moved most of the code that creates/adds new natural join column
references to the method 'get_or_create_column_ref', and simplified
'mark_common_columns'.
- Replaced a call to 'get_or_create_column_ref' with 'get_natural_column_ref'
where it is for sure all columns are alredy created.
sql/table.cc:
- Modified the method 'get_or_create_column_ref' so that it adds itself
the newly created natural join columns to the respective table reference.
sql/table.h:
- Modified the method 'get_or_create_column_ref' so that it adds itself
the newly created natural join columns to the respective table reference.
The cause of the bug was an ASSERT that checked the consistency
of TABLE_SHARE::db and TABLE_LIST::db and failed for I_S tables.
The fix relaxes the requirement for consistency for I_S.
mysql-test/r/join.result:
Added test for BUG#17523
mysql-test/t/join.test:
Added test for BUG#17523
sql/table.cc:
Take into account that for I_S tables, TABLE_SHARE::db == 0,
while TABLE_LIST::db contains the database name of a table.
The only change is in the ASSERTs.
into mysql.com:/home/timka/mysql/src/5.0-2486
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.cc:
Auto merged
Post-review fixes that simplify the way access rights
are checked during name resolution and factor out all
entry points to check access rights into one single
function.
sql/item.cc:
Simplfied find_field_in_table - factored out all acces right checks
into a separate function.
sql/mysql_priv.h:
Simplified the way we control whether to perform access right
checks for columns.
sql/sql_acl.cc:
- Added new functon check_column_grant_in_table_ref that serves as a single
point of entry to check access rights during name resolution for different
kinds of table references.
- Moved check_grant_column_in_sctx to sql_acl.cc where it
logically belongs.
- Removed the parameter check_grants - it is checked before
calling the function.
sql/sql_acl.h:
- Added new function check_column_grant_in_table_ref.
- Made check_grant_column_in_sctx available to other modules.
sql/sql_base.cc:
- Factored out all code that check access rights for columns during
name resolution into one function - check_column_grant_in_table_ref.
- Moved check_grant_column_in_sctx to sql_acl.cc where it
logically belongs.
- Removed the parameter check_grants - it is checked before
calling the function.
sql/table.cc:
Removed code that duplicates the functionality of
check_column_grant_in_table_ref, and called directly
that function.
sql/table.h:
check_grants method is replaced by more general
check_column_grant_in_table_ref.
Post-review fixes according to Monty's review.
sql/item.h:
Unite all code that stores and restores the state of a name resolution context
into a class to represent the state, and methods to save/restore that
state.
sql/mysql_priv.h:
Reorder parameters so that length is after the name of a field,
and database is before table name.
sql/sql_acl.cc:
Reorder parameters so that length is after the name of a field,
and database is before table name.
sql/sql_base.cc:
* Reorder parameters so that length is after the name of a field,
and database is before table name.
* Added new method - Field_iterator_table_ref::get_natural_column_ref
to avoid unnecessary code when it is knwon that no new columns will
be created when accessing natural join columns.
sql/sql_insert.cc:
Unite all code that stores and restores the state of a name resolution context
into a class to represent the state, and methods to save/restore that
state.
sql/sql_lex.cc:
Removed obsolete comment.
sql/sql_lex.h:
Return error from push_contex() if there is no memory.
sql/sql_list.h:
Extended base_list_iterator, List_iterator, and List_iterator_fast with an
empty constructor, and init() methods, so that one doesn't have to construct
a new iterator object every time one needs to iterate over a new list.
sql/sql_parse.cc:
Moved common functionality from the parser into one function, and renamed
the function to better reflect what it does.
sql/sql_yacc.yy:
Moved common functionality from the parser into one function, and renamed
the function to better reflect what it does.
sql/table.cc:
* Extended base_list_iterator, List_iterator, and List_iterator_fast with an
empty constructor, and init() methods, so that one doesn't have to construct
a new iterator object every time one needs to iterate over a new list.
* Added new method Field_iterator_table_ref::get_natural_column_ref to be
used in cases when it is known for sure that no new columns should be
created.
sql/table.h:
- column_ref_it no longer allocated for each new list of columns
- new method get_natural_join_column for faster/simpler access
to natural join columns.
into mysql.com:/home/jimw/my/mysql-5.0-clean
mysql-test/t/create.test:
Auto merged
sql/table.cc:
Auto merged
mysql-test/r/create.result:
Resolve conflict
CREATE TABLE and PS/SP": make sure that 'typelib' object for
ENUM values and 'Item_string' object for DEFAULT clause are
created in the statement memory root.
mysql-test/r/ps.result:
Test results has been fixed (Bug#14410)
mysql-test/t/ps.test:
A test case for Bug#14410 "Crash in Enum or Set type in CREATE
TABLE and PS/SP"
sql/mysql_priv.h:
typelib() function declaration has been changed.
sql/sql_table.cc:
Supply the statement memory root to use in typelib() and
safe_charset_converter() functions to ensure that objects
created during the first execution of CREATE TABLE statement
are allocated in persistent memory of the statement.
sql/table.cc:
Change typelib() function to require MEM_ROOT.
mysql-test/r/create.result:
Add new results
mysql-test/t/create.test:
Add regression test
sql/table.cc:
To cap a value at 2^32-1 on a 64-bit platform, use UINT_MAX32, not
~(ulong)0, since a ulong may be 64-bit itself.
Bad examples of usage of a string with its length fixed.
The incorrect length in the trigger file configuration descriptor
fixed (BUG#14090).
A hook for unknown keys added to the parser to support old .TRG files.
sql/field.cc:
Inefficient usage of String::append() fixed.
Bad examples of usage of a string with its length fixed.
sql/ha_berkeley.cc:
A bad example of usage of a string with its length fixed.
sql/ha_federated.cc:
Inefficient usage of String::append() fixed.
sql/ha_myisammrg.cc:
Bad examples of usage of a string with its length fixed.
sql/handler.cc:
Inefficient usage of String::append() fixed.
sql/item.cc:
Bad examples of usage of a string with its length fixed.
sql/item.h:
A bad example of usage of a string with its length fixed.
sql/item_cmpfunc.cc:
Bad examples of usage of a string with its length fixed.
sql/item_func.cc:
Bad examples of usage of a string with its length fixed.
sql/item_strfunc.cc:
Bad examples of usage of a string with its length fixed.
sql/item_subselect.cc:
Bad examples of usage of a string with its length fixed.
sql/item_sum.cc:
Bad examples of usage of a string with its length fixed.
Inefficient usage of String::append() fixed.
sql/item_timefunc.cc:
Inefficient using of String::append() fixed.
Bad examples of usage of a string with its length fixed.
sql/item_uniq.h:
Bad examples of usage of a string with its length fixed.
sql/key.cc:
Bad examples of usage of a string with its length fixed.
sql/log.cc:
Bad examples of usage of a string with its length fixed.
sql/log_event.cc:
Bad examples of usage of a string with its length fixed.
sql/mysqld.cc:
The dummy parser hook allocated.
sql/opt_range.cc:
Inefficient usage of String::append() fixed.
sql/parse_file.cc:
Bad examples of usage of a string with its length fixed.
A hook for unknown keys added to the parser.
sql/parse_file.h:
A hook for unknown keys added to the parser.
sql/protocol.cc:
A bad example of usage of a string with its length fixed.
sql/repl_failsafe.cc:
Bad examples of usage of a string with its length fixed.
sql/share/errmsg.txt:
A warning for old format config file.
sql/slave.cc:
Bad examples of usage of a string with its length fixed.
sql/sp.cc:
Bad examples of usage of a string with its length fixed.
sql/sp_head.cc:
Bad examples of usage of a string with its length fixed.
sql/spatial.cc:
A bad example of usage of a string with its length fixed.
sql/sql_acl.cc:
Bad examples of usage of a string with its length fixed.
sql/sql_analyse.cc:
Bad examples of usage of a string with its length fixed.
Inefficient usage of String::append() fixed.
sql/sql_lex.cc:
Bad examples of usage of a string with its length fixed.
sql/sql_load.cc:
A bad example of usage of a string with its length fixed.
sql/sql_parse.cc:
Bad examples of usage of a string with its length fixed.
sql/sql_prepare.cc:
A bad example of usage of a string with its length fixed.
sql/sql_select.cc:
Bad examples of usage of a string with its length fixed.
sql/sql_show.cc:
Bad examples of usage of a string with its length fixed.
sql/sql_string.cc:
Bad examples of usage of a string with its length fixed.
sql/sql_string.h:
The macro definition moved to sql_string.h to
be accessible in all parts of server.
sql/sql_table.cc:
Bad examples of usage of a string with its length fixed.
sql/sql_trigger.cc:
Bad examples of usage of a string with its length fixed.
The incorrect length in the trigger file configuration descriptor
fixed (BUG#14090).
The hook for processing incorrect sql_mode record added.
sql/sql_view.cc:
A dummy hook used for parsing views.
sql/structs.h:
The macro definition moved to sql_string.h to be
accessible in all parts of server.
sql/table.cc:
A bad example of usage of a string with its length fixed.
sql/tztime.cc:
A bad example of usage of a string with its length fixed.
into ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.0
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/sql_view.h:
Auto merged
sql/table.cc:
Auto merged
that in mysql_rm_table_part2_with_lock() previously we needed to open
same file twice. Now once is enough.
sql/mysql_priv.h:
Merged functions get_table_type() and mysql_frm_type() into one,
using the name from latter one.
sql/sql_base.cc:
Changed get_table_type() to mysql_frm_type()
sql/sql_delete.cc:
Changed get_table_type() to mysql_frm_type()
sql/sql_rename.cc:
Changed get_table_type() to mysql_frm_type()
sql/sql_show.cc:
Changed get_table_type() to mysql_frm_type()
sql/sql_table.cc:
Changed get_table_type() to mysql_frm_type()
sql/sql_view.cc:
Merged code from get_table_type() and mysql_frm_type() into the latter one.
sql/sql_view.h:
Function prototype changes.
sql/table.cc:
No longer needed.
large table gives server crash": make sure that when a MyISAM temporary
table is created for a cursor, it's created in its memory root,
not the memory root of the current query.
mysql-test/r/sp.result:
Test results fixed: a test case for Bug#14210
mysql-test/t/sp.test:
A test case for Bug#14210 "Simple query with > operator on large table
gives server crash"
sql/handler.cc:
- rewrite get_new_handler to accept a memory root and use it for
sql/handler.h:
- get_new_handler declaration changed
sql/opt_range.cc:
- get_new_handler declaration changed
sql/sql_base.cc:
- get_new_handler declaration changed
sql/sql_select.cc:
- the actual fix for Bug#14210. In create_myisam_from_heap we should
create the new table handler in TABLE::mem_root, not in THD::mem_root:
the latter is freed shortly after cursor is open.
- adjust create_tmp_table to explicitly supply &table->mem_root
to get_new_handler when creating a handler for a new temporary table
sql/sql_table.cc:
- get_new_handler declaration changed
sql/table.cc:
- get_new_handler declaration changed
sql/unireg.cc:
- get_new_handler declaration changed
tests/mysql_client_test.c:
A test case for Bug#14210 "Simple query with > operator on large table
gives server crash": a C API test case is worth adding because of different
memory allocation/freeing patterns in handling of C API and SP cursors
Fix for bug #14536: SELECT @a,@a:=... fails with prepared statements
mysql-test/r/func_sapdb.result:
Correct tests after reverting patch for BUG #14009 (use of abs() on null value causes problems with filesort)
mysql-test/r/type_newdecimal.result:
Correct tests after reverting patch for BUG #14009 (use of abs() on null value causes problems with filesort)
mysql-test/r/user_var.result:
More test with SELECT @a:=
mysql-test/t/disabled.def:
Enable user_var.test for
mysql-test/t/user_var.test:
More test with SELECT @a:=
sql/item.cc:
Simple optimization during review of new code
sql/item_func.cc:
Reverting patch for BUG #14009 (use of abs() on null value causes problems with filesort)
sql/item_timefunc.h:
timediff() can return NULL for not NULL arguments
sql/sql_base.cc:
Remove usage of current_thd() in mysql_make_view()
sql/sql_lex.h:
Remove usage of current_thd() in mysql_make_view()
sql/sql_select.cc:
Fix for bug #14536: SELECT @a,@a:=... fails with prepared statements
sql/sql_view.cc:
Remove usage of current_thd() in mysql_make_view()
Simple optimization of new code
sql/sql_view.h:
Remove usage of current_thd() in mysql_make_view()
sql/table.cc:
Simple optimization of new code
sql/item_func.cc:
some optimisation
sql/sql_acl.cc:
some optimisation
sql/sql_base.cc:
some optimisation
sql/sql_parse.cc:
some optimisation
sql/table.cc:
some optimisation
mysql-test/r/information_schema.result:
error message changed
mysql-test/r/sp.result:
error message changed
mysql-test/r/sql_mode.result:
fixed test suite
mysql-test/r/view.result:
error message changed
mysql-test/r/view_grant.result:
test of underlying view tables check
mysql-test/t/sql_mode.test:
fixed test suite
mysql-test/t/view_grant.test:
test of underlying view tables check
sql/item.cc:
check of underlying tables privilege added
sql/item.h:
Name the resolution context points to the security context of view (if item belong to the view)
sql/item_func.cc:
a view error hiding for execution of prepared function belonged to a view
fixed checking privileges if stored functions belonds to some view
sql/mysql_priv.h:
refult of derived table processing functions changed to bool
Security_context added as an argument to find_field_in_table()
sql/share/errmsg.txt:
error message fixed
sql/sql_acl.cc:
Storing requested privileges of tables added
View underlying tables privilege check added
sql/sql_base.cc:
View underlying tables privilege check added
sql/sql_cache.cc:
Code cleunup: we should not register underlying tables of view second time
sql/sql_delete.cc:
ancestor -> merge_underlying_list renaming
sql/sql_derived.cc:
refult of derived table processing functions changed to bool
do not give SELECT_ACL for TEMPTABLE views
sql/sql_lex.h:
The comment added
sql/sql_parse.cc:
registration of requested privileges added
sql/sql_prepare.cc:
registration of requested privileges added
sql/sql_update.cc:
manipulation of requested privileges for underlying tables made the same as for table which we are updating
sql/sql_view.cc:
underlying tables of view security check support added
sql/table.cc:
renaming and fixing view preparation methods, methods for checking underlyoing tables security context added
sql/table.h:
storege for reuested privileges added
sql/handler.cc:
Indentation fixes
sql/item.cc:
Remove not needed test of *ref (If ref is set it always points to a valid address)
sql/table.cc:
Indentation changes
Moved buff_end directly after 'buff' assignment to make code more clear
sql/unireg.cc:
Indentation changes
into mysql.com:/home/my/mysql-5.0
mysql-test/r/view.result:
Auto merged
mysql-test/t/view.test:
Auto merged
server-tools/instance-manager/instance.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_manager.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/table.cc:
Auto merged
sql/unireg.cc:
Auto merged
sql/handler.cc:
Use my_strnncoll instead of my_strcasecmp (it is possible to
compare non-asciiz strings now).
sql/handler.h:
extra block size added to HA_CREATE_INFO.
into mysql.com:/home/my/mysql-5.0
BUILD/SETUP.sh:
Auto merged
client/mysql.cc:
Auto merged
client/mysqldump.c:
Auto merged
client/mysqltest.c:
Auto merged
include/my_sys.h:
Auto merged
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/information_schema.result:
Auto merged
mysql-test/r/information_schema_inno.result:
Auto merged
mysql-test/r/multi_statement.result:
Auto merged
mysql-test/r/mysqldump.result:
Auto merged
mysql-test/r/temp_table.result:
Auto merged
mysql-test/t/func_str.test:
Auto merged
mysql-test/t/information_schema.test:
Auto merged
mysql-test/t/information_schema_inno.test:
Auto merged
mysql-test/t/multi_statement.test:
Auto merged
mysql-test/t/mysql.test:
Auto merged
mysql-test/t/temp_table.test:
Auto merged
sql/ha_federated.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/structs.h:
Auto merged
sql/table.h:
Auto merged
strings/decimal.c:
Auto merged
sql/sql_parse.cc:
manual merge
sql/sql_prepare.cc:
manual merge
sql/table.cc:
manual merge
Ensure that ccache is also used for C programs
mysql: Ensure that 'delimiter' works the same way in batch mode as in normal mode
mysqldump: Change to use ;; (instead of //) as a stored procedure/trigger delimiter
Fixed test cases by adding missing DROP's and rename views to be of type 'v#'
Removed MY_UNIX_PATH from fn_format()
Removed current_db_used from TABLE_LIST
Removed usage of 'current_thd' in Item_splocal
Removed some compiler warnings
A bit faster longlong2str code
BUILD/FINISH.sh:
Ensure that ccache is also used for C programs
BUILD/SETUP.sh:
Ensure that ccache is also used for C programs
client/mysql.cc:
More debugging
Ensure that 'delimiter' works the same way in batch mode as in normal mode.
Compare 'delimiter' command case-insensitive.
The above fixes the delimiter bugs so that we can now use ;; as a trigger/SP function delimiter in mysqldump.
client/mysqldump.c:
Indentation fixes
Use ;; as a delmimiter for stored procedures and triggers instead of //
client/mysqltest.c:
Indentation fixes
include/my_sys.h:
Remove not needed MY_UNIX_PATH parameter
mysql-test/r/alter_table.result:
Better to reuse mysqltest database (test didn't properly delete mysqltest1 at start)
mysql-test/r/func_str.result:
More testing of CONV() (to ensure that longlong2str() works correctly)
mysql-test/r/information_schema.result:
Drop all used tables and views
Rename view tables to 'v#' to ensure that if this test fails, not a lot of other test fails
mysql-test/r/information_schema_inno.result:
Drop all used tables
mysql-test/r/multi_statement.result:
Drop used tables
mysql-test/r/mysql.result:
Add error messages to result
mysql-test/r/mysqldump.result:
;; is now used as SP/trigger delimiter
mysql-test/r/mysqlshow.result:
Drop used tables
mysql-test/r/temp_table.result:
Drop used views
Rename views to v#
mysql-test/t/alter_table.test:
Better to reuse mysqltest database (test didn't properly delete mysqltest1 at start)
mysql-test/t/func_str.test:
More testing of CONV() (to ensure that longlong2str() works correctly)
mysql-test/t/information_schema.test:
Drop all used tables and views
Rename view tables to 'v#' to ensure that if this test fails, not a lot of other test fails
mysql-test/t/information_schema_inno.test:
Drop all used tables
mysql-test/t/multi_statement.test:
Drop used tables
mysql-test/t/mysql.test:
Add error messages to result
mysql-test/t/mysqlshow.test:
Drop used tables
mysql-test/t/temp_table.test:
Drop used views
Rename views to v#
mysys/mf_format.c:
Remove not needed MY_UNIX_PATH parameter
(This goes against how fn_format() is supposed to work and also conflicts with other options like MY_RETURN_REAL_PATH)
sql/ha_federated.cc:
Removed extra empty line
sql/item.cc:
Use 'str_value' instead of 'str_value_ptr' to hold result for Item_splocal
Remove some calls to 'thd' in Item_splocal by making 'thd' a class variable
One doesn't have to set 'null_value' when calling 'is_null()'
sql/item.h:
Add THD as a class variable to Item_splocal
Use 'str_value' instead of 'str_value_ptr' to hold temp result
Fixed bug in Item_hex when used in CAST()
sql/item_func.cc:
Optimize new code
sql/log_event.cc:
Move 'to_unix_path()' out of fn_format()
sql/opt_range.cc:
Simplify code
sql/sp_head.cc:
Ensure that Item_splocal has thd set before we call '->this_item()'
sql/sql_class.cc:
Return error if Statement::insert() fails in either hash_insert()
sql/sql_parse.cc:
Remove 'current_db_used' as we can trivially check if db table qualifier was used without this.
Simplify code
sql/sql_prepare.cc:
Use enum instead of const int, to avoid ugly code for VC++
sql/structs.h:
Remove compiler warnings when using STRING_WITH_LEN() with constant strings.
sql/table.cc:
Fixed indentation
sql/table.h:
Remove not needed current_db_used
strings/decimal.c:
Simplify code
strings/longlong2str-x86.s:
A bit faster longlong2str.
(Took some ideas from Peter Gulutzan's code)
strings/my_strtoll10.c:
Simplify code for MetroWerks compiler
fixed CHECKSUM TABLE to be independent from last - undefined in InnoDB - bits in the null bitmask
bug#13710
sql/table.h:
fixed CHECKSUM TABLE to be independent from last - undefined in InnoDB - bits in the null bitmask
bug#13710
sql/table.cc:
fixed CHECKSUM TABLE to be independent from last - undefined in InnoDB - bits in the null bitmask
bug#13710
sql/sql_table.cc:
fixed CHECKSUM TABLE to be independent from last - undefined in InnoDB - bits in the null bitmask
bug#13710
The problem was then when a column reference was resolved to a view column, the new Item
created for this column contained the name of the view, and not the view alias.
mysql-test/r/view.result:
Additional test for BUG#13410.
mysql-test/t/view.test:
Additional test for BUG#13410.
sql/item.cc:
Correctly cast 'cur_field' to Item_ident because if the original item is
an Item_field, the cur_field is either an Item_field or an Item_ref.
Thus we have to cast cur_field to a common super-class of both.
sql/item.h:
- real_item() may be called before Item_ref::ref is set
(i.e. the Item_ref object was resolved).
- To avoid a crash and to return some meaningful value
in such cases we return 'this'.
sql/sql_base.cc:
- 'item' may be an Item_ref, so we test for the type of the actual
referenced item.
- Correctly cast 'cur_field' to Item_ident because if the original
item is an Item_field, the cur_field is either an Item_field or an
Item_ref. Thus we have to cast cur_field to a common super-class
of both.
sql/table.cc:
- When creating a new Item for a reference to a view column, use the view alias,
and not the real view name.
- Removed old code
The problem was in that when finding the last table reference in a nested join tree,
the procedure doing the iteration over the right-most branches of a join tree
was testing for RIGHT JOINs the table reference that represents the join, and not
the second operand of the JOIN. Currently the information whether a join is LEFT/RIGHT
is stored not on the join object itself, but on one of its operands.
mysql-test/r/select.result:
Added test for BUG#13597
mysql-test/t/select.test:
Added test for BUG#13597
sql/table.cc:
- test whether a table reference is a right join by testing the
rigth join operand (first in the list of operands), and not
the table reference that represents the join itself.
- clearer comments
into mysql.com:/opt/local/work/mysql-5.0-root
BitKeeper/etc/ignore:
auto-union
include/my_sys.h:
Auto merged
mysql-test/r/information_schema.result:
Auto merged
mysql-test/t/ctype_ujis.test:
Auto merged
sql/ha_federated.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/log.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
cursor is interpreted latin1 character and Bug#9819 "Cursors: Mysql Server
Crash while fetching from table with 5 million records."
A fix for a possible memory leak when fetching into an SP cursor
in a long loop.
The patch uses a common implementation of cursors in the binary protocol and
in stored procedures and implements materialized cursors.
For implementation details, see comments in sql_cursor.cc
include/my_sys.h:
- declaration for multi_alloc_root
libmysqld/Makefile.am:
- drop protocol_cursor.cc, add sql_cursor.cc (replaces the old
implementation of cursors with a new one)
mysql-test/r/ctype_ujis.result:
- test results fixed (a test case for Bug#6513)
mysql-test/r/sp-big.result:
- test results fixed (a test case for Bug#9819)
mysql-test/t/ctype_ujis.test:
Add a test case for Bug#6513 "Test Suite: Values inserted by using cursor is
interpreted latin1 character"
mysql-test/t/sp-big.test:
Add a restricted test case for Bug#9819 "Cursors: Mysql Server Crash
while fetching from table with 5 million records."
mysys/my_alloc.c:
- an implementation of multi_alloc_root; this is largely a copy-paste
from mulalloc.c, but the function is small and there is no easy way
to reuse the existing C function.
sql/Makefile.am:
- add sql_cursor.h, sql_cursor.cc (a new implementation of stored procedure
cursors) and drop protocol_cursor.cc (the old one)
sql/handler.cc:
- now TABLE object has its mem_root always initialized.
Adjust the implementation handler::ha_open
sql/item_subselect.cc:
- adjust to the changed declaration of st_select_lex_unit::prepare
sql/protocol.h:
- drop Protocol_cursor
sql/sp_head.cc:
- move juggling with Query_arena::free_list and Item::next to
sp_eval_func_item, as this is needed in 3 places already.
sql/sp_head.h:
- declare a no-op implementation for cleanup_stmt in sp_instr_cpush.
This method is needed for non-materializing cursors, which are yet not
used in stored procedures.
- declaration for sp_eval_func_item
sql/sp_rcontext.cc:
- reimplement sp_cursor using the new implementation of server side cursors.
- use sp_eval_func_item to assign values of SP variables from the
row fetched from a cursor. This should fix a possible memory leak in
the old implementation of sp_cursor::fetch
sql/sp_rcontext.h:
- reimplement sp_cursor using the new implementation of server side cursors.
sql/sql_class.cc:
- disable the functionality that closes transient cursors at commit/rollback;
transient cursors are not used in 5.0, instead we use materialized ones.
To be enabled in a later version.
sql/sql_class.h:
- adjust to the rename Cursor -> Server_side_cursor
- additional declarations of select_union used in materialized cursors
sql/sql_derived.cc:
- reuse bits of tmp table code in UNION, derived tables, and materialized
cursors
- cleanup comments
sql/sql_lex.h:
- declarations of auxiliary methods used by materialized cursors
- a cleanup in st_select_lex_unit interface
sql/sql_list.h:
- add an array operator new[] to class Sql_alloc
sql/sql_prepare.cc:
- split the tight coupling of cursors and prepared statements to reuse
the same implementation in stored procedures
- cleanups of error processing in Prepared_statement::{prepare,execute}
sql/sql_select.cc:
- move the implementation of sensitive (non-materializing) cursors to
sql_cursor.cc
- make temporary tables self-contained: the table, its record and fields
are allocated in TABLE::mem_root. This implementation is not clean
and resets thd->mem_root several times because of the way create_tmp_table
works (many additional things are done inside it).
- adjust to the changed declaration of st_select_lex_unit::prepare
sql/sql_select.h:
- move the declaration of sensitive (non-materializing) cursors to
sql_cursor.cc
sql/sql_union.cc:
- move pieces of st_select_unit::prepare to select_union and st_table
methods to be able to reuse code in the implementation of materialized
cursors
sql/sql_view.cc:
- adjust to the changed signature of st_select_lex_unit::prepare
sql/table.cc:
- implement auxiliary st_table methods for use with temporary tables
sql/table.h:
- add declarations for auxiliary methods of st_table used to work with
temporary tables
tests/mysql_client_test.c:
- if cursors are materialized, a parallel update of the table used
in the cursor may go through: update the test.
sql/sql_cursor.cc:
New BitKeeper file ``sql/sql_cursor.cc'' -- implementation of server side
cursors
sql/sql_cursor.h:
New BitKeeper file ``sql/sql_cursor.h'' - declarations for
server side cursors.
VC++Files/libmysqld/libmysqld.vcproj:
don't recall exactly what this change was.
VC++Files/libmysqltest/myTest.vcproj:
redirect to client_release and client_debug folders
VC++Files/mysql.sln:
remove bdb from embedded classic target
VC++Files/mysqlserver/mysqlserver.vcproj:
redirect to lib_release and lib_debug folders
server-tools/instance-manager/mysqlmanager.vcproj:
redirect to proper folders
sql/ha_federated.cc:
fix windows compile problems
sql/sql_acl.cc:
fix windows compile problems
sql/table.cc:
fix windows compile problems
sql/unireg.cc:
fix windows compile problems
VC++Files/mysqlserver/dummy.cpp:
added new file to make mysqlserver generate a lib
(per Monty's patch).
Remove references to the "COMMENT" field.
WL#2414
mysql-test/r/federated.result:
alter from "COMMENT=" to "CONNECTION="
mysql-test/r/federated_archive.result:
change "COMMENT=" to "CONNECTION="
mysql-test/t/federated.test:
change from "COMMENT=" to "CONNECTION="
mysql-test/t/federated_archive.test:
change from "COMMENT=" to "CONNECTION="
sql/ha_federated.cc:
Change parsing of char* table->s->comment to LEX_STRING table->s->connect_string
(per Monty's patch)
sql/handler.h:
added LEX_STRING "connection_string"
(per Monty's patch)
sql/sql_yacc.yy:
added setting of "connect_string" string and length
sql/table.cc:
Modifying frm file to store connecting information (code change came from Monty).
sql/table.h:
added connect_string
sql/unireg.cc:
Storing information on connection_string (code came from Monty).
into sanja.is.com.ua:/home/bell/mysql/bk/work-bug3-5.0
sql/item.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
- current_arena to stmt_arena: the thread may have more than one
'current' arenas: one for runtime data, and one for the parsed
tree of a statement. Only one of them is active at any moment.
- set_item_arena -> set_query_arena, because Item_arena was renamed to
Query_arena a while ago
- set_n_backup_item_arena -> set_n_backup_active_arena;
the active arena is the arena thd->mem_root and thd->free_list
are currently pointing at.
- restore_backup_item_arena -> restore_active_arena (with the same
rationale)
- change_arena_if_needed -> activate_stmt_arena_if_needed; this
method sets thd->stmt_arena active if it's not done yet.
sql/item.cc:
Rename.
sql/item_cmpfunc.cc:
Rename.
sql/item_func.cc:
Rename.
sql/item_subselect.cc:
Rename.
sql/item_subselect.h:
Remove an unused forward declaration.
sql/item_sum.h:
Remove an unused forward declaration.
sql/mysql_priv.h:
Remove an unused forward declaration.
sql/sp.cc:
Rename.
sql/sp_head.cc:
Rename.
sql/sql_base.cc:
Rename.
sql/sql_class.cc:
Rename.
sql/sql_class.h:
Rename.
sql/sql_lex.cc:
Rename.
sql/sql_parse.cc:
Rename.
sql/sql_prepare.cc:
Rename.
sql/sql_select.cc:
Rename.
sql/sql_show.cc:
Rename.
sql/sql_union.cc:
Rename.
sql/sql_view.cc:
Rename.
sql/table.cc:
Rename.
into sanja.is.com.ua:/home/bell/mysql/bk/work-bug3-5.0
BitKeeper/etc/config:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
mysql-test/r/view.result:
merge
mysql-test/t/view.test:
merge
sql/share/errmsg.txt:
merge
sql/sql_insert.cc:
merge
sql/table.h:
merge
into mysql.com:/home/timka/mysql/src/5.0-2486
mysql-test/r/select.result:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/sql_base.cc:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged
* Provide backwards compatibility extension to name resolution of
coalesced columns. The patch allows such columns to be qualified
with a table (and db) name, as it is in 4.1.
Based on a patch from Monty.
* Adjusted tests accordingly to test both backwards compatible name
resolution of qualified columns, and ANSI-style resolution of
non-qualified columns.
For this, each affected test has two versions - one with qualified
columns, and one without.
mysql-test/include/ps_query.inc:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/bdb.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/innodb.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/join.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/join_nested.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/join_outer.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/null_key.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/order_by.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_2myisam.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_3innodb.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_4heap.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_5merge.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_6bdb.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/ps_7ndb.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/select.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/subselect.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/r/type_ranges.result:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/bdb.test:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/innodb.test:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/join.test:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/join_nested.test:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/join_outer.test:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/null_key.test:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/order_by.test:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/select.test:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/subselect.test:
Put back old tests to test that coalesced columns of natural joins can be qualified.
mysql-test/t/type_ranges.test:
Put back old tests to test that coalesced columns of natural joins can be qualified.
sql/sql_base.cc:
* Applied Monty's patch for backwards compatible name resolution
of qualified columns. The idea is:
- When a column is qualified, search for the column in all
tables/views underlying each natural join. In this case
natural joins are *not* considered leaves.
- If a column is not qualified, then consider natural joins
as leaves, thus directly search the result columns of
natural joins.
* Simplified 'find_field_in_tables()' - unified two similar
loops into one.
sql/table.cc:
- Removed method & members not needed after Monty's patch.
sql/table.h:
- Removed method & members not needed after Monty's patch.
tests/mysql_client_test.c:
Put back old tests to test that coalesced columns of natural joins can be qualified.
include/my_global.h:
Safer macros to avoid possible overflows
sql/item_cmpfunc.cc:
Simple optimization
sql/sp_head.cc:
Indentation fixes
Remove not needed "else" levels
Added error checking for 'new'
Simpler reseting of thd->spcont in execute_procedure
sql/sql_base.cc:
Faster new
sql/sql_lex.cc:
Use 'TRUE' instead of 'true'
sql/sql_parse.cc:
Faster new
sql/sql_view.cc:
No need to set 'tables' as it's not used
sql/table.cc:
Simpler DBUG_ASSERT()
- Corrected problem with N-way nested natural joins in PS mode.
- Code cleanup
- More asserts to check consistency of name resolution contexts
- Fixed potential memory leak of name resolution contexts
mysql-test/r/join.result:
- Corrected problem with N-way nested natural joins in PS mode.
mysql-test/t/join.test:
- Corrected problem with N-way nested natural joins in PS mode.
sql/item.h:
- Fixed potential memory leak.
sql/sql_base.cc:
- the local context of Item_fields that participate in TABLE_LIST::on_cond for
natural joins is correctly set to the tables where the corresponding fields
originate from.
- removed unused variables
- correct allocation of contexts
sql/sql_parse.cc:
- correct allocation of contexts for JOIN ON conditions.
sql/table.cc:
- added asserts to check the consistency of name resolution contexts
sql/table.h:
- added asserts to check the consistency of name resolution contexts
mysql-test/t/kill.test:
Moved --disable_reconnect earlier to avoid race condition
sql/sql_help.cc:
Cleanup during review of new code
(Moved variable definitions first in function
sql/sql_insert.cc:
Cleanup during review of new code
sql/sql_lex.cc:
Cleanup during review of new code
sql/sql_parse.cc:
Cleanup during review of new code
Changed potential problem with previous_table_ref where it dependent that TABLE_LIST first element would be next_local
Rearanged code in add_table_to_list() to remove extra if
Combined 2 calls to calloc() to one
sql/sql_view.cc:
Remove extra indentation level
Combined common 'on error' exit
sql/sql_yacc.yy:
Fixed comment style
sql/table.cc:
Cleanup during review of new code
- Changed while() loops to for() loop (to make code more readable)
- Removed not needed initialization of variables
- Removed not needed 'else' cases
- Removed trivial ASSERT's that was checked by previous code
- Moved comment setting last in Natural_join_column::check_grants()
remove unneeded multitable_view assignment
sql_view.cc:
fix potential memorry overrun in ref_array
asssign multitable_view in time of view creation (BUG#12569)
sql/sql_view.cc:
fix potential memorry overrun in ref_array
asssign multitable_view in time of view creation
sql/table.cc:
remove unneeded multitable_view assignment
"Process NATURAL and USING joins according to SQL:2003".
* Some of the main problems fixed by the patch:
- in "select *" queries the * expanded correctly according to
ANSI for arbitrary natural/using joins
- natural/using joins are correctly transformed into JOIN ... ON
for any number/nesting of the joins.
- column references are correctly resolved against natural joins
of any nesting and combined with arbitrary other joins.
* This patch also contains a fix for name resolution of items
inside the ON condition of JOIN ... ON - in this case items must
be resolved only against the JOIN operands. To support such
'local' name resolution, the patch introduces a stack of
name resolution contexts used at parse time.
NOTICE:
- This patch is not complete in the sense that
- there are 2 test cases that still do not pass -
one in join.test, one in select.test. Both are marked
with a comment "TODO: WL#2486".
- it does not include a new test specific for the task
mysql-test/include/ps_query.inc:
Adjusted according to standard NATURAL/USING join semantics.,
mysql-test/r/bdb.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/derived.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/errors.result:
The column as a whole cannot be resolved, so different error message.
mysql-test/r/fulltext.result:
Adjusted according to standard JOIN ... ON semantics =>
the ON condition can refer only to the join operands.
mysql-test/r/fulltext_order_by.result:
More detailed error message.
mysql-test/r/innodb.result:
Adjusted according to standard NATURAL/USING join semantics.
This test doesn't pass completetly yet!
mysql-test/r/insert_select.result:
More detailed error message.
mysql-test/r/join.result:
Adjusted according to standard NATURAL/USING join semantics.
NOTICE: there is one test case that still fails, and it is
commeted out and marked with WL#2486 in the test file.
mysql-test/r/join_crash.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/join_nested.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/join_outer.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/multi_update.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/null_key.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/order_by.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/ps_2myisam.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/ps_3innodb.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/ps_4heap.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/ps_5merge.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/ps_6bdb.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/ps_7ndb.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/select.result:
Adjusted according to standard NATURAL/USING join semantics.
NOTICE: there is one failing test case which is commented with
WL#2486 in the test file.
mysql-test/r/subselect.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/type_ranges.result:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/r/union.result:
More detailed error message.
mysql-test/t/bdb.test:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/t/errors.test:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/t/fulltext.test:
Adjusted according to standard JOIN ... ON semantics =>
the ON condition can refer only to the join operands.
mysql-test/t/fulltext_order_by.test:
More detailed error message.
mysql-test/t/innodb.test:
Adjusted according to standard NATURAL/USING join semantics.
This test doesn't pass completetly yet!
mysql-test/t/insert_select.test:
More detailed error message.
mysql-test/t/join.test:
Adjusted according to standard NATURAL/USING join semantics.
NOTICE: there is one test case that still fails, and it is
commeted out and marked with WL#2486 in the test file.
mysql-test/t/join_crash.test:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/t/join_nested.test:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/t/join_outer.test:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/t/null_key.test:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/t/order_by.test:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/t/select.test:
Adjusted according to standard NATURAL/USING join semantics.
NOTICE: there is one test case that still fails, and it is
commeted out and marked with WL#2486 in the test file.
mysql-test/t/subselect.test:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/t/type_ranges.test:
Adjusted according to standard NATURAL/USING join semantics.
mysql-test/t/union.test:
More detailed error message.
sql/item.cc:
- extra parameter to find_field_in_tables
- find_field_in_real_table renamed to find_field_in_table
- fixed comments/typos
sql/item.h:
- added [first | last]_name_resolution_table to class
Name_resolution_context
- commented old code
- standardized formatting
sql/mysql_priv.h:
- refactored the find_field_in_XXX procedures,
- added a new procedure for natural join table references,
- renamed the find_field_in_XXX procedures to clearer names
sql/sp.cc:
- pass the top-most list of the FROM clause to setup_tables
- extra parameter to find_field_in_tables
sql/sql_acl.cc:
- renamed find_field_in_table => find_field_in_table_ref
- extra parameter to find_field_in_table_ref
- commented old code
sql/sql_base.cc:
This file contains the core of the implementation of the processing
of NATURAL/USING joins (WL#2486).
- added many comments to old code
- refactored the group of find_field_in_XXX procedures, and added a
new procedure for natural joins. There is one find_field_in_XXX procedure
per each type of table reference (stored table, merge view, or natural
join); one meta-procedure that selects the correct one depeneding on the
table reference; and one procedure that goes over a list of table
referenes.
- NATURAL/USING joins are processed through the procedures:
mark_common_columns, store_natural_using_join_columns,
store_top_level_join_columns, setup_natural_join_row_types.
The entry point to processing NATURAL/USING joins is the
procedure 'setup_natural_join_row_types'.
- Replaced the specialized Field_iterator_XXX iterators with one
generic iterator over the fields of a table reference.
- Simplified 'insert_fields' and 'setup_conds' due to encapsulation of
the processing of natural joins in a separate set of procedures.
sql/sql_class.h:
- Commented old code.
sql/sql_delete.cc:
- Pass the FROM clause to setup_tables.
sql/sql_help.cc:
- pass the end name resolution table to find_field_in_tables
- adjust the list of tables for name resolution
sql/sql_insert.cc:
- Changed the code that saves and restores the current context to
support the list of tables for name resolution -
context->first_name_resolution_table, and
table_list->next_name_resolution_table.
Needed to support an ugly trick to resolve inserted columns only in
the first table.
- Added Name_resolution_context::[first | last]_name_resolution_table.
- Commented old code
sql/sql_lex.cc:
- set select_lex.parent_lex correctly
- set correct state of the current name resolution context
sql/sql_lex.h:
- Added a stack of name resolution contexts to support local
contexts for JOIN ... ON conditions.
- Commented old code.
sql/sql_load.cc:
- Pass the FROM clause to setup_tables.
sql/sql_olap.cc:
- Pass the FROM clause to setup_tables.
sql/sql_parse.cc:
- correctly set SELECT_LEX::parent_lex
- set the first table of the current name resoltion context
- added support for NATURAL/USING joins
- commented old code
sql/sql_select.cc:
- Pass the FROM clause to setup_tables.
- Pass the end table to find_field_in_tables
- Improved comments
sql/sql_show.cc:
- Set SELECT_LEX::parent_lex.
sql/sql_update.cc:
- Pass the FROM clause to setup_tables.
sql/sql_yacc.yy:
- Added support for a stack of name resolution contexts needed to
implement name resolution for JOIN ... ON. A context is pushed
for each new JOIN ... ON, and popped afterwards.
- Added support for NATURAL/USING joins.
sql/table.cc:
- Added new class Natural_join_column to hide the heterogeneous
representation of column references for stored tables and for
views.
- Added a new list TABLE_LIST::next_name_resolution_table to
support name resolution with NATURAL/USING joins. Also added
other members to TABLE_LIST to support NATURAL/USING joins.
- Added a generic iterator over the fields of table references
of various types - class Field_iterator_table_ref
sql/table.h:
- Added new class Natural_join_column to hide the heterogeneous
representation of column references for stored tables and for
views.
- Added a new list TABLE_LIST::next_name_resolution_table to
support name resolution with NATURAL/USING joins. Also added
other members to TABLE_LIST to support NATURAL/USING joins.
- Added a generic iterator over the fields of table references
of various types - class Field_iterator_table_ref
tests/mysql_client_test.c:
Adjusted according to standard NATURAL JOIN syntax.
frequently used command sequence replaced with inline function
BitKeeper/etc/config:
logging switching off
mysql-test/r/lowercase_view.result:
hided view underlying tables from error message
mysql-test/r/view.result:
hided view underlying tables from error message
mysql-test/t/lowercase_view.test:
hided view underlying tables from error message
mysql-test/t/view.test:
hided view underlying tables from error message
sql/mysql_priv.h:
subroutine which return correct error message
sql/share/errmsg.txt:
new error message
sql/sql_base.cc:
subroutine which issue correct error message in case of view presence for duplicated table on update
sql/sql_delete.cc:
issue correct error message in case of view presence for duplicated table on update
sql/sql_insert.cc:
issue correct error message in case of view presence for duplicated table on update
sql/sql_parse.cc:
issue correct error message in case of view presence for duplicated table on update
sql/sql_update.cc:
issue correct error message in case of view presence for duplicated table on update
sql/sql_view.cc:
frequently used command sequence replaced with inline function
sql/table.cc:
frequently used command sequence replaced with inline function
sql/table.h:
frequently used command sequence replaced with inline function
into mysql.com:/home/my/mysql-5.0
BitKeeper/etc/ignore:
auto-union
BitKeeper/deleted/.del-ctype_cp932.test:
Auto merged
BitKeeper/deleted/.del-isam.test~834fb0ee8196c445:
Auto merged
include/thr_lock.h:
Auto merged
mysql-test/t/alias.test:
Auto merged
mysql-test/t/alter_table.test:
Auto merged
mysql-test/t/archive.test:
Auto merged
mysql-test/t/backup.test:
Auto merged
mysql-test/t/bool.test:
Auto merged
mysql-test/t/connect.test:
Auto merged
mysql-test/t/count_distinct2.test:
Auto merged
mysql-test/t/create.test:
Auto merged
mysql-test/t/ctype_many.test:
Auto merged
mysql-test/t/ctype_ucs_binlog.test:
Auto merged
mysql-test/t/date_formats.test:
Auto merged
mysql-test/t/delayed.test:
Auto merged
mysql-test/t/derived.test:
Auto merged
mysql-test/t/distinct.test:
Auto merged
mysql-test/t/drop.test:
Auto merged
mysql-test/t/endspace.test:
Auto merged
mysql-test/t/flush.test:
Auto merged
mysql-test/t/fulltext.test:
Auto merged
mysql-test/t/fulltext_order_by.test:
Auto merged
mysql-test/t/func_compress.test:
Auto merged
mysql-test/t/func_concat.test:
Auto merged
mysql-test/t/func_date_add.test:
Auto merged
mysql-test/t/func_equal.test:
Auto merged
mysql-test/t/func_if.test:
Auto merged
mysql-test/t/func_sapdb.test:
Auto merged
mysql-test/t/func_set.test:
Auto merged
mysql-test/t/func_str.test:
Auto merged
mysql-test/t/gis-rtree.test:
Auto merged
mysql-test/t/gis.test:
Auto merged
mysql-test/t/grant.test:
Auto merged
mysql-test/t/grant2.test:
Auto merged
mysql-test/t/grant_cache.test:
Auto merged
mysql-test/t/heap.test:
Auto merged
mysql-test/t/heap_btree.test:
Auto merged
mysql-test/t/heap_hash.test:
Auto merged
mysql-test/t/init_connect.test:
Auto merged
mysql-test/t/insert_select.test:
Auto merged
mysql-test/t/insert_update.test:
Auto merged
mysql-test/t/key.test:
Auto merged
mysql-test/t/keywords.test:
Auto merged
mysql-test/t/limit.test:
Auto merged
mysql-test/t/lock.test:
Auto merged
mysql-test/t/lowercase_table.test:
Auto merged
mysql-test/t/lowercase_table3.test:
Auto merged
mysql-test/t/merge.test:
Auto merged
mysql-test/t/mix_innodb_myisam_binlog.test:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysql-test/t/mysqlbinlog2.test:
Auto merged
mysql-test/t/ndb_alter_table.test:
Auto merged
mysql-test/t/ndb_autodiscover.test:
Auto merged
mysql-test/t/ndb_charset.test:
Auto merged
mysql-test/t/ndb_grant.later:
Auto merged
mysql-test/t/ndb_index_ordered.test:
Auto merged
mysql-test/t/ndb_index_unique.test:
Auto merged
mysql-test/t/ndb_restore.test:
Auto merged
mysql-test/t/ndb_types.test:
Auto merged
mysql-test/t/ndb_update.test:
Auto merged
mysql-test/t/null.test:
Auto merged
mysql-test/t/null_key.test:
Auto merged
mysql-test/t/olap.test:
Auto merged
mysql-test/t/openssl_1.test:
Auto merged
mysql-test/t/order_by.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/ps_1general.test:
Auto merged
mysql-test/t/ps_4heap.test:
Auto merged
mysql-test/t/ps_5merge.test:
Auto merged
mysql-test/t/query_cache.test:
Auto merged
mysql-test/t/replace.test:
Auto merged
mysql-test/t/row.test:
Auto merged
mysql-test/t/rpl000001.test:
Auto merged
mysql-test/t/rpl000015.test:
Auto merged
mysql-test/t/rpl000017.test:
Auto merged
mysql-test/t/rpl000018.test:
Auto merged
mysql-test/t/rpl_EE_error.test:
Auto merged
mysql-test/t/rpl_change_master.test:
Auto merged
mysql-test/t/rpl_charset.test:
Auto merged
mysql-test/t/rpl_create_database.test:
Auto merged
mysql-test/t/rpl_ddl.test:
Auto merged
mysql-test/t/rpl_deadlock.test:
Auto merged
mysql-test/t/rpl_empty_master_crash.test:
Auto merged
mysql-test/t/rpl_error_ignored_table.test:
Auto merged
mysql-test/t/rpl_flush_log_loop.test:
Auto merged
mysql-test/t/rpl_flush_tables.test:
Auto merged
mysql-test/t/rpl_get_lock.test:
Auto merged
mysql-test/t/rpl_heap.test:
Auto merged
mysql-test/t/rpl_loaddata.test:
Auto merged
mysql-test/t/rpl_loaddata_rule_m.test:
Auto merged
mysql-test/t/rpl_log.test:
Auto merged
mysql-test/t/rpl_log_pos.test:
Auto merged
mysql-test/t/rpl_max_relay_size.test:
Auto merged
mysql-test/t/rpl_multi_query.test:
Auto merged
mysql-test/t/rpl_openssl.test:
Auto merged
mysql-test/t/rpl_redirect.test:
Auto merged
mysql-test/t/rpl_relayrotate.test:
Auto merged
mysql-test/t/rpl_replicate_do.test:
Auto merged
mysql-test/t/rpl_reset_slave.test:
Auto merged
mysql-test/t/rpl_server_id2.test:
Auto merged
mysql-test/t/rpl_temporary.test:
Auto merged
mysql-test/t/rpl_timezone.test:
Auto merged
mysql-test/t/rpl_user_variables.test:
Auto merged
mysql-test/t/show_check.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
mysql-test/t/symlink.test:
Auto merged
mysql-test/t/synchronization.test:
Auto merged
mysql-test/t/system_mysql_db.test:
Auto merged
mysql-test/t/system_mysql_db_fix.test:
Auto merged
mysql-test/t/temp_table.test:
Auto merged
mysql-test/t/timezone2.test:
Auto merged
mysql-test/t/timezone_grant.test:
Auto merged
mysql-test/t/type_float.test:
Auto merged
mysql-test/t/type_ranges.test:
Auto merged
mysql-test/t/type_timestamp.test:
Auto merged
mysql-test/t/union.test:
Auto merged
mysql-test/t/update.test:
Auto merged
mysql-test/t/user_var-binlog.test:
Auto merged
mysql-test/t/warnings.test:
Auto merged
mysys/thr_lock.c:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_select.cc:
Auto merged
support-files/mysql.spec.sh:
Auto merged
BitKeeper/deleted/.del-rpl_trunc_binlog.test~961b1f6ac73d37c8:
Simple merge
mysql-test/r/ps_grant.result:
Simple merge
mysql-test/t/analyse.test:
Simple merge
mysql-test/t/auto_increment.test:
Simple merge
mysql-test/t/bdb.test:
Simple merge
mysql-test/t/bigint.test:
Simple merge
mysql-test/t/case.test:
Simple merge
mysql-test/t/cast.test:
Simple merge
mysql-test/t/check.test:
Simple merge
mysql-test/t/count_distinct.test:
Simple merge
mysql-test/t/ctype_latin1_de.test:
Simple merge
mysql-test/t/ctype_uca.test:
Simple merge
mysql-test/t/ctype_ucs.test:
Simple merge
mysql-test/t/ctype_utf8.test:
Simple merge
mysql-test/t/delete.test:
Simple merge
mysql-test/t/flush_block_commit.test:
Simple merge
mysql-test/t/func_default.test:
Simple merge
mysql-test/t/func_gconcat.test:
Simple merge
mysql-test/t/func_group.test:
Aligned code with 4.1
mysql-test/t/func_in.test:
Simple merge
mysql-test/t/func_math.test:
Simple merge
mysql-test/t/func_misc.test:
Simple merge
mysql-test/t/func_test.test:
Simple merge
mysql-test/t/func_time.test:
Simple merge
mysql-test/t/group_by.test:
Simple merge
mysql-test/t/having.test:
Simple merge
mysql-test/t/innodb.test:
Simple merge
mysql-test/t/insert.test:
Simple merge
mysql-test/t/join_outer.test:
Simple merge
mysql-test/t/kill.test:
Simple merge
mysql-test/t/loaddata.test:
Simple merge
mysql-test/t/lock_multi.test:
Simple merge
mysql-test/t/multi_update.test:
Simple merge
mysql-test/t/mysqlbinlog.test:
Simple merge
mysql-test/t/mysqldump.test:
Aligned code with 4.1
mysql-test/t/mysqltest.test:
Simple merge
mysql-test/t/ndb_basic.test:
Simple merge
mysql-test/t/ndb_cache.test:
Simple merge
mysql-test/t/ndb_subquery.test:
Simple merge
mysql-test/t/ps_grant.test:
Simple merge
mysql-test/t/range.test:
Simple merge
mysql-test/t/rpl_drop_temp.test:
Simple merge
mysql-test/t/rpl_loaddata_rule_s.test:
Simple merge
mysql-test/t/rpl_loaddatalocal.test:
Simple merge
mysql-test/t/rpl_rotate_logs.test:
Simple merge
mysql-test/t/rpl_until.test:
Simple merge
mysql-test/t/rpl_variables.test:
Simple merge
mysql-test/t/select.test:
Simple merge
mysql-test/t/sql_mode.test:
Simple merge
mysql-test/t/type_blob.test:
Simple merge
mysql-test/t/type_decimal.test:
Simple merge
mysql-test/t/user_var.test:
Simple merge
mysql-test/t/variables.test:
Simple merge
sql/lock.cc:
Simple optimization
sql/mysql_priv.h:
Simple merge
sql/sql_table.cc:
Simple merge
sql/table.cc:
Simple merge
sql/unireg.cc:
Simple merge
Change argument order to be database, tablename for some functions
sql/lock.cc:
Remove not needed block
sql/mysql_priv.h:
Change argument order to be database, tablename (like in most other functions)
sql/sql_table.cc:
Change argument order to be database, tablename (like in most other functions)
Make 'flags' inline
sql/table.cc:
Change argument order to be database, tablename (like in most other functions)
sql/unireg.cc:
Change argument order to be database, tablename (like in most other functions)
into mysql.com:/home/jimw/my/mysql-5.0-clean
mysql-test/r/create.result:
Auto merged
mysql-test/r/func_str.result:
Auto merged
mysql-test/t/func_str.test:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/sql_table.cc:
Auto merged
mysql-test/t/create.test:
Resolve conflict
sql/mysql_priv.h:
Resolve conflict
sql/table.cc:
Resolve conflict
sql/unireg.cc:
Resolve conflict
non-existent database. (Bug #10407)
mysql-test/r/create.result:
Update results
mysql-test/t/create.test:
Update error numbers
sql/mysql_priv.h:
Adjust some other function signature so table and db information
is passed down into create_frm().
sql/sql_table.cc:
Check for database not existing after hitting an error when
copying the .frm file for 'CREATE TABLE ... LIKE ...', and
pass table and db name into rea_create_table().
sql/table.cc:
Generate specific error message when .frm creation fails because
the database does not exist.
sql/unireg.cc:
Pass database and table name down into create_frm().
into mysql.com:/home/jimw/my/mysql-5.0-clean
VC++Files/sql/mysqld.dsp:
Auto merged
sql/ha_federated.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_insert.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.cc:
Auto merged
sql/item_strfunc.cc:
SCCS merged
include/my_bitmap.h:
new bitmap operation
mysql-test/r/view.result:
added warnings
Correct inserting data check (absence of default value) for view underlying tables (BUG#6443)
mysql-test/t/view.test:
Correct inserting data check (absence of default value) for view underlying tables (BUG#6443)
mysys/my_bitmap.c:
new bitmap operation
sql/field.h:
index of field in table added
sql/item.cc:
Name resolution context added
table list removed from fix_fields() arguments
sql/item.h:
Name resolution context added
table list removed from fix_fields() arguments
sql/item_cmpfunc.cc:
table list removed from fix_fields() arguments
sql/item_cmpfunc.h:
table list removed from fix_fields() arguments
sql/item_func.cc:
table list removed from fix_fields() arguments
sql/item_func.h:
table list removed from fix_fields() arguments
sql/item_row.cc:
table list removed from fix_fields() arguments
sql/item_row.h:
table list removed from fix_fields() arguments
sql/item_strfunc.cc:
fixed server crash on NULL argument
sql/item_strfunc.h:
table list removed from fix_fields() arguments
sql/item_subselect.cc:
table list removed from fix_fields() arguments
sql/item_subselect.h:
table list removed from fix_fields() arguments
sql/item_sum.cc:
table list removed from fix_fields() arguments
sql/item_sum.h:
table list removed from fix_fields() arguments
sql/item_timefunc.cc:
table list removed from fix_fields() arguments
sql/item_timefunc.h:
table list removed from fix_fields() arguments
sql/item_uniq.h:
table list removed from fix_fields() arguments
sql/log_event.cc:
Name resolution context added
sql/log_event.h:
Name resolution context added
sql/mysql_priv.h:
Name resolution context added
sql/set_var.cc:
table list removed from fix_fields() arguments
sql/share/errmsg.txt:
new error message
sql/sp.cc:
Name resolution context added
sql/sp_head.cc:
table list removed from fix_fields() arguments
sql/sp_head.h:
Name resolution context added
sql/sql_base.cc:
table list removed from fix_fields() arguments
Name resolution context added
sql/sql_class.cc:
renamed variable
sql/sql_delete.cc:
Name resolution context added
sql/sql_derived.cc:
Name resolution context added
sql/sql_do.cc:
table list removed from fix_fields() arguments
sql/sql_handler.cc:
Name resolution context added
sql/sql_help.cc:
Name resolution context added
sql/sql_insert.cc:
Name resolution context added
table list removed from fix_fields() arguments
sql/sql_lex.cc:
Name resolution context added
sql/sql_lex.h:
removed resolve mode (information stored into name resolution context)
sql/sql_load.cc:
table list removed from fix_fields() arguments
sql/sql_olap.cc:
Name resolution context added
sql/sql_parse.cc:
Name resolution context added
sql/sql_prepare.cc:
table list removed from fix_fields() arguments
sql/sql_select.cc:
table list removed from fix_fields() arguments
sql/sql_show.cc:
Name resolution context added
sql/sql_trigger.cc:
table list removed from fix_fields() arguments
sql/sql_udf.h:
table list removed from fix_fields() arguments
sql/sql_union.cc:
Name resolution context added
sql/sql_update.cc:
Name resolution context added
sql/sql_view.cc:
Name resolution context added
sql/sql_view.h:
table list removed from fix_fields() arguments
sql/sql_yacc.yy:
Name resolution context added
sql/table.cc:
Name resolution context added
merged view processing moved
sql/table.h:
merged view processing moved
mysql-test/r/key.result:
Add new results
mysql-test/t/key.test:
Add new regression test
sql/table.cc:
Use keyinfo->key_parts to determine if key is part of a
multiple-field key or is unique.
Fix GCC 4.0 link failure.
Better CXX_VERSION guessing.
config/ac-macros/misc.m4:
Better CXX_VERSION guessing.
configure.in:
CXX_VERSION guessing moved to misc.m4.
HAVE_EXPLICIT_TEMPLATE_INSTANTIATION moved to config.h.
Use compiler AR with MIPSpro and Forte instead of instantiating templates explicitly.
extra/yassl/src/crypto_wrapper.cpp:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
extra/yassl/src/template_instnt.cpp:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
extra/yassl/src/yassl_int.cpp:
GCC 4.0 link fix. This file needs __cxa_pure_virtual.
extra/yassl/taocrypt/include/runtime.hpp:
Fix GCC 4.0 link failure. Instruct compiler to always emit __cxa_pure_virtual even if
it seems to be never used.
extra/yassl/taocrypt/include/types.hpp:
Include config.h.
extra/yassl/taocrypt/src/algebra.cpp:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
extra/yassl/taocrypt/src/dh.cpp:
GCC 4.0 link fix. This file needs __cxa_pure_virtual.
extra/yassl/taocrypt/src/dsa.cpp:
GCC 4.0 link fix. This file needs __cxa_pure_virtual.
extra/yassl/taocrypt/src/integer.cpp:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
extra/yassl/taocrypt/src/rsa.cpp:
GCC 4.0 link fix. This file needs __cxa_pure_virtual.
extra/yassl/taocrypt/src/template_instnt.cpp:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/field.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/item.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/item_buff.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/mysqld.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/opt_range.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/set_var.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/slave.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/sql_acl.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/sql_class.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/sql_insert.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/sql_map.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/sql_select.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/sql_show.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
sql/table.cc:
EXPLICIT_TEMPLATE_INSTANTIATION renamed to HAVE_EXPLICIT_TEMPLAE_INSTANTIATION.
into mysql.com:/home/svoj/devel/mysql/yassl-mysql-5.0
sql/item_buff.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/table.cc:
Auto merged
Fix for yaSSL link failures with Forte Developer 7, MIPSpro Compilers, Compaq C++.
These compilers have problem with implicit template instantiation in archives
(libyassl.a, libtaocrypt.a). Instantiate templates explicitly.
Fix for yaSSL link failure on powermacg5 (gcc 3.3). When -O3 is specified gcc inlines
__cxa_pure_virtual. This is wrong behavior, __cxa_pure_virtual must never be inlined.
configure.in:
Better CXX_VERSION guessing.
EXPLICIT_TEMPLATE_INSTANTIATION macro indicates whether to instantiate templates explicitly.
Instantiate templates explicitly on MIPSpro, Compaq, Forte.
extra/yassl/src/crypto_wrapper.cpp:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
extra/yassl/src/template_instnt.cpp:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
More portable templates instantiation.
extra/yassl/src/yassl_int.cpp:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
More portable templates instantiation.
extra/yassl/taocrypt/include/runtime.hpp:
Fix for link failure on powermacg5 (gcc 3.3). __cxa_pure_virtual must never be inlined.
extra/yassl/taocrypt/src/algebra.cpp:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
extra/yassl/taocrypt/src/integer.cpp:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
extra/yassl/taocrypt/src/template_instnt.cpp:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/field.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/item.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/item_buff.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/mysqld.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/opt_range.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/set_var.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/slave.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/sql_acl.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/sql_class.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/sql_insert.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/sql_map.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/sql_select.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/sql_show.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
sql/table.cc:
Replace __GNUC__ by EXPLICIT_TEMPLATE_INSTANTIATION.
VC++Files/sql/mysqld.dsp:
Link debug server against debug yassl
sql/examples/ha_archive.cc:
Fix type for variables used to store number of rows
Add cast when reading current position
sql/examples/ha_archive.h:
Fix variables used to store rows to ha_rows
sql/ha_federated.cc:
Remove unused variables, fix type of variable used to store query id
sql/item_strfunc.cc:
Remove unused variables
sql/sql_acl.cc:
Remove unused variables
sql/sql_lex.cc:
Add casts to fix type used for counting number of rows
sql/sql_lex.h:
Fix size of options to be ulong again
sql/sql_insert.cc:
Fix type of query id value
sql/sql_union.cc:
Cast value for number of rows to ha_rows
sql/sql_yacc.yy:
Remove unused variable
sql/table.cc:
Add casts for handling key_part lengths
Implement new SQL mode - NO_ENGINE_SUBSTITUTION
mysql-test/r/sql_mode.result:
Test for bug 6877
mysql-test/t/sql_mode.test:
Test for bug 6877
sql/handler.cc:
change to ha_checktype()
sql/handler.h:
change to ha_checktype()
sql/mysql_priv.h:
new sql mode NO_ENGINE_SUBSTITUTION
change to args for get_table_type() and create_frm()
sql/mysqld.cc:
new sql mode NO_ENGINE_SUBSTITUTION
sql/set_var.cc:
change to ha_checktype() args
sql/sql_delete.cc:
change to get_table_type() args
sql/sql_rename.cc:
change to get_table_type() args
sql/sql_table.cc:
move common code to check_engine()
change to ha_checktype(), get_table_type() args
sql/table.cc:
change to ha_checktype(), create_frm(), get_table_type() args
sql/unireg.cc:
change to create_frm() args
sql/item_cmpfunc.cc:
Put the buff parameter back in check_stack_overrun().
sql/item_func.cc:
Put the buff parameter back in check_stack_overrun().
sql/item_subselect.cc:
Put the buff parameter back in check_stack_overrun().
sql/mysql_priv.h:
Put the buff parameter back in check_stack_overrun().
sql/mysqld.cc:
Style fixes.
sql/sp_head.cc:
Put the buff parameter back in check_stack_overrun().
sql/sql_parse.cc:
Put the buff parameter back in check_stack_overrun(), and added comment explaining the purpose.
sql/table.cc:
Put the buff parameter back in check_stack_overrun().
This only showed up on two known platforms, both ia64 (one HP-UX and one Linux wich icc).
For some reason, they only get half the stack size they are supposed to have, which
makes deep SP recursion overrun the stack before check_stack_overrun() is triggered.
Also made som minor fixes in the check_stack_overrun() definition, supporting variable
margins.
No test case added, but the reason for the bug report was a failed existing test case
on these machines, which now works.
sql/item_cmpfunc.cc:
Adopted call to new check_stack_overrun() definition.
sql/item_func.cc:
Adopted calls to new check_stack_overrun() definition.
sql/item_subselect.cc:
Adopted call to new check_stack_overrun() definition.
sql/mysql_priv.h:
Changed definition of check_stack_overrun(), thread_stack_min variable no longer needed.
sql/mysqld.cc:
thread_stack_min variable no longer needed (with variable margin arg. to check_thread_overrun()).
On (at least some) ia64 machines, it seems we only get half the requested stack in reality,
so deep SP recursion crashes before the thread overrun check is triggered.
We work around this by requesting twice the stack requested to get expected size.
sql/sp_head.cc:
Adopted call to new check_stack_overrun() definition, and use a wider margin
execution.
sql/sql_parse.cc:
Modified check_stack_overrun() definition. Removed unused arg that didn't sever any
purpose, and added a 'margin' argument to support different margins for different
callrers.
sql/table.cc:
Adopted call to new check_stack_overrun() definition.
We will however give a warning when opening such a table that users should use ALTER TABLE ... FORCE to fix
the table. In future release we will fix that REPAIR TABLE will be able to handle this case
sql/sql_lex.h:
Support for ALTER TABLE ... FORCE
sql/sql_table.cc:
CHECK TABLE now gives a note if table->s->crashed was set
sql/sql_yacc.yy:
Support for ALTER TABLE ... FORCE
sql/table.cc:
Fix that we can read tables with the 'older' decimal format used in 5.0.3 & 5.0.4
(Now we store display length in the .frm table while we previously stored precision)
sql/table.h:
Store in TABLE_SHARE version number of MySQL where table was created (or checked)
mysql-test/r/grant_cache.result:
Auto merged
mysql-test/r/merge.result:
Auto merged
mysql-test/t/grant_cache.test:
Auto merged
mysql-test/t/merge.test:
Auto merged
sql/ha_myisammrg.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/handler.h:
Resolve merge
sql/table.cc:
Resolve merge
After review version.
Added a condition for MERGE tables. These do not have unique
indexes. But every key could be a unique key on the underlying
MyISAM table. So get the maximum key length for MERGE tables
instead of the maximum unique key length. This is used for
buffer allocation in write_record().
mysql-test/r/merge.result:
Bug#10400 - Improperly-defined MERGE table crashes with INSERT ... ON DUPLICATE KEY UPDATE
The test result.
mysql-test/t/merge.test:
Bug#10400 - Improperly-defined MERGE table crashes with INSERT ... ON DUPLICATE KEY UPDATE
The test case does not in all cases show the problem
without the bugfix. The improper memory allocation
might get through undetected in many cases.
sql/ha_myisammrg.h:
Bug#10400 - Improperly-defined MERGE table crashes with INSERT ... ON DUPLICATE KEY UPDATE
Set a table_flag for the MERGE engine telling that any index
might be unique without being specified as such.
sql/handler.h:
Bug#10400 - Improperly-defined MERGE table crashes with INSERT ... ON DUPLICATE KEY UPDATE
Added a new table_flag telling that any index
might be unique without being specified as such.
sql/sql_insert.cc:
Bug#10400 - Improperly-defined MERGE table crashes with INSERT ... ON DUPLICATE KEY UPDATE
Changed the freeing of the memory to be symmetric to its
allocation (my_safe_alloc -> my_safe_afree).
This is not directly related to the bug.
sql/table.cc:
Bug#10400 - Improperly-defined MERGE table crashes with INSERT ... ON DUPLICATE KEY UPDATE
Added a condition for MERGE tables. These do not have unique
indexes. But every key could be a unique key on the underlying
MyISAM table. So get the maximum key length for MERGE tables
instead of the maximum unique key length. This is used for
buffer allocation in write_record().
sql/sql_base.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
view.test:
Added test case for bug #8528.
view.result:
Added test case for bug #8528. Fixed other test cases.
mysql-test/r/view.result:
Added test case for bug #8528. Fixed other test cases.
mysql-test/t/view.test:
Added test case for bug #8528.
sql/sql_base.cc:
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
sql/sql_delete.cc:
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
sql/sql_insert.cc:
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
sql/sql_parse.cc:
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
sql/sql_prepare.cc:
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
sql/sql_select.cc:
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
sql/sql_update.cc:
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
sql/sql_view.cc:
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
sql/table.cc:
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
sql/table.h:
Fixed bug #8528.
Representation for single-table views was made similar to
representation for multi-table views.
include/my_global.h:
Auto merged
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/t/select.test:
Auto merged
ndb/src/kernel/blocks/dbtc/Dbtc.hpp:
Auto merged
ndb/src/mgmapi/mgmapi.cpp:
Auto merged
ndb/src/ndbapi/NdbIndexOperation.cpp:
Auto merged
ndb/src/ndbapi/ndberror.c:
Auto merged
ndb/test/ndbapi/testNodeRestart.cpp:
Auto merged
sql/item.h:
Auto merged
sql/item_func.h:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_sum.h:
Auto merged
sql/sql_udf.h:
Auto merged
sql/sql_yacc.yy:
Auto merged
configure.in:
Ignore 4.1 version change
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
merge 4.1
ndb/src/ndbapi/ClusterMgr.cpp:
merge
ndb/test/run-test/Makefile.am:
merge
sql/mysql_priv.h:
merge from 4.1
sql/table.cc:
Merge from 4.1
those from 5.0 with new datatypes. (Bug #10435)
sql/table.cc:
Print distinct version mismatch message when encountering a .frm file with
a version that is not understood.
- fixed bug in join view processing
- postreview fixes (BUG#9398 & BUG#8703)
sql/sql_base.cc:
used original TABLE object to get correct name of table and db
sql/sql_view.cc:
fixed bug of assigning select_lex for join view
sql/table.cc:
comment fixed
stack overflow check added
new method for underlying base table finding
sql/table.h:
comment fixed
new method for underlying base table finding
(For 4.1 tables old 'VARCHAR' fields are converted to true VARCHAR in the next ALTER TABLE)
This ensures that one can use MySQL 5.0 privilege tables with MySQL 4.1
mysql-test/r/information_schema.result:
Update results (for .frm version number change)
mysql-test/r/ndb_autodiscover.result:
Update results (for .frm version number change)
mysql-test/r/ps_1general.result:
Update results (for .frm version number change)
mysql-test/r/show_check.result:
Update results (for .frm version number change)
mysql-test/r/view.result:
Update results (for .frm version number change)
scripts/fill_func_tables.sh:
Ensure that no privilege tables that is used in 4.1 uses VARCHAR
scripts/mysql_create_system_tables.sh:
Ensure that no privilege tables that is used in 4.1 uses VARCHAR
scripts/mysql_fix_privilege_tables.sh:
Fixed bug that made it impossible to run the script from the mysql source dist
scripts/mysql_fix_privilege_tables.sql:
Ensure that no privilege tables that is used in 4.1 uses VARCHAR
sql/sql_table.cc:
Only set create_info->varchar if we are using the new VARCHAR field
sql/table.cc:
Hack to ensure that CHAR's created in 5.0 are not converted to VARCHAR even if the row type is dynamic
(For 4.1 tables old 'VARCHAR' fields are converted to true VARCHAR in the next ALTER TABLE)
sql/mysql_priv.h:
Added 'const' to some arguments
sql/sp_head.cc:
Added comments
code cleanup
acceess -> access
sql/sql_acl.cc:
Simply code by making check_routine_level_acl() available also in embedded server
sql/sql_acl.h:
Added 'const' to some arguments
sql/sql_parse.cc:
Added 'const' to some arguments
Fixed the check_rounte_level_acl() is always called
(old code didn't properly check access privilges if grant_option was not set)
sql/sql_show.cc:
Simplify usage of get_field()
Now we can always call check_some_routine_access()
sql/sql_udf.cc:
Don't give warnings for suspicios UDF's if --log-warnings isn't given
sql/table.cc:
Simplify usage of get_field()
BitKeeper/deleted/.del-create.c~96cecc433c0c2242:
Auto merged
include/my_global.h:
Auto merged
myisam/mi_create.c:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
BitKeeper/deleted/.del-errmsg.txt~f96b7055cac394e:
Auto merged
BitKeeper/deleted/.del-mrg_create.c~b747c8ec2b801f6:
Auto merged
sql/table.cc:
Auto merged
sql/sql_udf.cc:
After merge fix