- 23 Oct, 2006 1 commit
-
-
unknown authored
To the documentor: The DEFAULT value in SHOW COLUMNS/SELECT FROM I_S.COLUMNS was truncated to NAME_LEN (which effectively is 64) characters. mysql-test/r/information_schema.result: Update result Because the length of I_S.COLUMNS.COLUMN_DEFAULT was increased to 65535 the column changed it's type from varchar(64) to longtext The type is longtext if the length is > 65532 (the max varchar len) mysql-test/t/information_schema.test: test case for bug#23037: Bug in field "Default" of query "SHOW COLUMNS FROM table" Both SHOW COLUMNS and I_S.COLUMNS is TESTED as well the value returned by both. Using --replace_regex is unfeasible as the repetition value cannot be > 255. --replace_regex /A{256}/VALUE/ doesn't work, not to talk about /A{65532}/VALUE/ /(A{255}){255}/VALUE/ is awfully slow. Thus, simple function with cursor is used to extract the value. sql/sql_show.cc: Default value can have TIMESTAMP, CHAR, VARCHAR, ENUM VARCHAR can have the longest value, up to 65535. However, because of table handler limitations the actual limit is 65532 characters, latin1 charset. However, here is used MAX_FIELD_VARCHARLENGTH macro, because there could be a storage engine without such limitation.
-
- 08 Aug, 2006 1 commit
-
-
unknown authored
we intentionally reported that for TIMESTAMPS, which isn't right mysql-test/r/type_timestamp.result: result fixed mysql-test/t/type_timestamp.test: testcase added sql/sql_show.cc: remove the check for TIMESTAMP type - all types will report 'NO' if they're defined as NOT NULL
-
- 28 Jul, 2006 1 commit
-
-
unknown authored
'conc_sys' test Concurrent execution of SELECT involing at least two INFORMATION_SCHEMA tables, DROP DATABASE statement and DROP TABLE statement could have resulted in stalled connection for this SELECT statement. The problem was that for the first query of a join there was a race between select from I_S.TABLES and DROP DATABASE, and the error (no such database) was prepared to be send to the client, but the join processing was continued. On second query to I_S.COLUMNS there was a race with DROP TABLE, but this error (no such table) was downgraded to warning, and thd->net.report_error was reset. And so neither result nor error was sent to the client. The solution is to stop join processing once it is clear we are going to report a error, and also to downgrade to warnings file system errors like 'no such database' (unless we are in the 'SHOW' command), because I_S is designed not to use locks and the query to I_S should not abort if something is dropped in the middle. No test case is provided since this bug is a result of a race, and is timing dependant. But we test that plain SHOW TABLES and SHOW COLUMNS give a error if there is no such database or a table respectively. mysql-test/r/show_check.result: Add result for the test that SHOW TABLES and SHOW COLUMNS give a error if there is no such database or a table respectively. mysql-test/t/show_check.test: Add test case that SHOW TABLES and SHOW COLUMNS give a error if there is no such database or a table respectively. sql/mysql_priv.h: Remove prototype of mysql_find_files(), which is made static under find_files() name. sql/sql_show.cc: Rename mysql_find_files() to find_files() and make it static. Return FIND_FILES_OK for success, FIND_FILES_OOM for out of memory, and FIND_FILES_DIR for directory reading error. Downgrade error to warning in get_all_tables() if it is a FIND_FILES_DIR error, and we are not in the 'SHOW' command. Once 'result' is set to 1 in get_schema_tables_result(), there's no need in continuing iterations, as we are about to return a error.
-
- 27 Jul, 2006 1 commit
-
-
unknown authored
Fix for BUG#16676: Database CHARSET not used for stored procedures The problem in BUG#16211 is that CHARSET-clause of the return type for stored functions is just ignored. The problem in BUG#16676 is that if character set is not explicitly specified for sp-variable, the server character set is used instead of the database one. The fix has two parts: - always store CHARSET-clause of the return type along with the type definition in mysql.proc.returns column. "Always" means that CHARSET-clause is appended even if it has not been explicitly specified in CREATE FUNCTION statement (this affects BUG#16211 only). Storing CHARSET-clause if it is not specified is essential to avoid changing character set if the database character set is altered in the future. NOTE: this change is not backward compatible with the previous releases. - use database default character set if CHARSET-clause is not explicitly specified (this affects both BUG#16211 and BUG#16676). NOTE: this also breaks backward compatibility. mysql-test/r/mysqldump.result: Updated result file. mysql-test/r/sp.result: Updated result file. mysql-test/t/sp.test: Provided test cases for BUG#16211, BUG#16676. sql/mysql_priv.h: Added two convenient functions for work with databases. sql/sp.cc: 1. Add CHARSET-clause to CREATE-statement if it has been explicitly specified. 2. Polishing -- provided some comments. sql/sp_head.cc: Use database charset as default charset of sp-variable. sql/sp_head.h: Move init_sp_name() out of init_strings(). sql/sql_db.cc: Two new functions created: - load_db_opt_by_name(); - check_db_dir_existence(); sql/sql_show.cc: Eliminate duplicated code by using check_db_dir_existence() and load_db_opt_by_name() sql/sql_table.cc: Eliminate duplicated code by using check_db_dir_existence() and load_db_opt_by_name() sql/sql_yacc.yy: Call sp_head::init_sp_name() to initialize stored routine name.
-
- 25 Jul, 2006 2 commits
-
-
unknown authored
The fix is: if user has privileges to view fields and user has any (insert,select,delete,update) privileges on underlying view then 'show fields' and select from I_S.COLUMNS table are sucsessful. mysql-test/r/information_schema_db.result: Bug#20543 select on information_schema strange warnings, view, different schemas/users test result mysql-test/t/information_schema_db.test: Bug#20543 select on information_schema strange warnings, view, different schemas/users test case sql/sql_acl.cc: Bug#20543 select on information_schema strange warnings, view, different schemas/users checked that user has privileges on underlying view and if it's true set allowed_show to true for top view. sql/sql_show.cc: Bug#20543 select on information_schema strange warnings, view, different schemas/users removed unnecessary rights check.'tables->allowed_show' check is used instead sql/sql_view.cc: Bug#20543 select on information_schema strange warnings, view, different schemas/users skip the check of SHOW_VIEW_ACL privilege on underlying view. It is done later during execution of find_field_in_table_ref function. sql/table.h: Bug#20543 select on information_schema strange warnings, view, different schemas/users 'allowed_show' is set during rights check for view. If true then user has privileges for 'show create view', etc
-
unknown authored
a non-correlated single-row subquery over information schema. The function get_all_tables filling all information schema tables reset lex->sql_command to SQLCOM_SHOW_FIELDS. After this the function could evaluate partial conditions related to some columns. If these conditions contained a subquery over information schema it led to a wrong evaluation and a wrong result set. This bug was already fixed in 5.1. This patch follows the way how it was done in 5.1 where the value of lex->sql_command is set to SQLCOM_SHOW_FIELDS in get_all_tables only for the calls of the function open_normal_and_derived_tables and is restored after these calls. mysql-test/r/information_schema.result: Added a test case for bug #21231. mysql-test/t/information_schema.test: Added a test case for bug #21231.
-
- 22 Jul, 2006 1 commit
-
-
unknown authored
subqueries on information schema that use MIN/MAX aggregation. Execution of some correlated subqueries may set the value of null_row to 1 for tables used in the subquery. If the the subquery is on information schema it causes rejection of any row for the following executions of the subquery in the case when an optimization filtering by some condition is applied. The fix restores the value of the null_row flag for each execution of a subquery on information schema. mysql-test/r/information_schema.result: Added a test case for bug #18925. mysql-test/t/information_schema.test: Added a test case for bug #18925. sql/sql_show.cc: Fixed bug #18925. Execution of some correlated subqueries may set the value of null_row to 1 for tables used in the subquery. If the the subquery is on information schema it causes rejection of any row for the following execitions of the subquery in the case when an optimization filtering by some condition is applied. The fix restores the value of the null_row flag for each execution of a subquery on information schema.
-
- 29 Jun, 2006 3 commits
-
-
unknown authored
SHOW CREATE PROCEDURE and SHOW CREATE FUNCTION are fixed as well as INFORMATION_SCHEMA.ROUTINES.ROUTINE_NAME. mysql-test/r/information_schema.result: Add result for bug#20230. mysql-test/t/information_schema.test: Add test case for bug#20230. sql/sp_head.cc: Return NULL for routine definition if the user doesn't have enough privilege to see it. sql/sql_show.cc: Make INFORMATION_SCHEMA.ROUTINES.ROUTINE_NAME NULL-able. Return NULL if the user doesn't have enough privilege to see routine definition.
-
unknown authored
Table comment: issue a warning(error in traditional mode) if length of comment > 60 symbols Column comment: issue a warning(error in traditional mode) if length of comment > 255 symbols Table 'comment' is changed from char* to LEX_STRING mysql-test/r/strict.result: test case mysql-test/t/strict.test: test case sql/handler.h: Table 'comment' is changed from char* to LEX_STRING sql/sql_show.cc: Table 'comment' is changed from char* to LEX_STRING sql/sql_table.cc: Table 'comment' is changed from char* to LEX_STRING sql/sql_yacc.yy: Table 'comment' is changed from char* to LEX_STRING sql/table.cc: Table 'comment' is changed from char* to LEX_STRING sql/table.h: Table 'comment' is changed from char* to LEX_STRING sql/unireg.cc: Fix for bug#13934 Silent truncation of table comments Table comment: issue a warning(error in traditional mode) if length of comment > 60 symbols Column comment: issue a warning(error in traditional mode) if length of comment > 255 symbols
-
unknown authored
After view onening real view db name and table name are placed into table_list->view_db & table_list->view_name. Item_field class does not handle these names properly during intialization of Send_field. The fix is to use new class 'Item_ident_for_show' which sets correct view db name and table name for Send_field. sql/item.cc: Bug#19671 mysql_list_fields returns incorrect table name for VIEWs new Item_ident_for_show class which correctly sets view db and table names for Send_field. sql/item.h: Bug#19671 mysql_list_fields returns incorrect table name for VIEWs new Item_ident_for_show class which correctly sets view db and table names for Send_field. sql/sql_show.cc: Bug#19671 mysql_list_fields returns incorrect table name for VIEWs new Item_ident_for_show is used for views tests/mysql_client_test.c: Bug#19671 mysql_list_fields returns incorrect table name for VIEWs test case
-
- 13 Jun, 2006 1 commit
-
-
unknown authored
mysql-test/r/information_schema.result: test result fixed sql/sql_show.cc: /*ALGORITHM=XXX*/ added to the 'query' column in view's information schema
-
- 06 Jun, 2006 1 commit
-
-
unknown authored
fix: return db name for I_S.TABLES(and others) in original letter case. if mysql starts with lower_case_table_names=1 | 2 then original db name is converted to lower case(for I_S tables). It happens when we perform add_table_to_list. to avoid this we make a copy of original db name and use the copy hereafter. mysql-test/r/lowercase_table2.result: Bug#17661 information_schema.SCHEMATA returns uppercase with lower_case_table_names = 1 test case mysql-test/t/lowercase_table2.test: Bug#17661 information_schema.SCHEMATA returns uppercase with lower_case_table_names = 1 test case
-
- 30 May, 2006 1 commit
-
-
unknown authored
Bug#18282 "INFORMATION_SCHEMA.TABLES provides inconsistent info about invalid views" This bug caused crashes or resulted in wrong data being returned when one tried to obtain information from I_S tables about views using stored functions. It was caused by the fact that we were using LEX representing statement which were doing select from I_S tables as active LEX when contents of I_S table were built. So state of this LEX both affected and was affected by open_tables() calls which happened during this process. This resulted in wrong behavior and in violations of some of invariants which caused crashes. This fix tries to solve this problem by properly saving/resetting and restoring part of LEX which affects and is affected by the process of opening tables and views in get_all_tables() routine. To simplify things we separated this part of LEX in a new class and made LEX its descendant. mysql-test/r/information_schema_db.result: test case mysql-test/t/information_schema_db.test: test case sql/sql_lex.cc: To simplify saving/resetting and restoring part of LEX which affects and is affected by the process of opening tables and views we moved it to new class Query_tables_list and made LEX descendant of this class. Also introduced two LEX methods which can be used to save and reset or to restore this state. sql/sql_lex.h: To simplify saving/resetting and restoring part of LEX which affects and is affected by the process of opening tables and views we moved it to new class Query_tables_list and made LEX descendant of this class. Also introduced two LEX methods which can be used to save and reset or to restore this state. sql/sql_show.cc: Now in get_all_tables() routine we properly save/reset and restore part of LEX (statement table list and information about routines used) which affects and is affected by the process of opening tables and views. sql/sql_table.cc: Now we clean-up LEX after opening table (view) in two stages. In the first stage we call LEX::cleanup_after_one_table_open() to clean-up selects lists and derived tables state. In the second stage which happens after close_thread_tables() is invoked we call Query_tables_list::reset_query_tables_list(FALSE) to rollback changes in Query_tables_list.
-
- 23 May, 2006 1 commit
-
-
unknown authored
show view definition to users that have the needed privilleges mysql-test/r/information_schema.result: Bug#16681 information_schema shows forbidden VIEW details test case mysql-test/t/information_schema.test: Bug#16681 information_schema shows forbidden VIEW details test case
-
- 12 May, 2006 2 commits
-
-
unknown authored
replaced get_field(MEM_ROOT *mem, Field *field) with get_field(MEM_ROOT *mem, Field *field, String *res). It allows to avoid strlen(). mysql-test/r/information_schema.result: Fix for bug#18177 any access to INFORMATION_SCHEMA.ROUTINES crashes test case mysql-test/t/information_schema.test: Fix for bug#18177 any access to INFORMATION_SCHEMA.ROUTINES crashes test case
-
unknown authored
mysql-test/r/information_schema.result: Fix for bug#19236 bad COLUMNS.CHARACTER_MAXIMUM_LENGHT and CHARACTER_OCTET_LENGTH test case mysql-test/r/join.result: Fix for bug#19236 bad COLUMNS.CHARACTER_MAXIMUM_LENGHT and CHARACTER_OCTET_LENGTH result fix mysql-test/t/information_schema.test: Fix for bug#19236 bad COLUMNS.CHARACTER_MAXIMUM_LENGHT and CHARACTER_OCTET_LENGTH test case
-
- 04 May, 2006 1 commit
-
-
unknown authored
mysqldump / SHOW CREATE TABLE will show the NEXT available value for the PK, rather than the *first* one that was available (that named in the original CREATE TABLE ... AUTO_INCREMENT = ... statement). This should produce correct and robust behaviour for the obvious use cases -- when no data were inserted, then we'll produce a statement featuring the same value the original CREATE TABLE had; if we dump with values, INSERTing the values on the target machine should set the correct next_ID anyway (and if not, we'll still have our AUTO_INCREMENT = ... to do that). Lastly, just the CREATE statement (with no data) for a table that saw inserts would still result in a table that new values could safely be inserted to). There seems to be no robust way however to see whether the next_ID field is > 1 because it was set to something else with CREATE TABLE ... AUTO_INCREMENT = ..., or because there is an AUTO_INCREMENT column in the table (but no initial value was set with AUTO_INCREMENT = ...) and then one or more rows were INSERTed, counting up next_ID. This means that in both cases, we'll generate an AUTO_INCREMENT = ... clause in SHOW CREATE TABLE / mysqldump. As we also show info on, say, charsets even if the user did not explicitly give that info in their own CREATE TABLE, this shouldn't be an issue. As per above, the next_ID will be affected by any INSERTs that have taken place, though. This /should/ result in correct and robust behaviour, but it may look non-intuitive to some users if they CREATE TABLE ... AUTO_INCREMENT = 1000 and later (after some INSERTs) have SHOW CREATE TABLE give them a different value (say, CREATE TABLE ... AUTO_INCREMENT = 1006), so the docs should possibly feature a caveat to that effect. It's not very intuitive the way it works now (with the fix), but it's *correct*. We're not storing the original value anyway, if we wanted that, we'd have to change on-disk representation? If we do dump/load cycles with empty DBs, nothing will change. This changeset includes an additional test case that proves that tables with rows will create the same next_ID for AUTO_INCREMENT = ... across dump/restore cycles. Confirmed by support as likely solution for client's problem. mysql-test/r/auto_increment.result: test for creation of AUTO_INCREMENT=... clause mysql-test/r/gis-rtree.result: Add AUTO_INCREMENT=... clauses where appropriate mysql-test/r/mysqldump.result: show that AUTO_INCREMENT=... will survive dump/restore cycles mysql-test/r/symlink.result: Add AUTO_INCREMENT=... clauses where appropriate mysql-test/t/auto_increment.test: test for creation of AUTO_INCREMENT=... clause mysql-test/t/mysqldump.test: show that AUTO_INCREMENT=... will survive dump/restore cycles sql/sql_show.cc: Add AUTO_INCREMENT=... to output of SHOW CREATE TABLE if there is an AUTO_INCREMENT column, and NEXT_ID > 1 (the default). We must not print the clause for engines that do not support this as it would break the import of dumps, but as of this writing, the test for whether AUTO_INCREMENT columns are allowed and wether AUTO_INCREMENT=... is supported is identical, !(file->table_flags() & HA_NO_AUTO_INCREMENT)) Because of that, we do not explicitly test for the feature, but may extrapolate its existence from that of an AUTO_INCREMENT column.
-
- 30 Apr, 2006 1 commit
-
-
unknown authored
sql/set_var.cc: Fix for Bug#14515. These modes do not need restrictions, they're handled separately in sql_show.cc
-
- 20 Mar, 2006 2 commits
-
-
unknown authored
additional check for subselect mysql-test/r/information_schema.result: Fix for bug#18224 VIEW on information_schema crashes the server test case mysql-test/t/information_schema.test: Fix for bug#18224 VIEW on information_schema crashes the server test case
-
unknown authored
Crash happened when one selected data from one of INFORMATION_SCHEMA tables and in order to build its contents server had to open view which used stored function and table or view on which one had not global or database-level privileges (e.g. had only table-level or had no privileges at all). The crash was caused by usage of check_grant() function, which assumes that either number of tables to be inspected by it is limited explicitly or table list used and thd->lex->query_tables_own_last value correspond to each other (the latter should be either 0 or point to next_global member of one of elements of this table list), in conditions when above assumptions were not true. This fix just explicitly limits number of tables to be inspected. Other negative effects which are caused by the fact that thd->lex->query_tables_own_last might not be set properly during processing of I_S tables are less disastrous and will be reported and fixed separetely. mysql-test/r/information_schema_db.result: Fix for bug #18113 "SELECT * FROM information_schema.xxx crashes server" test case mysql-test/t/information_schema_db.test: Fix for bug #18113 "SELECT * FROM information_schema.xxx crashes server" test case sql/sql_acl.cc: added note
-
- 10 Mar, 2006 1 commit
-
-
unknown authored
w/o definer if --skip-grant-tables specified. The previous patch does not allow to specify empty host name in DEFINER-clause explicitly. mysql-test/r/skip_grants.result: Updated the result file. mysql-test/r/view_grant.result: Updated the result file. mysql-test/t/skip_grants.test: Added test cases for BUG#16777; re-organized tests. mysql-test/t/view_grant.test: Updated after final fix of BUG#16777. sql/sql_parse.cc: The final part of fixing BUG#16777: allow empty host name in explicitly specified DEFINER-clause. sql/sql_show.cc: Quote an identifier if it is empty.
-
- 09 Mar, 2006 1 commit
-
-
unknown authored
sql/sql_lex.cc: Added a debug assertion that the passed string is not empty. sql/sql_show.cc: Do not quote empty string.
-
- 27 Feb, 2006 1 commit
-
-
unknown authored
-
- 13 Feb, 2006 1 commit
-
-
unknown authored
proper processing of multiple sql statements sent as a single command. mysql-test/r/view.result: result file update for #15943 test case mysql-test/t/view.test: test case added for bug #15943
-
- 29 Jan, 2006 1 commit
-
-
unknown authored
Fix test result. table.h, sql_show.cc: Put I_S tables in lexical order. sql/sql_show.cc: Put I_S tables in lexical order. sql/table.h: Put I_S tables in lexical order. mysql-test/r/information_schema.result: Fix test result. mysql-test/r/information_schema_db.result: Fix test result.
-
- 24 Jan, 2006 1 commit
-
-
unknown authored
Fill schema tables with data before filesort if it's necessary mysql-test/r/information_schema.result: Fix for bug#15307 GROUP_CONCAT() with ORDER BY returns empty set on information_schema(2nd ver) test result mysql-test/t/information_schema.test: Fix for bug#15307 GROUP_CONCAT() with ORDER BY returns empty set on information_schema(2nd ver) test case
-
- 12 Jan, 2006 1 commit
-
-
unknown authored
after-merge fix for bug#15581 COALESCE function truncates mutli-byte TINYTEXT values sql/sql_show.cc: after-merge fix for bug#15581 COALESCE function truncates mutli-byte TINYTEXT values ,
-
- 10 Jan, 2006 1 commit
-
-
unknown authored
There are two main idea of this fix: - introduce a common function for server and client to split user value (<user name>@<host name>) into user name and host name parts; - dump DEFINER clause in correct format in mysqldump. BitKeeper/etc/ignore: added client/my_user.c libmysqld/my_user.c sql/my_user.c client/Makefile.am: Use my_user.c in linking of mysqldump executable. client/mysqldump.c: Fix for BUG#15110(mysqldump --triggers: does not include DEFINER clause) include/Makefile.am: Add my_user.c include/mysql_com.h: Introduce a constant for max user length. libmysqld/Makefile.am: Add my_user.c mysql-test/r/mysqldump.result: Update result file. sql-common/Makefile.am: Add my_user.c sql/Makefile.am: Add my_user.c sql/sp.cc: Use constant for max user length. sql/sp_head.cc: Use common function to parse user value. sql/sql_acl.cc: Use constant for max user length. sql/sql_parse.cc: Use constant for ma...
-
- 03 Jan, 2006 2 commits
-
-
unknown authored
client/mysqladmin.cc: don't use the handler after it's closed client/mysqlbinlog.cc: memory leak client/mysqldump.c: many "ignore return value" warnings, one "NULL dereference" cmd-line-utils/libedit/history.c: memory leak include/my_base.h: cleanup libmysql/libmysql.c: "return value ignored" warning myisam/mi_delete.c: "return value ignored" warning myisam/myisampack.c: "out-of-bound access" warning myisam/sort.c: "double free" warning mysys/default_modify.c: "double free" warning mysys/mf_iocache2.c: "return value ignored" warnings mysys/my_bitmap.c: s/return/DBUG_RETURN/ mysys/my_error.c: memory leak server-tools/instance-manager/parse.cc: "NULL dereference" warning sql-common/client.c: "NULL dereference" warning sql/field.cc: deadcode, "NULL dereference", "uninitialized" warnings sql/field.h: unused parameters removed from constructor sql/ha_myisam.cc: "return value ignored" warnings sql/item.cc: "return val...
-
unknown authored
enable view prepared mode during getting metedata for I_S table mysql-test/r/information_schema.result: Fix for bug#15533 crash, information_schema, function, view test case mysql-test/t/information_schema.test: Fix for bug#15533 crash, information_schema, function, view test case
-
- 19 Dec, 2005 2 commits
-
-
unknown authored
set character_octet_length, character_maximum_length for binary and varbinary field types mysql-test/r/information_schema.result: Fix for bug#14271 I_S: columns has no size for (var)binary columns test case mysql-test/t/information_schema.test: Fix for bug#14271 I_S: columns has no size for (var)binary columns test case
-
unknown authored
Bug#14387 SHOW COLUMNS doesn't work on temporary tables. Bug#15224 SHOW INDEX from temporary table doesn't work. Restore thd->temporary_tables to be able to process temporary tables(only for 'show index' & 'show columns'). This should be changed when processing of temporary tables for I_S tables will be done. mysql-test/r/information_schema.result: Bug#12770 DESC cannot display the info. about temporary table Bug#14387 SHOW COLUMNS doesn't work on temporary tables. Bug#15224 SHOW INDEX from temporary table doesn't work. test case mysql-test/t/information_schema.test: Bug#12770 DESC cannot display the info. about temporary table Bug#14387 SHOW COLUMNS doesn't work on temporary tables. Bug#15224 SHOW INDEX from temporary table doesn't work. test case
-
- 01 Dec, 2005 1 commit
-
-
unknown authored
store TABLES.TABLE_TYPE in case of error during table opening mysql-test/r/information_schema.result: Fix for bug#14476 `information_schema`.`TABLES`.`TABLE_TYPE` with empty value test case mysql-test/t/information_schema.test: Fix for bug#14476 `information_schema`.`TABLES`.`TABLE_TYPE` with empty value test case
-
- 24 Nov, 2005 1 commit
-
-
unknown authored
-
- 20 Nov, 2005 1 commit
-
-
unknown authored
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.
-
- 11 Nov, 2005 1 commit
-
-
unknown authored
for invalid view Permit SHOW CREATE VIEW, SHOW CREATE TABLE, and retrieval of metadata from information_schema for invalid views mysql-test/r/information_schema.result: Fix for bug#13818 SHOW CREATE VIEW / TABLE and information_schema.views fail for invalid view test case mysql-test/t/information_schema.test: Fix for bug#13818 SHOW CREATE VIEW / TABLE and information_schema.views fail for invalid view test case
-
- 10 Nov, 2005 2 commits
-
-
unknown authored
checks on trigger activation) mysql-test/r/information_schema.result: Update result file: a new column DEFINER has been added to INFORMATION_SCHEMA.TRIGGERS. mysql-test/r/mysqldump.result: Update result file: a new column DEFINER has been added to INFORMATION_SCHEMA.TRIGGERS. mysql-test/r/rpl_ddl.result: Update result file: a new column DEFINER has been added to INFORMATION_SCHEMA.TRIGGERS. mysql-test/r/rpl_sp.result: Update result file: a new clause DEFINER has been added to CREATE TRIGGER statement. mysql-test/r/rpl_trigger.result: Results for new test cases were added. mysql-test/r/skip_grants.result: Error message has been changed. mysql-test/r/trigger.result: Added DEFINER column. mysql-test/r/view.result: Error messages have been changed. mysql-test/r/view_grant.result: Error messages have been changed. mysql-test/t/mysqldump.test: Drop created procedure to not affect further tests. mysql-test/t/rpl_trigger.test: Add tests for new column in information schema. mysql-test/t/skip_grants.test: Error tag has been renamed. mysql-test/t/view.test: Error tag has been renamed. mysql-test/t/view_grant.test: Error tag has been changed. sql/item_func.cc: Fix typo in comments. sql/mysql_priv.h: A try to minimize copy&paste: - introduce operations to be used from sql_yacc.yy; - introduce an operation to be used from trigger and view processing code. sql/share/errmsg.txt: - Rename ER_NO_VIEW_USER to ER_MALFORMED_DEFINER in order to be shared for view and trigger implementations; - Fix a typo; - Add a new error code for trigger warning. sql/sp.cc: set_info() was split into set_info() and set_definer(). sql/sp_head.cc: set_info() was split into set_info() and set_definer(). sql/sp_head.h: set_info() was split into set_info() and set_definer(). sql/sql_acl.cc: Add a new check: exit from the cycle if the table is NULL. sql/sql_lex.h: - Rename create_view_definer to definer, since it is used for views and triggers; - Change st_lex_user to LEX_USER, since st_lex_user is a structure. So, formally, it should be "struct st_lex_user", which is longer than just LEX_USER; - Add trigger_definition_begin. sql/sql_parse.cc: - Add a new check: exit from the cycle if the table is NULL; - Implement definer-related functions. sql/sql_show.cc: Add DEFINER column. sql/sql_trigger.cc: Add DEFINER support for triggers. sql/sql_trigger.h: Add DEFINER support for triggers. sql/sql_view.cc: Rename create_view_definer to definer. sql/sql_yacc.yy: Add support for DEFINER-clause in CREATE TRIGGER statement. Since CREATE TRIGGER and CREATE VIEW can be similar at the start, yacc is unable to distinguish between them. So, had to modify both statements in order to make it parsable by yacc. mysql-test/r/trigger-compat.result: Result file for triggers backward compatibility test. mysql-test/r/trigger-grant.result: Result file of the test for WL#2818. mysql-test/t/trigger-compat.test: Triggers backward compatibility test: check that the server still can load triggers w/o definer attribute and modify tables with such triggers (add a new trigger, etc). mysql-test/t/trigger-grant.test: Test for WL#2818 -- check that DEFINER support in triggers works properly
-
unknown authored
mysql-test/r/ps_1general.result: Remove binlog from visable engine list. sql/handler.h: Added documentation to HTON's sql/log.cc: binlog now has hidden flag show that it does now show up in show storage engine list. sql/sql_show.cc: Flag removes engines from view in show storage engines
-
- 03 Nov, 2005 1 commit
-
-
unknown authored
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.
-
- 01 Nov, 2005 1 commit
-
-
unknown authored
during shutdown. (Bug #11796) sql/sql_show.cc: Check that active_mi is not NULL before accessing its members.
-