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.
clean: targets removed
generated *.h files moved to include/
Docs/Images/Makefile.am:
no clean: targets please!
client/Makefile.am:
generated *.h files moved to include/
extra/Makefile.am:
generated *.h files moved to include/
include/Makefile.am:
no clean: targets please!
libmysql/Makefile.am:
generated *.h files moved to include/
libmysql_r/Makefile.am:
generated *.h files moved to include/
libmysqld/Makefile.am:
generated *.h files moved to include/
libmysqld/examples/Makefile.am:
generated *.h files moved to include/
no clean: target please!
ndb/docs/Makefile.am:
no clean: targets please!
scripts/Makefile.am:
SUPERCLEANFILES means nothing
server-tools/instance-manager/Makefile.am:
generated *.h files moved to include/
sql/Makefile.am:
generated *.h files moved to include/
sql/share/Makefile.am:
instead of (incorrectly) duplicating comp_err command line,
call do make in extra/
tools/Makefile.am:
generated *.h files moved to include/
BitKeeper/etc/ignore:
Added include/mysqld_ername.h include/mysqld_error.h include/sql_state.h to the ignore list
fix for binlog+autocommit+tclog
comments, style fixes
libmysqld/libmysqld.rc:
Change mode to -rw-rw-r--
libmysqld/resource.h:
Change mode to -rw-rw-r--
configure.in:
check for getpagesize
include/my_global.h:
typo ?
include/my_pthread.h:
bug in thread_safe_decrement_and_test()
mysql-test/r/bdb.result:
results updated
mysql-test/r/innodb.result:
results updated
mysql-test/r/mix_innodb_myisam_binlog.result:
results updated
mysql-test/r/rpl_relayrotate.result:
results updated
sql/ha_berkeley.cc:
style fixes
sql/ha_innodb.cc:
fixes to follow innodb coding style
sql/handler.cc:
more comments. XA COMMIT ONE PHASE fix.
sql/handler.h:
my_xid -> ulonglong. comments
sql/item_func.cc:
DO RELEASE_LOCK("...") is no cache_stmt
sql/log.cc:
comments, better error messages
sql/log_event.cc:
even in autocommit mode we may need to cache_stmt
xid is ulonglong
sql/log_event.h:
more comments.
sql/mysql_priv.h:
query_id is ulonglong
sql/mysqld.cc:
default value for --log-tc changed
sql/share/errmsg.txt:
better error messages
sql/sql_class.h:
cleanup, comments
sql/sql_delete.cc:
deleting from temporary tables is not always transactional
sql/sql_insert.cc:
insert into temporary table is not always transactional
sql/sql_load.cc:
load data into temp table is not always transactional
sql/sql_parse.cc:
comments. bad merge fixed. xa_state_names[]
sql/sql_table.cc:
create/drop temp table is not always transactional
sql/sql_update.cc:
update temp table is not always transactional
Adding Shift-JIS error messages
for Japanese Windows distributions.
Thanks to Serg for help with a perl program
to merge 4.1 messages into 5.0 format :)
sql/share/errmsg.txt:
Adding Shift-JIS error messages
for Japanese Windows distributions.
Thanks Serg for help :)
include/my_pthread.h:
cleanup. don't use gcc extensions
innobase/include/trx0sys.ic:
Jan's fix for innobase_xa_prepare
innobase/read/read0read.c:
Jan's fix for innobase_xa_prepare
innobase/trx/trx0trx.c:
Jan's fix for innobase_xa_prepare
mysql-test/include/varchar.inc:
test fix
mysql-test/r/ctype_ucs.result:
new log event - all binlog positions are changed :(
mysql-test/r/drop_temp_table.result:
new log event - all binlog positions are changed :(
mysql-test/r/insert_select.result:
new log event - all binlog positions are changed :(
mysql-test/r/mix_innodb_myisam_binlog.result:
new log event - all binlog positions are changed :(
mysql-test/r/myisam.result:
test fix
mysql-test/r/rpl000015.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_change_master.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_charset.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_error_ignored_table.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_flush_log_loop.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_flush_tables.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_loaddata.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_loaddata_rule_m.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_loaddata_rule_s.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_log.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_log_pos.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_max_relay_size.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_relayrotate.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_replicate_do.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_reset_slave.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_rotate_logs.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_server_id1.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_server_id2.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_temporary.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_timezone.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_until.result:
new log event - all binlog positions are changed :(
mysql-test/r/rpl_user_variables.result:
new log event - all binlog positions are changed :(
mysql-test/r/user_var.result:
new log event - all binlog positions are changed :(
mysql-test/t/ctype_ucs.test:
new log event - all binlog positions are changed :(
mysql-test/t/mix_innodb_myisam_binlog.test:
new log event - all binlog positions are changed :(
mysql-test/t/mysqlbinlog.test:
new log event - all binlog positions are changed :(
mysql-test/t/mysqlbinlog2.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_charset.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_error_ignored_table.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_loaddata_rule_m.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_loaddata_rule_s.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_log.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_log_pos.test:
new log event - all binlog positions are changed :(
mysql-test/t/rpl_user_variables.test:
new log event - all binlog positions are changed :(
mysql-test/t/user_var.test:
new log event - all binlog positions are changed :(
mysys/hash.c:
typo fixed
sql/ha_berkeley.cc:
handlerton framework
sql/ha_berkeley.h:
handlerton framework
sql/ha_innodb.cc:
handlerton framework
sql/ha_innodb.h:
handlerton framework
sql/handler.cc:
new transaction handling, handlerton framework, two-phase commit, XA support
sql/handler.h:
new transaction handling, handlerton framework, two-phase commit, XA support
sql/lex.h:
XA commands
sql/log.cc:
new transaction handling, handlerton framework, two-phase commit,
XA support, tc-logging, TC_LOG_MMAP class
sql/log_event.cc:
Xid_log_event
sql/log_event.h:
Xid_log_event, LOG_EVENT_BINLOG_CLOSED_F flag
sql/mysql_priv.h:
wrapper for query_id++
sql/mysqld.cc:
new command-line options --log-tc, --log-tc-size, --tc-heuristic-recover,
new status variables Tc_log_page_size, Tc_log_max_pages_used, Tc_log_page_waits.
init/stop tc logging
sql/set_var.h:
warning fixed
sql/share/errmsg.txt:
XA error messages
sql/sp_head.cc:
s/query_id++/next_query_id()/
sql/sql_base.cc:
typo fixed. new transaction handling.
sql/sql_class.cc:
cleanup of THD.transaction
sql/sql_class.h:
TC_LOG classes, new status variables, new savepoint handling, XA support
sql/sql_insert.cc:
comments
sql/sql_lex.cc:
s/found_colon/found_semicolon/
sql/sql_lex.h:
SQLCOM_XA_xxx, XA related changes in Lex
sql/sql_parse.cc:
cleanup, XA commands, new savepoint handling
sql/sql_repl.cc:
two functions moved to log.cc
sql/sql_repl.h:
two functions moved to log.cc
sql/sql_trigger.cc:
s/lex.name_and_length/lex.ident/
sql/sql_yacc.yy:
XA commands, cleanup
config/ac-macros/character_sets.m4:
added cp932, eucjp_ms character set
include/m_ctype.h:
added cp932, eucjp_ms character set
libmysql/Makefile.shared:
added cp932, eucjp_ms character set
mysys/charset-def.c:
added cp932, eucjp_ms character set
sql/share/charsets/Index.xml:
added cp932, eucjp_ms character set
strings/Makefile.am:
added cp932, eucjp_ms character set
Implement fine-grained control over access to stored procedures
Privileges are cached (same way as existing table/column privs)
mysql-test/include/system_db_struct.inc:
WL#925 - Privileges for stored routines
New system table: procs_priv
mysql-test/r/connect.result:
WL#925 - Privileges for stored routines
New system table: procs_priv
mysql-test/r/grant.result:
WL#925 - Privileges for stored routines
user table has additional privilege attributes
SHOW PRIVILEGES amended
mysql-test/r/grant2.result:
Fix result
mysql-test/r/information_schema.result:
WL#925 - Privileges for stored routines
New system table procs_priv
New user privileges
mysql-test/r/show_check.result:
Fix result
mysql-test/r/sp-security.result:
WL#925 - Privileges for stored routines
Fix existing tests to work with new privileges
New tests for new privileges
mysql-test/r/sp.result:
WL#925 - Privileges for stored routines
Fix SHOW PRIVILEGES results
mysql-test/r/system_mysql_db.result:
WL#925 - Privileges for stored routines
New system table: procs_priv
user and db tables have new privilege attributes
mysql-test/t/grant2.test:
Fix test
mysql-test/t/show_check.test:
Fix test
mysql-test/t/sp-security.test:
WL#925 - Privileges for stored routines
Allow existing tests to run with new privilege checks
New tests for privileges
mysql-test/t/system_mysql_db_fix.test:
WL#925 - Privileges for stored routines
New system table: procs_priv
scripts/mysql_create_system_tables.sh:
WL#925 - Privileges for stored routines
db and user has new privilege attributes
new system table: procs_priv
scripts/mysql_fix_privilege_tables.sql:
WL#925 - Privileges for stored routines
new system table: procs_priv
scripts/mysql_install_db.sh:
WL#925 - Privileges for stored routines
Amend comment
sql/item_func.cc:
WL#925 - Privileges for stored routines
Privilege check for stored FUNCTION routine
sql/lex.h:
WL#925 - Privileges for stored routines
new token ROUTINE
sql/mysql_priv.h:
WL#925 - Privileges for stored routines
New function: check_procedure_access()
sql/mysqld.cc:
WL#925 - Privileges for stored routines
system option automatic-sp-privileges
sql/set_var.cc:
WL#925 - Privileges for stored routines
system option automatic-sp-privileges
sql/share/errmsg.txt:
WL#925 - Privileges for stored routines
rename errormessage to conform:
ER_SP_ACCESS_DENIED_ERROR -> ER_PROCACCESS_DENIED_ERROR
New error messages
ER_NONEXISTING_PROC_GRANT, ER_PROC_AUTO_GRANT_FAIL, ER_PROC_AUTO_REVOKE_FAIL
sql/sp.cc:
WL#925 - Privileges for stored routines
new function: sp_exists_routine()
sql/sp.h:
WL#925 - Privileges for stored routines
new function: sp_exists_routine()
sql/sql_acl.cc:
WL#925 - Privileges for stored routines
Implementation for SP privileges.
Privileges are cached in memory hash.
New functions:
mysql_procedure_grant()
check_grant_procedure()
sp_revoke_privileges()
sp_grant_privileges()
sql/sql_acl.h:
WL#925 - Privileges for stored routines
New privilege bits: CREATE_PROC_ACL, ALTER_PROC_ACL
Alter confusing bit-segments to be shifted
New macros: fix_rights_for_procedure() get_rights_for_procedure()
New functions:
mysql_procedure_grant()
check_grant_procedure()
sp_grant_privileges()
sp_revoke_privileges()
sql/sql_lex.h:
WL#925 - Privileges for stored routines
new all_privileges attribute in LEX
sql/sql_parse.cc:
WL#925 - Privileges for stored routines
Remove function: check_sp_definer_access()
Add handling for SP grants/revokes
Add privilege checks for stored procedure invocation
sql/sql_show.cc:
WL#925 - Privileges for stored routines
update result for SHOW PRIVILEGES
sql/sql_yacc.yy:
WL#925 - Privileges for stored routines
New token ROUTINE
rename some rules
handle CREATE ROUTINE / ALTER ROUTINE privileges
Added new commands CREATE USER and RENAME USER.
Changed behaviour of DROP USER.
Changed an error messages for the new commands.
Docs/mysqld_error.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
include/mysqld_error.h:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Changed an error code for more general use.
mysql-test/r/grant.result:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Changed test results.
mysql-test/r/grant2.result:
WL#2050 - CREATE USER and DROP USER and RENAME USER
New test results.
mysql-test/r/ps_1general.result:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Changed test results.
mysql-test/t/grant.test:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Updated old tests for new behaviour of DROP USER.
It does now implicitly remove all privileges and
does not fail when privileges are still in place.
Fixed a typo, which left an user in the database,
whereby other tests could be confused.
Added a DROP USER for another test user.
mysql-test/t/grant2.test:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Added new tests for the new features.
sql/share/czech/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/danish/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/dutch/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/english/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/estonian/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/french/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/german/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/greek/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/hungarian/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/italian/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/japanese/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/korean/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/norwegian-ny/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/norwegian/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/polish/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/portuguese/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/romanian/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/russian/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/serbian/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/slovak/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/spanish/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/swedish/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/share/ukrainian/errmsg.txt:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Modified an error message for more general use.
sql/sql_acl.cc:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Added a destructor for the GRANT_TABLE object to get
rid of a hash_column in cases where a nonsense row was
read from the privilege tables. Added code to delete
such an object when it is not entered into the
column_priv_hash due to a nonsense row.
Added function comments to two unmodified functions.
Replaced mysql_drop_user() by the implementation of all
of the functions as specified in the Low Level Design.
sql/sql_acl.h:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Added prototypes for new functions.
sql/sql_lex.h:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Added new command codes for CREATE USER and
RENAME USER.
sql/sql_parse.cc:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Added case clauses for the new commands CREATE USER
and RENAME USER.
sql/sql_yacc.yy:
WL#2050 - CREATE USER and DROP USER and RENAME USER
Added syntax for the new commands CREATE USER and
RENAME USER, reworked DROP USER, introduced a new
'user_list' and 'rename_list', renamed the old
'user_list' to 'grant_list'. The difference is that
'grant_list' contains 'grant_user' (with optional
IDENTIFIED BY), while 'user_list' contains 'user'.
Concentrated privilege initializazions into a new
section 'clear_privileges'.
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_view.h:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_innodb.h:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/log.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/share/french/errmsg.txt:
Auto merged
sql/share/greek/errmsg.txt:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.cc:
Auto merged
sql/share/portuguese/errmsg.txt:
Auto merged
sql/share/romanian/errmsg.txt:
Auto merged
sql/share/serbian/errmsg.txt:
Auto merged
sql/share/spanish/errmsg.txt:
Auto merged
sql/share/swedish/errmsg.txt:
Auto merged
sql/mysql_priv.h:
merge
sql/sql_parse.cc:
merge
sql/sql_show.cc:
merge
used only one implementation of format parser of (printf)
fixed multistatement
include/mysqld_error.h:
newerror messages
mysql-test/t/key.test:
unknown error replaced with real error
mysys/my_error.c:
my_error & my_printf_error use my_vsprintf
sql/field_conv.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/ha_innodb.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/handler.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/item.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/item_cmpfunc.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/item_func.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/item_strfunc.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/lock.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/log.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/parse_file.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/procedure.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/protocol.cc:
no need reset thd->lex->found_colon to break multiline sequance now, send_error called too late
sql/repl_failsafe.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/set_var.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/share/czech/errmsg.txt:
new errors converted from unknown error
sql/share/danish/errmsg.txt:
new errors converted from unknown error
sql/share/dutch/errmsg.txt:
new errors converted from unknown error
sql/share/english/errmsg.txt:
new errors converted from unknown error
sql/share/estonian/errmsg.txt:
new errors converted from unknown error
sql/share/french/errmsg.txt:
new errors converted from unknown error
sql/share/german/errmsg.txt:
new errors converted from unknown error
sql/share/greek/errmsg.txt:
new errors converted from unknown error
sql/share/hungarian/errmsg.txt:
new errors converted from unknown error
sql/share/italian/errmsg.txt:
new errors converted from unknown error
sql/share/japanese/errmsg.txt:
new errors converted from unknown error
sql/share/korean/errmsg.txt:
new errors converted from unknown error
sql/share/norwegian-ny/errmsg.txt:
new errors converted from unknown error
sql/share/norwegian/errmsg.txt:
new errors converted from unknown error
sql/share/polish/errmsg.txt:
new errors converted from unknown error
sql/share/portuguese/errmsg.txt:
new errors converted from unknown error
sql/share/romanian/errmsg.txt:
new errors converted from unknown error
sql/share/russian/errmsg.txt:
new errors converted from unknown error
sql/share/serbian/errmsg.txt:
new errors converted from unknown error
sql/share/slovak/errmsg.txt:
new errors converted from unknown error
sql/share/spanish/errmsg.txt:
new errors converted from unknown error
sql/share/swedish/errmsg.txt:
new errors converted from unknown error
sql/share/ukrainian/errmsg.txt:
new errors converted from unknown error
sql/slave.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sp.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sp_head.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_acl.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_analyse.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_base.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_class.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_db.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_delete.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_handler.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_insert.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_load.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_map.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_parse.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
multi-row command fixed
sql/sql_prepare.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
remover send_error ingected from 4.1
sql/sql_rename.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_repl.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_select.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_show.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_table.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_trigger.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_udf.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_update.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_view.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/sql_yacc.yy:
now my_printf_error is not better then my_error, but my_error call is shorter
sql/table.cc:
now my_printf_error is not better then my_error, but my_error call is shorter
strings/my_vsnprintf.c:
* format support added to my_vsprint
BitKeeper/etc/logging_ok:
auto-union
BitKeeper/deleted/.del-Makefile.am:
Auto merged
BitKeeper/deleted/.del-Makefile.am~1:
Delete: Docs/Images/Makefile.am
client/mysqltest.c:
Auto merged
include/mysql.h:
Auto merged
libmysql/libmysql.c:
Auto merged
myisam/mi_check.c:
Auto merged
mysql-test/r/grant.result:
Auto merged
mysql-test/r/ps_1general.result:
Auto merged
mysql-test/t/grant.test:
Auto merged
mysql-test/t/mix_innodb_myisam_binlog.test:
Auto merged
mysql-test/t/ps_1general.test:
Auto merged
sql/field.cc:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/share/french/errmsg.txt:
Auto merged
sql/share/greek/errmsg.txt:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/time.cc:
Auto merged
sql-common/my_time.c:
Auto merged
sql/share/portuguese/errmsg.txt:
Auto merged
sql/share/romanian/errmsg.txt:
Auto merged
sql/share/serbian/errmsg.txt:
Auto merged
sql/share/spanish/errmsg.txt:
Auto merged
sql/share/swedish/errmsg.txt:
Auto merged
configure.in:
Merge with 4.0
mysql-test/r/mix_innodb_myisam_binlog.result:
Merge with 4.0
mysys/default.c:
Merge with 4.1 (to get new extension handling)
sql/log.cc:
Merge with 4.0
tests/client_test.c:
Merge with 4.1 (to get possibility to run any tests)
include/mysqld_error.h:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
mysql-test/r/rpl_charset.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/rpl_charset.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/filesort.cc:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/ha_innodb.h:
Auto merged
sql/handler.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_row.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/item_uniq.h:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/parse_file.cc:
Auto merged
sql/protocol.cc:
Auto merged
sql/protocol.h:
Auto merged
sql/protocol_cursor.cc:
Auto merged
sql/repl_failsafe.cc:
Auto merged
sql/repl_failsafe.h:
Auto merged
sql/set_var.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
sql/sp.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_analyse.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_db.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_error.cc:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_repl.h:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_show.cc:
Auto merged
sql/share/czech/errmsg.txt:
Auto merged
sql/share/danish/errmsg.txt:
Auto merged
sql/share/dutch/errmsg.txt:
Auto merged
sql/share/english/errmsg.txt:
Auto merged
sql/share/estonian/errmsg.txt:
Auto merged
sql/share/french/errmsg.txt:
Auto merged
sql/share/german/errmsg.txt:
Auto merged
sql/share/greek/errmsg.txt:
Auto merged
sql/share/hungarian/errmsg.txt:
Auto merged
sql/share/italian/errmsg.txt:
Auto merged
sql/share/japanese/errmsg.txt:
Auto merged
sql/share/korean/errmsg.txt:
Auto merged
sql/share/norwegian-ny/errmsg.txt:
Auto merged
sql/share/norwegian/errmsg.txt:
Auto merged
sql/share/polish/errmsg.txt:
Auto merged
sql/share/portuguese/errmsg.txt:
Auto merged
sql/sql_udf.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
sql/unireg.cc:
Auto merged
sql/share/romanian/errmsg.txt:
Auto merged
sql/share/russian/errmsg.txt:
Auto merged
sql/share/serbian/errmsg.txt:
Auto merged
sql/share/slovak/errmsg.txt:
Auto merged
sql/share/spanish/errmsg.txt:
Auto merged
sql/share/swedish/errmsg.txt:
Auto merged
sql/share/ukrainian/errmsg.txt:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_view.h:
Auto merged
sql/sql_yacc.yy:
Auto merged
include/mysqld_error.h:
no new message in 4.1 (causes merge issues with 5.0)
sql/handler.cc:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/czech/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/danish/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/dutch/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/english/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/estonian/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/french/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/german/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/greek/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/hungarian/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/italian/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/japanese/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/korean/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/norwegian-ny/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/norwegian/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/polish/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/portuguese/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/romanian/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/russian/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/serbian/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/slovak/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/spanish/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/swedish/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
sql/share/ukrainian/errmsg.txt:
no new message in 4.1 (causes merge issues with 5.0)
binlog coordinates corresponding to the dump".
The good news is that now mysqldump can be used to get an online backup of InnoDB *which works for
point-in-time recovery and replication slave creation*. Formerly, mysqldump --master-data --single-transaction
used to call in fact mysqldump --master-data, so the dump was not an online dump (took big lock all time of dump).
The only lock which is now taken in this patch is at the beginning of the dump: mysqldump does:
FLUSH TABLES WITH READ LOCK; START TRANSACTION WITH CONSISTENT SNAPSHOT; SHOW MASTER STATUS; UNLOCK TABLES;
so the lock time is in fact the time FLUSH TABLES WITH READ LOCK takes to return (can be 0 or very long, if
a table is undergoing a huge update).
I have done some more minor changes listed in the paragraph of mysqldump.c.
WL#2237 "WITH CONSISTENT SNAPSHOT clause for START TRANSACTION":
it's a START TRANSACTION which additionally starts a consistent read on all
capable storage engine (i.e. InnoDB). So, can serve as a replacement for
BEGIN; SELECT * FROM some_innodb_table LIMIT 1; which starts a consistent read too.
client/mysqldump.c:
Main change: mysqldump --single-transaction --master-data is now able to, at the same time,
take an online dump of InnoDB (using consistent read) AND get the binlog position corresponding to this dump
(before, using the two options used to silently cancel --single-transaction).
This uses the new START TRANSACTION WITH CONSISTENT SNAPSHOT syntax.
Additional changes:
a) cleanup:
- DBerror calls exit() so some code was unneeded
- no need to call COMMIT at end, leave disconnection do the job
- mysql_query_with_error_report()
b) requirements I had heard from colleagues:
- --master-data now requires an argument, to comment out ("--") the CHANGE MASTER or not
(commenting had been asked for point-in-time recovery when replication is not necessary).
- --first-slave is renamed to --lock-all-tables
c) more sensible behaviours (has been discussed internally):
- if used with --master-data, --flush-logs is probably intended to get a flush synchronous
with the dump, not one random flush per dumped db.
- disabled automatic reconnection as, at least, SQL_MODE would be lost (and also, depending
on options, LOCK TABLES, BEGIN, FLUSH TABLES WITH READ LOCK).
include/mysqld_error.h:
an error if START TRANSACTION WITH CONSISTENT SNAPSHOT is called and there is no consistent-read capable storage engine
(idea ((C) PeterG) is that it's a bit like CREATE TABLE ENGINE=InnoDB when there is no support for InnoDB).
sql/handler.cc:
new ha_start_consistent_snapshot(), which, inside an existing transaction, starts a consistent read
(offers an alternative to SELECTing any InnoDB table). Does something only for InnoDB.
Warning if no suitable engine supported.
sql/handler.h:
declarations
sql/lex.h:
symbols for lex
sql/share/czech/errmsg.txt:
new message
sql/share/danish/errmsg.txt:
new message
sql/share/dutch/errmsg.txt:
new message
sql/share/english/errmsg.txt:
new message
sql/share/estonian/errmsg.txt:
new message
sql/share/french/errmsg.txt:
new message
sql/share/german/errmsg.txt:
new message
sql/share/greek/errmsg.txt:
new message
sql/share/hungarian/errmsg.txt:
new message
sql/share/italian/errmsg.txt:
new message
sql/share/japanese/errmsg.txt:
new message
sql/share/korean/errmsg.txt:
new message
sql/share/norwegian-ny/errmsg.txt:
new message
sql/share/norwegian/errmsg.txt:
new message
sql/share/polish/errmsg.txt:
new message
sql/share/portuguese/errmsg.txt:
new message
sql/share/romanian/errmsg.txt:
new message
sql/share/russian/errmsg.txt:
new message
sql/share/serbian/errmsg.txt:
new message
sql/share/slovak/errmsg.txt:
new message
sql/share/spanish/errmsg.txt:
new message
sql/share/swedish/errmsg.txt:
new message
sql/share/ukrainian/errmsg.txt:
new message
sql/sql_lex.h:
new option in lex (transaction options)
sql/sql_parse.cc:
warning comment (never make UNLOCK TABLES commit a transaction, please);
support for starting consistent snapshot.
sql/sql_yacc.yy:
new clause WITH CONSISTENT SNAPSHOT (syntax ok'd by PeterG) for START TRANSACTION.
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
mysql-test/r/sp-security.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/sp-security.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/log_event.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sp_rcontext.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
...and no ALTER privilege either.
For now, only the definer and root can drop or alter an SP.
include/mysqld_error.h:
New access denied error code when dropping/altering stored procedures.
include/sql_state.h:
New access denied error code when dropping/altering stored procedures.
mysql-test/r/sp-error.result:
Removed warning for "unitialized variable", as this popped up in unexpected
places after the access control for drop/alter SPs was added. (And the warning
was wrong and planned to be removed anyway.)
mysql-test/r/sp-security.result:
Added tests for access control on who's allowed to drop and alter SPs.
mysql-test/r/sp.result:
Updated results. (Warning removed.)
mysql-test/t/sp-error.test:
Removed warning for "unitialized variable", as this popped up in unexpected
places after the access control for drop/alter SPs was added. (And the warning
was wrong and planned to be removed anyway.)
mysql-test/t/sp-security.test:
Added tests for access control on who's allowed to drop and alter SPs.
sql/share/czech/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/danish/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/dutch/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/english/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/estonian/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/french/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/german/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/greek/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/hungarian/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/italian/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/japanese/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/korean/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/norwegian-ny/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/norwegian/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/polish/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/portuguese/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/romanian/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/russian/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/serbian/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/slovak/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/spanish/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/swedish/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/share/ukrainian/errmsg.txt:
New access denied error message when dropping/altering stored procedures.
sql/sql_parse.cc:
Added minimal access control for DROP/ALTER PROCEDURE/FUNCTION. Only the definer
and root are allowed to do this.
sql/sql_yacc.yy:
Removed warning for "unitialized variable", as this popped up in unexpected
places after the access control for drop/alter SPs was added. (And the warning
was wrong and planned to be removed anyway.)
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
(WL#2133)
include/mysqld_error.h:
new errors added.
mysql-test/r/rpl_charset.result:
new error
mysql-test/r/rpl_timezone.result:
new error
mysql-test/r/sp-security.result:
more clean error message
mysql-test/r/sp.result:
now error state intercepted correctly
mysql-test/t/connect.test:
new error message
mysql-test/t/rpl_charset.test:
new error message
mysql-test/t/rpl_timezone.test:
new error
mysql-test/t/sp-security.test:
more correct error handling
mysql-test/t/sp.test:
now error state intercepted correctly
sql/ha_innodb.cc:
-1/1 (sent/unsent) error reporting removed
sql/ha_innodb.h:
-1/1 (sent/unsent) error reporting removed
sql/item.cc:
only boolean values should be returned by fix_fields()
sql/item_cmpfunc.cc:
only boolean values should be returned by fix_fields()
sql/item_func.cc:
only boolean values should be returned by fix_fields()
net_printf/send_error calls replaced by my_error family functions
sql/item_row.cc:
only boolean values should be returned by fix_fields()
sql/item_subselect.cc:
only boolean values should be returned by fix_fields()
-1/1 (sent/unsent) error reporting removed
sql/item_subselect.h:
-1/1 (sent/unsent) error reporting removed
sql/item_sum.cc:
only boolean values should be returned by fix_fields()
sql/item_timefunc.cc:
only boolean values should be returned by fix_fields()
sql/item_uniq.h:
only boolean values should be returned by fix_fields()
sql/mysql_priv.h:
-1/1 (sent/unsent) error reporting removed
sql/mysqld.cc:
net_printf/send_error calls replaced by my_error family functions
changes in my_message_sql to support error handling correctly
sql/protocol.cc:
net_printf/send_error calls replaced by my_error family functions
sql/protocol_cursor.cc:
net_printf/send_error calls replaced by my_error family functions
sql/repl_failsafe.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/repl_failsafe.h:
-1/1 (sent/unsent) error reporting removed
sql/set_var.cc:
net_printf/send_error calls replaced by my_error family functions
sql/share/czech/errmsg.txt:
new error messages
sql/share/danish/errmsg.txt:
new error messages
sql/share/dutch/errmsg.txt:
new error messages
sql/share/english/errmsg.txt:
new error messages
sql/share/estonian/errmsg.txt:
new error messages
sql/share/french/errmsg.txt:
new error messages
sql/share/german/errmsg.txt:
new error messages
sql/share/greek/errmsg.txt:
new error messages
sql/share/hungarian/errmsg.txt:
new error messages
sql/share/italian/errmsg.txt:
new error messages
sql/share/japanese/errmsg.txt:
new error messages
sql/share/korean/errmsg.txt:
new error messages
sql/share/norwegian-ny/errmsg.txt:
new error messages
sql/share/norwegian/errmsg.txt:
new error messages
sql/share/polish/errmsg.txt:
new error messages
sql/share/portuguese/errmsg.txt:
new error messages
sql/share/romanian/errmsg.txt:
new error messages
sql/share/russian/errmsg.txt:
new error messages
sql/share/serbian/errmsg.txt:
new error messages
sql/share/slovak/errmsg.txt:
new error messages
sql/share/spanish/errmsg.txt:
new error messages
sql/share/swedish/errmsg.txt:
new error messages
sql/share/ukrainian/errmsg.txt:
new error messages
sql/slave.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/slave.h:
-1/1 (sent/unsent) error reporting removed
sql/sp.cc:
net_printf/send_error calls replaced by my_error family functions
sql/sp_head.cc:
new eror handling support
net_printf/send_error calls replaced by my_error family functions
sql/sp_rcontext.cc:
net_printf/send_error calls replaced by my_error family functions
sql/sql_acl.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/sql_acl.h:
-1/1 (sent/unsent) error reporting removed
sql/sql_base.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_class.cc:
net_printf/send_error calls replaced by my_error family functions
sql/sql_class.h:
my_messhage_sql now set/reset query_error flag
sql/sql_db.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_delete.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_do.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_error.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_handler.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_help.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/sql_insert.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_lex.h:
-1/1 (sent/unsent) error reporting removed
sql/sql_load.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_map.cc:
errors without code removed
sql/sql_parse.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed from mysql_execute_command
sql/sql_prepare.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/sql_repl.cc:
error messages fixed
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/sql_repl.h:
-1/1 (sent/unsent) error reporting removed
sql/sql_select.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_select.h:
-1/1 (sent/unsent) error reporting removed
sql/sql_show.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_table.cc:
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
sql/sql_trigger.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_udf.cc:
net_printf/send_error calls replaced by my_error family functions
sql/sql_union.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_update.cc:
-1/1 (sent/unsent) error reporting removed
net_printf/send_error calls replaced by my_error family functions
sql/sql_view.cc:
-1/1 (sent/unsent) error reporting removed
sql/sql_view.h:
-1/1 (sent/unsent) error reporting removed
sql/sql_yacc.yy:
net_printf/send_error calls replaced by my_error family functions
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.h:
Auto merged
mysql-test/r/sp.result:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.cc:
Auto merged
More tests.
Better error messages.
Fixed bug when checking if we updated all needed columns for INSERT.
Give an error if we encounter a wrong float value during parsing.
Don't print DEFAULT for columns without a default value in SHOW CREATE/SHOW FIELDS.
Fixed UPDATE IGNORE when using STRICT mode.
include/mysqld_error.h:
More error messages for strict mode
include/sql_state.h:
Fixed wrong state
New error message
mysql-test/r/alter_table.result:
Updated results for not automatic default fields
mysql-test/r/auto_increment.result:
Better error messages
mysql-test/r/create.result:
Updated results for not automatic default fields
Better error messages
mysql-test/r/ctype_collate.result:
Updated results for not automatic default fields
mysql-test/r/ctype_latin1_de.result:
Updated results for not automatic default fields
mysql-test/r/ctype_many.result:
Updated results for not automatic default fields
mysql-test/r/ctype_recoding.result:
Updated results for not automatic default fields
mysql-test/r/gis-rtree.result:
Updated results for not automatic default fields
mysql-test/r/gis.result:
Updated results for not automatic default fields
mysql-test/r/innodb.result:
Updated results for not automatic default fields
mysql-test/r/insert.result:
Better error messages
mysql-test/r/insert_select.result:
Better error messages
mysql-test/r/isam.result:
Updated results for not automatic default fields
mysql-test/r/key.result:
Better error messages
mysql-test/r/merge.result:
Updated results for not automatic default fields
mysql-test/r/null.result:
Better error messages
mysql-test/r/null_key.result:
Better error messages
mysql-test/r/ps_1general.result:
Updated results for not automatic default fields
mysql-test/r/select.result:
Drop views that may interfere with later results
mysql-test/r/show_check.result:
Updated results for not automatic default fields
mysql-test/r/sp.result:
Updated results for not automatic default fields
mysql-test/r/strict.result:
More tests
mysql-test/r/type_set.result:
Updated results for not automatic default fields
mysql-test/r/warnings.result:
Better error messages
mysql-test/t/insert.test:
Using wrong float values now gives an error
mysql-test/t/select.test:
Drop views that may interfere with later results
mysql-test/t/strict.test:
More tests
scripts/mysql_fix_privilege_tables.sql:
Add missing DEFAULT's
sql/field.cc:
Fix some strict mode issues for float and double
sql/field.h:
Fix DEFAULT handling
sql/item.cc:
Give an error if we encounter a wrong float value during parsing.
Give an error if we use DEFAULT() on a field that doesn't have a default value.
sql/item.h:
Give an error if we encounter a wrong float value during parsing.
sql/mysqld.cc:
More debug info
sql/share/czech/errmsg.txt:
Better error messages
sql/share/danish/errmsg.txt:
Better error messages
sql/share/dutch/errmsg.txt:
Better error messages
sql/share/english/errmsg.txt:
Better error messages
sql/share/estonian/errmsg.txt:
Better error messages
sql/share/french/errmsg.txt:
Better error messages
sql/share/german/errmsg.txt:
Better error messages
sql/share/greek/errmsg.txt:
Better error messages
sql/share/hungarian/errmsg.txt:
Better error messages
sql/share/italian/errmsg.txt:
Better error messages
sql/share/japanese/errmsg.txt:
Better error messages
sql/share/korean/errmsg.txt:
Better error messages
sql/share/norwegian-ny/errmsg.txt:
Better error messages
sql/share/norwegian/errmsg.txt:
Better error messages
sql/share/polish/errmsg.txt:
Better error messages
sql/share/portuguese/errmsg.txt:
Better error messages
sql/share/romanian/errmsg.txt:
Better error messages
sql/share/russian/errmsg.txt:
Better error messages
sql/share/serbian/errmsg.txt:
Better error messages
sql/share/slovak/errmsg.txt:
Better error messages
sql/share/spanish/errmsg.txt:
Better error messages
sql/share/swedish/errmsg.txt:
Better error messages
sql/share/ukrainian/errmsg.txt:
Better error messages
sql/sql_insert.cc:
Fixed bug in last push of checking of default values.
sql/sql_parse.cc:
Enum fields has always a default value
sql/sql_show.cc:
Don't print DEFAULT for columns without a default value in SHOW CREATE/SHOW FIELDS
sql/sql_table.cc:
Fixed storing/retrieving of NO_DEFAULT_VALUE_FLAG
sql/sql_update.cc:
Don't abort for wrong values for UPDATE IGNORE
sql/sql_yacc.yy:
Abort if we find a wrong float value
sql/table.cc:
Fixed storing/retrieving of NO_DEFAULT_VALUE_FLAG
sql/sql_class.h:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.h:
Auto merged
CHECK OPTION moved to one function
view name added to error messages
mysql-test/r/view.result:
error messages changed
sql/share/czech/errmsg.txt:
view name added
sql/share/danish/errmsg.txt:
view name added
sql/share/dutch/errmsg.txt:
view name added
sql/share/english/errmsg.txt:
view name added
sql/share/estonian/errmsg.txt:
view name added
sql/share/french/errmsg.txt:
view name added
sql/share/german/errmsg.txt:
view name added
sql/share/greek/errmsg.txt:
view name added
sql/share/hungarian/errmsg.txt:
view name added
sql/share/italian/errmsg.txt:
view name added
sql/share/japanese/errmsg.txt:
view name added
sql/share/korean/errmsg.txt:
view name added
sql/share/norwegian-ny/errmsg.txt:
view name added
sql/share/norwegian/errmsg.txt:
view name added
sql/share/polish/errmsg.txt:
view name added
sql/share/portuguese/errmsg.txt:
view name added
sql/share/romanian/errmsg.txt:
view name added
sql/share/russian/errmsg.txt:
view name added
sql/share/serbian/errmsg.txt:
view name added
sql/share/slovak/errmsg.txt:
view name added
sql/share/spanish/errmsg.txt:
view name added
sql/share/swedish/errmsg.txt:
view name added
sql/share/ukrainian/errmsg.txt:
view name added
sql/sql_class.h:
view reference saved
sql/sql_insert.cc:
CHECK OPTION moved to one function
sql/sql_update.cc:
CHECK OPTION moved to one function
sql/sql_view.cc:
view name added to error message
sql/table.cc:
CHECK OPTION moved to one function
sql/table.h:
CHECK OPTION moved to one function
Under strict mode MySQL will generate an error message if there was any conversion when assigning data to a field.
Added checking of date/datetime fields.
If strict mode, give error if we have not given value to field without a default value (for INSERT)
client/mysqltest.c:
Added --exit as an option to abort a test in a middle (good for debugging)
include/my_time.h:
Added flags to allow checking of dates in strict mode
include/mysql_com.h:
Added flag to check if field has a default value or not
include/mysqld_error.h:
New error messages for strict mode
include/sql_state.h:
Fixed SQL states (for strict mode tests)
mysql-test/r/auto_increment.result:
Updated error messages
mysql-test/r/func_sapdb.result:
Added test for ALLOW_INVALID_DATES
mysql-test/r/func_str.result:
Updated error messages
mysql-test/r/func_time.result:
Updated error messages
mysql-test/r/insert.result:
Updated error messages
mysql-test/r/loaddata.result:
Updated error messages
mysql-test/r/select.result:
Updated error messages
mysql-test/r/sp.result:
Updated error messages
mysql-test/r/timezone2.result:
Updated error messages
mysql-test/r/type_datetime.result:
Updated error messages
mysql-test/r/type_decimal.result:
Updated error messages
mysql-test/r/type_float.result:
Updated error messages
mysql-test/r/type_ranges.result:
Updated error messages
mysql-test/r/type_time.result:
Updated error messages
mysql-test/r/type_uint.result:
Updated error messages
mysql-test/r/warnings.result:
Updated error messages
mysql-test/t/func_sapdb.test:
Aded test
sql-common/my_time.c:
Added checking of dates
sql/field.cc:
Better error messages
Optimization of warning handling (by introducing of check_int())
Changed to use my_strtoll10()
sql/field.h:
Added check_int()
sql/item_func.cc:
Warnings when dividing by NULL
sql/item_func.h:
Warnings when dividing by NULL
sql/item_timefunc.cc:
Testing of date/datetime
Use macros instead of constants
sql/mysql_priv.h:
New modes (part of strict mode)
sql/mysqld.cc:
New modes (part of strict mode)
sql/opt_range.cc:
Simple optimizations
sql/protocol.cc:
Add note/warning level to find_handler()
sql/set_var.cc:
Added mode 'traditional'
sql/share/czech/errmsg.txt:
New error messages for strict mode
sql/share/danish/errmsg.txt:
New error messages for strict mode
sql/share/dutch/errmsg.txt:
New error messages for strict mode
sql/share/english/errmsg.txt:
New error messages for strict mode
sql/share/estonian/errmsg.txt:
New error messages for strict mode
sql/share/french/errmsg.txt:
New error messages for strict mode
sql/share/german/errmsg.txt:
New error messages for strict mode
sql/share/greek/errmsg.txt:
New error messages for strict mode
sql/share/hungarian/errmsg.txt:
New error messages for strict mode
sql/share/italian/errmsg.txt:
New error messages for strict mode
sql/share/japanese/errmsg.txt:
New error messages for strict mode
sql/share/korean/errmsg.txt:
New error messages for strict mode
sql/share/norwegian-ny/errmsg.txt:
New error messages for strict mode
sql/share/norwegian/errmsg.txt:
New error messages for strict mode
sql/share/polish/errmsg.txt:
New error messages for strict mode
sql/share/portuguese/errmsg.txt:
New error messages for strict mode
sql/share/romanian/errmsg.txt:
New error messages for strict mode
sql/share/russian/errmsg.txt:
New error messages for strict mode
sql/share/serbian/errmsg.txt:
New error messages for strict mode
sql/share/slovak/errmsg.txt:
New error messages for strict mode
sql/share/spanish/errmsg.txt:
New error messages for strict mode
sql/share/swedish/errmsg.txt:
New error messages for strict mode
sql/share/ukrainian/errmsg.txt:
New error messages for strict mode
sql/sp_rcontext.cc:
Add note/warning level to find_handler()
sql/sp_rcontext.h:
Add note/warning level to find_handler()
sql/sql_base.cc:
Fix bug for detecting crashed table
sql/sql_class.cc:
Variables for strct mode
sql/sql_class.h:
Variables for strct mode
sql/sql_error.cc:
In strict mode, convert warnings to errors
sql/sql_insert.cc:
Strict mode
If strict mode, give error if we have not given value to field without a default value
sql/sql_load.cc:
Strict mode
sql/sql_parse.cc:
Strict mode.
Add flag to field if it doesn't have a default value
sql/sql_select.cc:
Added comment
Prepare for upper level handling of table->status
sql/sql_union.cc:
Added THD to write_record()
sql/sql_update.cc:
Strict mode
sql/table.cc:
Handling of default values
sql/time.cc:
Checking of dates
include/mysqld_error.h:
new error mesaages
mysql-test/r/view.result:
tests of updatint/inserting join views
mysql-test/t/view.test:
tests of updatint/inserting join views
sql/mysql_priv.h:
support of "usual UPDATE" -> "multi UPDATE" conversion
sql/share/czech/errmsg.txt:
new error mesaages
sql/share/danish/errmsg.txt:
new error mesaages
sql/share/dutch/errmsg.txt:
new error mesaages
sql/share/english/errmsg.txt:
new error mesaages
sql/share/estonian/errmsg.txt:
new error mesaages
sql/share/french/errmsg.txt:
new error mesaages
sql/share/german/errmsg.txt:
new error mesaages
sql/share/greek/errmsg.txt:
new error mesaages
sql/share/hungarian/errmsg.txt:
new error mesaages
sql/share/italian/errmsg.txt:
new error mesaages
sql/share/japanese/errmsg.txt:
new error mesaages
sql/share/korean/errmsg.txt:
new error mesaages
sql/share/norwegian-ny/errmsg.txt:
new error mesaages
sql/share/norwegian/errmsg.txt:
new error mesaages
sql/share/polish/errmsg.txt:
new error mesaages
sql/share/portuguese/errmsg.txt:
new error mesaages
sql/share/romanian/errmsg.txt:
new error mesaages
sql/share/russian/errmsg.txt:
new error mesaages
sql/share/serbian/errmsg.txt:
new error mesaages
sql/share/slovak/errmsg.txt:
new error mesaages
sql/share/spanish/errmsg.txt:
new error mesaages
sql/share/swedish/errmsg.txt:
new error mesaages
sql/share/ukrainian/errmsg.txt:
new error mesaages
sql/sql_base.cc:
test to avoid join virew to be catched here
sql/sql_class.h:
support of join views add to update
sql/sql_delete.cc:
support of join views add to delete(error issue)
sql/sql_insert.cc:
support of join views add to insert
(order of some check changed, to allow find table which will be inserted in, when we will know which fields will be inserted)
mechanism of calling setup_tables() only once fixed for INSERT SELECT
sql/sql_parse.cc:
support of "usual UPDATE" -> "multi UPDATE" conversion
mysql_insert_select_prepare now called in same environment for usual queries and PS preparing
support of join views add to delete (error issue)
sql/sql_prepare.cc:
support of "usual UPDATE" -> "multi UPDATE" conversion
support of join views add to delete (error issue)
sql/sql_update.cc:
support of join views add to update
sql/sql_view.cc:
join views made updatable
sql/sql_view.h:
insert_view_fields now can check some errors
sql/table.cc:
methods to support recursive walk by tables tree
sql/table.h:
methods to support recursive walk by tables tree
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/lex.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/share/czech/errmsg.txt:
Auto merged
sql/share/danish/errmsg.txt:
Auto merged
sql/share/dutch/errmsg.txt:
Auto merged
sql/share/english/errmsg.txt:
Auto merged
sql/share/estonian/errmsg.txt:
Auto merged
sql/share/french/errmsg.txt:
Auto merged
sql/share/german/errmsg.txt:
Auto merged
sql/share/greek/errmsg.txt:
Auto merged
sql/share/hungarian/errmsg.txt:
Auto merged
sql/share/italian/errmsg.txt:
Auto merged
sql/share/japanese/errmsg.txt:
Auto merged
sql/share/korean/errmsg.txt:
Auto merged
sql/share/norwegian-ny/errmsg.txt:
Auto merged
sql/share/norwegian/errmsg.txt:
Auto merged
sql/share/polish/errmsg.txt:
Auto merged
sql/share/portuguese/errmsg.txt:
Auto merged
sql/share/romanian/errmsg.txt:
Auto merged
sql/share/russian/errmsg.txt:
Auto merged
sql/share/serbian/errmsg.txt:
Auto merged
sql/share/slovak/errmsg.txt:
Auto merged
sql/share/spanish/errmsg.txt:
Auto merged
sql/share/swedish/errmsg.txt:
Auto merged
sql/share/ukrainian/errmsg.txt:
Auto merged
include/mysqld_error.h:
Manual merge.
sql/Makefile.am:
Manual merge.
sql/mysql_priv.h:
Manual merge.
sql/sp_head.cc:
Manual merge.
sql/sql_lex.cc:
Manual merge.
sql/sql_yacc.yy:
Manual merge.