- 01 Apr, 2010 9 commits
-
-
Sergey Vojtovich authored
Detailed revision comments: r6274 | marko | 2009-12-03 14:47:12 +0200 (Thu, 03 Dec 2009) | 6 lines branches/zip: dict_table_check_for_dup_indexes(): Assert that the data dictionary mutex is being held while table->indexes is accessed. This is already the case. Currently, only dict_table_get_next_index() and dict_table_get_first_index() are being invoked without holding dict_sys->mutex.
-
Sergey Vojtovich authored
Detailed revision comments: r6272 | marko | 2009-12-02 11:46:05 +0200 (Wed, 02 Dec 2009) | 1 line branches/zip: Revert changes that were accidentally committed in r6271.
-
Sergey Vojtovich authored
Detailed revision comments: r6271 | marko | 2009-12-02 11:43:49 +0200 (Wed, 02 Dec 2009) | 2 lines branches/zip: ChangeLog: Document that since r6270, the zlib version number will be displayed at start-up.
-
Sergey Vojtovich authored
Detailed revision comments: r6270 | marko | 2009-12-02 11:36:47 +0200 (Wed, 02 Dec 2009) | 1 line branches/zip: innobase_start_or_create_for_mysql(): Log the zlib version.
-
Sergey Vojtovich authored
Detailed revision comments: r6269 | marko | 2009-12-02 11:35:22 +0200 (Wed, 02 Dec 2009) | 2 lines branches/zip: innobase_start_or_create_for_mysql(): UNIV_IBUF_DEBUG should not break crash recovery, but UNIV_IBUF_COUNT_DEBUG will.
-
Sergey Vojtovich authored
Detailed revision comments: r6264 | vasil | 2009-12-01 16:19:44 +0200 (Tue, 01 Dec 2009) | 1 line branches/zip: Add ChangeLog entry for the release of 1.0.6.
-
Sergey Vojtovich authored
Detailed revision comments: r6263 | vasil | 2009-12-01 14:49:05 +0200 (Tue, 01 Dec 2009) | 4 lines branches/zip: Increment version number from 1.0.6 to 1.0.7 1.0.6 has been released
-
Sergey Vojtovich authored
Detailed revision comments: r6252 | marko | 2009-11-30 12:50:11 +0200 (Mon, 30 Nov 2009) | 23 lines branches/zip: Suppress errors about non-found temporary tables. Write the is_temp flag to SYS_TABLES.MIX_LEN. dict_table_t::flags: Add a flag for is_temporary, DICT_TF2_TEMPORARY. Unlike other flags, this will not be written to the tablespace flags or SYS_TABLES.TYPE, but only to SYS_TABLES.MIX_LEN. dict_build_table_def_step(): Only pass DICT_TF_BITS to tablespaces. dict_check_tablespaces_and_store_max_id(), dict_load_table(): Suppress errors about temporary tables not being found. dict_create_sys_tables_tuple(): Write the DICT_TF2_TEMPORARY flag to SYS_TABLES.MIX_LEN. fil_space_create(), fil_create_new_single_table_tablespace(): Add assertions about space->flags. row_drop_table_for_mysql(): Do not complain about non-found temporary tables. rb://160 approved by Heikki Tuuri. This addresses the second part of Bug #41609 Crash recovery does not work for InnoDB temporary tables.
-
Sergey Vojtovich authored
Detailed revision comments: r6248 | marko | 2009-11-30 12:19:50 +0200 (Mon, 30 Nov 2009) | 1 line branches/zip: ChangeLog: Document r4922 that was forgotten.
-
- 31 Mar, 2010 1 commit
-
-
Ramil Kalimullin authored
Problem: EXPLAIN EXTENDED was trying to resolve references to freed temporary table fields for GROUP_CONCAT()'s ORDER BY arguments. Fix: use stored original GROUP_CONCAT()'s arguments in such a case.
-
- 29 Mar, 2010 1 commit
-
-
Sergey Glukhov authored
-
- 30 Mar, 2010 2 commits
-
-
Georgi Kodinov authored
-
Georgi Kodinov authored
function on windows When making sure that the directory path ends up with a slash/backslash we need to check for the correct length of the buffer and trim at the appropriate location so we don't write past the end of the buffer.
-
- 26 Mar, 2010 1 commit
-
-
Sergey Glukhov authored
The crash is the result of an attempt made by JOIN::optimize to evaluate the WHERE condition when no records have been actually read. The fix is to remove erroneous 'outer_join' variable check.
-
- 24 Mar, 2010 1 commit
-
-
Sergey Glukhov authored
The crash happens because greedy_serach can not determine best plan due to wrong inner table dependences. These dependences affects join table sorting which performs before greedy_search starting. In our case table which has real 'no dependences' should be put on top of the list but it does not happen as inner tables have no dependences as well. The fix is to exclude RAND_TABLE_BIT mask from condition which checks if table dependences should be updated.
-
- 23 Mar, 2010 1 commit
-
-
Georgi Kodinov authored
function on windows When making sure that the directory path ends up with a slash/backslash we need to check for the correct length of the buffer and trim at the appropriate location so we don't write past the end of the buffer.
-
- 26 Mar, 2010 1 commit
-
-
Sergey Glukhov authored
-
- 29 Mar, 2010 1 commit
-
-
Tatiana A. Nurnberg authored
CHECK_FIELD_IGNORE was treated as CHECK_FIELD_ERROR_FOR_NULL; UPDATE...SET...NULL on NOT NULL fields behaved differently after a trigger. Now distinguishes between IGNORE and ERROR_FOR_NULL and save/restores check-field options.
-
- 28 Mar, 2010 2 commits
-
-
When mysqlbinlog was given the --database=X flag, it always printed 'ROLLBACK TO', but the corresponding 'SAVEPOINT' statement was not printed. The replicated filter(replicated-do/ignore-db) and binlog filter (binlog-do/ignore-db) has the same problem. They are solved in this patch together. After this patch, We always check whether the query is 'SAVEPOINT' statement or not. Because this is a literal check, 'SAVEPOINT' and 'ROLLBACK TO' statements are also binlogged in uppercase with no any comments. The binlog before this patch can be handled correctly except one case that any comments are in front of the keywords. for example: /* bla bla */ SAVEPOINT a; /* bla bla */ ROLLBACK TO a;
-
The log event of 'CREATE EVENT' was being binlogged with garbage at the end of the query if 'CREATE EVENT' is followed by another SQL statement and they were executed as one command. for example: DELIMITER |; CREATE EVENT e1 ON EVERY DAY DO SELECT 1; SELECT 'a'; DELIMITER ;| When binlogging 'CREATE EVENT', we always create a new statement with definer and write it into the log event. The new statement is made from cpp_buf(preprocessed buffer). which is not a c string(end with '\0'), but it is copied as a c string. In this patch, cpp_buf is copied with its length.
-
- 26 Mar, 2010 4 commits
-
-
Sergey Vojtovich authored
Detailed revision comments: r6884 | vdimov | 2010-03-26 13:05:03 +0200 (Fri, 26 Mar 2010) | 6 lines branches/5.1: Fix a non-determinism in innodb_bug38231. Reported by: Sergey Vojtovich <svoj@Sun.COM> r6884 | vdimov | 2010-03-26 13:05:03 +0200 (Fri, 26 Mar 2010) | 6 lines branches/5.1: Fix a non-determinism in innodb_bug38231. Reported by: Sergey Vojtovich <svoj@Sun.COM>
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
-
Sergey Glukhov authored
The crash happens because of incorrect max_length calculation in QUOTE function(due to overflow). max_length is set to 0 and it leads to assert failure. The fix is to cast expression result to ulonglong variable and adjust it if the result exceeds MAX_BLOB_WIDTH.
-
- 25 Mar, 2010 11 commits
-
-
Sergey Vojtovich authored
There was no way to repair corrupt ARCHIVE data file, when unrecoverable data loss is inevitable. With this fix REPAIR ... EXTENDED attempts to restore as much rows as possible, ignoring unrecoverable data. Normal REPAIR is still able to repair meta-data file only.
-
Ramil Kalimullin authored
by sort and fulltext keys. Min value for myisam_sort_buffer_size is 4096.
-
Andrei Elkin authored
-
Sergey Vojtovich authored
-
Andrei Elkin authored
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
Repairing MyISAM table with fulltext indexes and low myisam_sort_buffer_size may crash the server. Estimation of number of index entries was done incorrectly, causing further assertion failure or server crash. Docs note: min value for myisam_sort_buffer_size has been changed from 4 to 4096.
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
Invalid memory read if HANDLER ... READ NEXT is executed after failed (e.g. empty table) HANDLER ... READ FIRST. The problem was that we attempted to perform READ NEXT, whereas there is no pivot available from failed READ FIRST. With this fix READ NEXT after failed READ FIRST equals to READ FIRST. This bug affects MyISAM tables only.
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
When MyISAM writes newly created index page it may be initialized partially. In other words some bytes of sensible data and uninitialized tail of the page may go into index file. Under certain rare circumstances these hunks of memory may contain data that would be otherwise inaccessible to user, like passwords or data from other tables. Fixed by initializing memory for temporary MyISAM key buffer to '\0'. No test case for this fix as it is heavily covered by existing tests.
-
- 24 Mar, 2010 5 commits
-
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
Detailed revision comments: r6822 | vasil | 2010-03-15 10:17:31 +0200 (Mon, 15 Mar 2010) | 12 lines branches/5.1: Typecast to silence a compiler warning: row/row0sel.c: 4548 C4244: '=' : conversion from 'float' to 'ib_ulonglong', possible loss of data row/row0sel.c: 4553 C4244: '=' : conversion from 'double' to 'ib_ulonglong', possible loss of data Reported by: Jonas Oreland <Jonas.Oreland@Sun.COM> Discussed with: Sunny Bains <sunny.bains@oracle.com>
-
Sergey Vojtovich authored
Detailed revision comments: r6785 | vasil | 2010-03-10 09:04:38 +0200 (Wed, 10 Mar 2010) | 11 lines branches/5.1: Add the missing --reap statements in innodb_bug38231.test. Probably MySQL enforced the presence of those recently and the test started failing like: main.innodb_bug38231 [ fail ] Test ended at 2010-03-10 08:48:32 CURRENT_TEST: main.innodb_bug38231 mysqltest: At line 49: Cannot run query on connection between send and reap r6788 | vasil | 2010-03-10 10:53:21 +0200 (Wed, 10 Mar 2010) | 8 lines branches/5.1: In innodb_bug38231.test: replace the fragile sleep 0.2 that depends on timing with a more robust condition which waits for the TRUNCATE and LOCK commands to appear in information_schema.processlist. This could also break if there are other sessions executing the same SQL commands, but there are none during the execution of the mysql test.
-
Sergey Vojtovich authored
Detailed revision comments: r6783 | jyang | 2010-03-09 17:54:14 +0200 (Tue, 09 Mar 2010) | 9 lines branches/5.1: Fix bug #47621 "MySQL and InnoDB data dictionaries will become out of sync when renaming columns". MySQL does not provide new column name information to storage engine to update the system table. To avoid column name mismatch, we shall just request a table copy for now. rb://246 approved by Marko.
-
Sergey Vojtovich authored
Detailed revision comments: r6780 | vasil | 2010-03-08 19:13:20 +0200 (Mon, 08 Mar 2010) | 4 lines branches/5.1: Whitespace fixup.
-