- 01 Feb, 2004 3 commits
-
-
unknown authored
Change print format of FOREIGN KEY constraints spanning multiple databases to: .; but we when parsing them we must also accept , because that was the output format in < 4.0.18 innobase/dict/dict0dict.c: Change print format of FOREIGN KEY constraints spanning multiple databases to: .; but we when parsing them we must also accept , because that was the output format in < 4.0.18
-
unknown authored
Remove redundant code; parse both the database name and the table name in a FOREIGN KEY constraint with quotes in mind row0mysql.c, ha_innodb.cc, sql_table.cc: Return error message Cannot delete or update a parent row... if we try to drop a table which is referenced by a FOREIGN KEY constraint, and the user has not set foreign_key_checks=0 sql/sql_table.cc: Return error message Cannot delete or update a parent row... if we try to drop a table which is referenced by a FOREIGN KEY constraint, and the user has not set foreign_key_checks=0 sql/ha_innodb.cc: Return error message Cannot delete or update a parent row... if we try to drop a table which is referenced by a FOREIGN KEY constraint, and the user has not set foreign_key_checks=0 innobase/row/row0mysql.c: Return error message Cannot delete or update a parent row... if we try to drop a table which is referenced by a FOREIGN KEY constraint, and the user has not set foreign_key_checks=0 innobase/dict/dict0dict.c: Remove redundant code; parse both the database name and the table name in a FOREIGN KEY constraint with quotes in mind
-
unknown authored
Cleanup innobase/dict/dict0dict.c: Cleanup
-
- 30 Jan, 2004 5 commits
-
-
unknown authored
Moved all range checks for TIMESTAMP value to my_gmt_sec(). Also fixed check of upper boundary of TIMESTAMP range (which also now will catch datetime values which are too small for TIMESTAMP in case if time_t is unsigned). mysql-test/r/timezone.result: Added test which checks if TIMESTAMP range is checked correctly (current time zone is honoured and both upper and lower bounds of TIMESTAMP range are checked). mysql-test/t/timezone.test: Added test which checks if TIMESTAMP range is checked correctly (current time zone is honoured and both upper and lower bounds of TIMESTAMP range are checked). sql/field.cc: Check if datetime value is in TIMESTAMP range has moved to my_gmt_sec() function. sql/mysql_priv.h: Added more constants for checking if datetime is in allowed range for TIMESTAMP. sql/time.cc: Check if datetime value is in TIMESTAMP range has moved to my_gmt_sec() function. Fixed check of its return value to catch overflows in both directions and also overflows in case of unsigned time_t.
-
unknown authored
into mysql.com:/home/dlenev/src/mysql-4.0-bg2464 sql/sql_parse.cc: Auto merged
-
unknown authored
values for TIMESTAMP columns. The solution is not perfect since we just silently ignoring default value for first TIMESTAMP column and properly reflecting this fact in SHOW CREATE TABLE. We can't give a warning or simply support standard syntax (niladic functions as legal value for default) for first field since it is 4.0 tree. mysql-test/r/type_timestamp.result: Added test for bugs #1885, #2464, #2539 (proper support of default values for TIMESTAMP columns) mysql-test/t/type_timestamp.test: Added test for bugs #1885, #2464, #2539 (proper support of default values for TIMESTAMP columns) sql/field.cc: Enabled copying of defaults for TIMESTAMP fields when we are creating table with CREATE TABLE x (SELECT ...) sql/field.h: Set proper DEFAULT value for non-first TIMESTAMP column. sql/sql_parse.cc: Allowed default values for TIMESTAMP column. sql/sql_show.cc: Enabled printing of default values in SHOW CREATE TABLE and SHOW COLUMNS for all TIMESTAMP columns except first one.
-
unknown authored
into mysql.com:/home/my/mysql-4.0
-
unknown authored
Fixed parsing of column names and foreign key constraints in Innobase to handle quoted identifiers and identifiers with space. (Bug #1725) Fix optimizer tuning bug when first used key part was a constant. (Bug #1679) innobase/dict/dict0dict.c: Fixed parsing of column names and foreign key constraints to handle quoted identifiers and identifiers with space. (Bug #1725) mysql-test/r/innodb.result: Test of innodb internal parsing mysql-test/t/innodb.test: Test of innodb internal parsing sql/sql_class.cc: Safety fix for select into outfile and select into dumpfile. Before calling send_error() could cause end_io_cache() to be called several times. sql/sql_class.h: Add path to dumpfile so that we can delete the generated file if something goes wrong. sql/sql_select.cc: Fix optimizer tuning bug when first used key part was a constant. Previously all keys that had this key part first was regarded as equal, even if the query used more key parts for some of the keys. Now we use the range optimizer results to just limit the number of estimated rows if not all key parts where constants. (Bug #1679)
-
- 29 Jan, 2004 5 commits
-
-
unknown authored
when we open the HEAP table for the first time since server restart, in hp_open(), we set a flag to propagate this info to the handler level which then writes a DELETE FROM this_heap_table to the binlog. It is not a perfect solution for the bug, because between the server start and the first open of the table, the slave still had old data in his table so a SELECT on the slave may show wrong content. But if there is a --init-file to populate the HEAP table on master as startup, then this is a safe fix (I'll put a note about init-file in the HEAP section of the manual). heap/hp_info.c: new info variable implicit_emptied heap/hp_open.c: If this is the first open of the HEAP table, it means it is empty, so we mark it. include/heap.h: new variables implicit_emptied (we need one in HEAPINFO for the hp_info() call). sql/ha_heap.cc: report info to upper level sql/handler.h: new info 'implicit_emptied' in the handler level; only HEAP uses it. sql/sql_base.cc: When a HEAP table is opened for the first time, write a DELETE FROM to the binlog, for replication and mysqlbinlog|mysql. Monty: I added the entry->file->implicit_emptied= 0;
-
unknown authored
(as long as replicate-*-table rules were defined, multi-table DELETE was never replicated by the slave). sql/sql_parse.cc: For a multi-table DELETE, there are two lists of tables: - 'tables' contains the tables in the FROM. They have 'updating==0'. - 'thd->lex.auxilliary_table_list.first' contains the tables between the DELETE and the FROM. They have 'updating==1'. So the bug was that the slave only tests 'tables' and as all its elements have updating==0, tables_ok() always returns 0. So for a multi DELETE the slave now tests the 2nd list too. I started with the other tip of the sausage: I thought of changing multi DELETE to use only one list (given that 'updating' can be used to separate it in two when needed) (with one list we wouldn't need to change the slave code), but finally hit the unicity check in add_table_to_list() which started to return ER_NONUNIQ_TABLE (logical).
-
unknown authored
into mysql.com:/home/my/mysql-4.0
-
unknown authored
This fixed problem with index reads on character fields with BDB tables. (Bug #2509) BitKeeper/etc/ignore: added man/*.1 mysql-test/r/bdb.result: New test mysql-test/r/myisam.result: More tests mysql-test/t/bdb.test: Test for idnex only read mysql-test/t/myisam.test: More test to verify pushed bug fix sql/ha_berkeley.h: Mark that strings may change on index only reads sql/item_strfunc.cc: Cleanup sql/table.cc: Allow index only reads on binary strings
-
unknown authored
Fix bug: InnoDB row count and index cardinality estimates wrapped over at 512 million in 32-bit computers innobase/btr/btr0cur.c: Fix bug: InnoDB row count and index cardinality estimates wrapped over at 512 million in 32-bit computers
-
- 28 Jan, 2004 2 commits
-
-
unknown authored
into mysql.com:/home/mysql_src/mysql-4.0
-
unknown authored
reset errors (in thd) before executing the event. Otherwise if an event is ignored because of replicate-*-table rules (error ER_SLAVE_IGNORED_TABLE) this error code may remain in thd->net and the next event may pick it. sql/log_event.cc: Reset errors (in thd) before executing the event. Otherwise if an event is ignored because of replicate-*-table rules (error ER_SLAVE_IGNORED_TABLE) this error code may remain in thd->net and the next event may pick it.
-
- 27 Jan, 2004 1 commit
-
-
unknown authored
Fix bug #2483 with InnoDB, UNIQUE secondary index, and NULL values in that unique index; with the IS NULL predicate, InnoDB returned only the first matching row, though there can be many innobase/row/row0sel.c: Fix bug #2483 with InnoDB, UNIQUE secondary index, and NULL values in that unique index; with the IS NULL predicate, InnoDB returned only the first matching row, though there can be many innobase/include/data0data.h: Fix bug #2483 with InnoDB, UNIQUE secondary index, and NULL values in that unique index; with the IS NULL predicate, InnoDB returned only the first matching row, though there can be many innobase/include/data0data.ic: Fix bug #2483 with InnoDB, UNIQUE secondary index, and NULL values in that unique index; with the IS NULL predicate, InnoDB returned only the first matching row, though there can be many
-
- 22 Jan, 2004 5 commits
-
-
unknown authored
into gw.mysql.r18.ru:/usr/home/ram/work/4.0.b2298 myisam/mi_search.c: Auto merged
-
unknown authored
into eagle.mysql.r18.ru:/home/vva/work/BUG_2290/mysql-4.0
-
unknown authored
into eagle.mysql.r18.ru:/home/vva/work/BUG_2290/mysql-4.0
-
unknown authored
mysql-test/t/func_str.test: add skipped new line sql/item_strfunc.cc: rewrote some comments for Item_func_elt
-
unknown authored
<monty> ramil, in MySQL/MyISAM we should only strip end space, not 'space-like' characters. <monty> This is according to SQL; When doing a comparision end space and only end space are ignored. myisam/mi_key.c: a proper fix for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause. myisam/mi_search.c: a proper fix for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause. mysql-test/r/select.result: test case for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause. mysql-test/t/select.test: test case for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause. sql/sql_string.cc: a proper fix for the bug #2298 Trailing whitespace inconsistently handled in WHERE clause.
-
- 21 Jan, 2004 7 commits
-
-
unknown authored
-
unknown authored
-
unknown authored
-
unknown authored
into mysql.com:/space/my/mysql-4.0-build
-
unknown authored
spec file after the build as RPM has its own option for this Build-tools/Do-rpm: - remove unnecessary code to delete the source tarball and spec file after the build as RPM has its own option for this
-
unknown authored
into mysql.com:/space/my/mysql-4.0
-
unknown authored
into mysql.com:/space/my/mysql-4.0-build
-
- 20 Jan, 2004 6 commits
-
-
unknown authored
sql/item_strfunc.cc: fixed bug #2290 "output truncated with ELT when using DISTINCT"
-
unknown authored
into mysql.com:/home/mysql_src/mysql-4.0
-
unknown authored
do not write the Execute_load_log_event if there was no Create_file_log_event (empty file).
-
unknown authored
manpage) turned out as a major overhaul of all man pages: - renamed all *.1 files to *.1.in to act as templates which are being processed at build time - replaced some hard-coded values with place holder that are being replaced with the proper values at build time - Updated list of available man pages in the SEE ALSO section and added a hint to the manual for more details - Added a BUGS section to all pages, referring to the bugs DB - Updated some obsolete URLs and mail addresses The actual content of these man pages should probably be cross-checked for correctness, though... man/Makefile.am: - Replace some hard-coded values in the man pages with the proper values at build time instead. Instead of the *.1 files, we now add the *.1.in files (the templates) to the source distribution and generate the *.1 files during make. man/isamchk.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/isamlog.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/mysql_fix_privilege_tables.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/mysql_zap.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/mysqlaccess.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/mysqladmin.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/mysqld.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/mysqld_multi.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/mysqld_safe.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/mysqldump.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/mysqlshow.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/perror.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/replace.1.in: - replaced some hard-coded values (e.g. Version numbers) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address man/mysql.1.in: - replaced some hard-coded values (e.g. Version numbers, path names) with variables which are replaced with the proper values at build time - Updated list of other man pages listed in SEE ALSO - Added BUGS section, referring to the bugs database - Updated URL and Mail address
-
unknown authored
into serg.mylan:/usr/home/serg/Abk/mysql-4.0 myisam/mi_dynrec.c: Auto merged
-
unknown authored
-
- 19 Jan, 2004 3 commits
- 18 Jan, 2004 1 commit
-
-
unknown authored
I remove the --old-rpl-compat which produces broken binlogs readable neither by 4.0 nor by 3.23. This option is a leftover of the early replication of 4.0.0, when it was still partly compatible with 3.23. I explained this to the user in the bug report. sql/mysqld.cc: removing --old-rpl-compat sql/sql_load.cc: removing --old-rpl-compat sql/sql_repl.h: removing --old-rpl-compat
-
- 16 Jan, 2004 2 commits