summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix Bug #48026 Log start and end of InnoDB buffer pool initializationJimmy Yang2010-11-105-9/+24
| | | | | | | to the error log rb://513 approved by Sunny Bains
* Port fix for Bug #48026 to 5.1 built-in and plugin: Log start and endJimmy Yang2010-11-103-0/+48
| | | | | of InnoDB buffer pool initialization to the error log
* Merge mysql-5.1-innodb from bk-internal into my local repoVasil Dimov2010-11-1051-992/+2086
|\
| * Merge mysql-5.1-bugteam -> mysql-5.1-innodbVasil Dimov2010-11-0827-26/+306
| |\
| | * Bug #45288 pb2 returns a lot of compilation warningsJon Olav Hauglid2010-11-081-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GCOV builds were broken after the patch for Bug#57933 which added add -Wdeclaration-after-statement to gcc builds. This patch fixes: stacktrace.c:328: warning: ISO C90 forbids mixed declarations and code No test case added.
| | * Bug#58041 : Moved rpl_binlog_row to daily. Run just main suite for ps_row ↵Anitha Gopi2010-11-082-0/+9
| | | | | | | | | | | | and embedded per push. Other suites run daily
| | * A fix and a test case for Bug#47924 -main.log_tables times outDmitry Shulga2010-11-073-3/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sporadically. The cause of the sporadic time out was a leaking protection against the global read lock, taken by the RENAME statement, and not released in case of an error occurred during RENAME. The leaking protection counter would lead to the value of protect_against_global_read never dropping to 0. Consequently FLUSH TABLES in all connections, including the one that leaked the protection, could not proceed. The fix is to ensure that all branchesin RENAME code properly release GRL protection. mysql-test/r/log_tables.result: Added results for test for bug#47924. mysql-test/t/log_tables.test: Added test for bug#47924. sql/sql_rename.cc: mysql_rename_tables() modified: replaced return from function to goto to clean up code block in case of error.
| | * BUG#57933 "add -Wdeclaration-after-statement to gcc builds";Guilhem Bichot2010-11-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | first part, for autotools build. config/ac-macros/maintainer.m4: Add the flag. With it, and as we use -Werror, we nicely get "error: ISO C90 forbids mixed declarations and code" if a declaration follows a statement in C code. Note that g++ refuses this flag.
| | * mergeGeorgi Kodinov2010-11-0312-16/+198
| | |\
| | | * bumped up the versionGeorgi Kodinov2010-11-031-1/+1
| | | |
| | | * Merge from mysql-5.1.52-releaseunknown2010-11-01155-1815/+4059
| | | |\
| | | | * Fix bug #57345unknown2010-10-113-3/+31
| | | | |
| | | | * Fix Bug #57255 Cascade Delete results in "Got error -1 from storage engine".Jimmy Yang2010-10-067-0/+114
| | | | | | | | | | | | | | | | | | | | | | | | | rb://477 approved by Marko
| | | | * merge of 5.1-bugteam into 5.1-securityGeorgi Kodinov2010-10-06148-1803/+3837
| | | | |\
| | | | * | result fixSergey Glukhov2010-10-041-8/+8
| | | | | |
| | | | * | Bug#54488 crash when using explain and prepared statements with subqueriesSergey Glukhov2010-10-013-11/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The crash happens because original join table is replaced with temporary table at execution stage and later we attempt to use this temporary table in select_describe. It might happen that Item_subselect::update_used_tables() method which sets const_item flag is not called by some reasons (no where/having conditon in subquery for example). It prevents JOIN::join_tmp creation and breaks original join. The fix is to call ::update_used_tables() before ::const_item() check. mysql-test/r/ps.result: test case mysql-test/t/ps.test: test case sql/item_subselect.cc: call ::update_used_tables() before ::const_item() check.
| | | | * | Bug#54494 crash with explain extended and prepared statementsSergey Glukhov2010-09-233-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case of outer join and emtpy WHERE conditon 'always true' condition is created for WHERE clasue. Later in mysql_select() original SELECT_LEX WHERE condition is overwritten with created cond. However SELECT_LEX condition is also used as inital condition in mysql_select()->JOIN::prepare(). On second execution of PS modified SELECT_LEX condition is taken and it leads to crash. The fix is to restore original SELECT_LEX condition (set to NULL if original cond is NULL) in reinit_stmt_before_use(). HAVING clause is fixed too for safety reason (no test case as I did not manage to think out appropriate example). mysql-test/r/ps.result: test case mysql-test/t/ps.test: test case sql/sql_prepare.cc: restore original SELECT_LEX condition (set to NULL if original cond is NULL) in reinit_stmt_before_use()
| | | | * | Raise version number after cloning 5.1.51unknown2010-09-131-1/+1
| | | | | |
| | | * | | Null-merge from mysql-5.1.49sp1-releaseunknown2010-10-070-0/+0
| | | |\ \ \
| | | | * | | Backport into mysql-5.1.49sp1-releasesmenon2010-09-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | > ------------------------------------------------------------ > revno: 3457.3.1 > revision-id: alexey.kopytov@sun.com-20100712145855-niybvwsthe480r69 > parent: mattias.jonsson@oracle.com-20100709130033-fgr7hggrrebf6qkc > committer: Alexey Kopytov <Alexey.Kopytov@sun.com> > branch nick: 55061-5.1-bugteam > timestamp: Mon 2010-07-12 18:58:55 +0400 > message: > Bug#55061: Build failing on sol 8 x86 - assembler code vs > compiler problem > > GCC-style inline assembly is not supported by the Sun Studio > compilers prior to version 12. > > Added a check for the Sun Studio version to avoid using > _FPU_GETCW() / _FPU_SETCW() when inline assembly is > unsupported. This can lead to some differences in floating > point calculations on Solaris 8/x86 which, however, is not worth > bothering with Sun-style assembly .il templates.
| | | | * | | Backport into mysql-5.1.49sp1-releasesmenon2010-09-284-12/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | > ------------------------------------------------------------ > revno: 3452.1.12 > revision-id: davi.arnaut@oracle.com-20100730121710-sc068t4d2f1c2gi9 > parent: dao-gang.qu@sun.com-20100730035934-8in8err1b1rqu72y > committer: Davi Arnaut <davi.arnaut@oracle.com> > branch nick: mysql-5.1-bugteam > timestamp: Fri 2010-07-30 09:17:10 -0300 > message: > Bug#54041: MySQL 5.0.92 fails when tests from Connector/C suite run > > Fix a regression (due to a typo) which caused spurious incorrect > argument errors for long data stream parameters if all forms of > logging were disabled (binary, general and slow logs).
| | | | * | | Set version number for mysql-5.1.49sp1 releaseunknown2010-09-281-1/+1
| | | | | | |
| | | * | | | bumped the version to 5.1.53Georgi Kodinov2010-10-071-1/+1
| | | | | | |
| | * | | | | added windows cmake binariesGeorgi Kodinov2010-11-031-0/+9
| | | | | | |
| | * | | | | Bug #51208: Extra string allocation from thd->mem_root Georgi Kodinov2010-11-021-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in sql_show.cc, find_files() Removed the extra allocation.
| | * | | | | Bug #52160: crash and inconsistent results when groupingGleb Shchepa2010-10-316-0/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | by a function and column The bugreport reveals two different bugs about grouping on a function: 1) grouping by the TIME_TO_SEC function result caused a server crash or wrong results and 2) grouping by the function returning a blob caused an unexpected "Duplicate entry" error and wrong result. Details for the 1st bug: TIME_TO_SEC() returns NULL if its argument is invalid (empty string for example). Thus its nullability depends not only on the nullability of its arguments but also on their values. Fixed by (overoptimistically) setting TIME_TO_SEC() to be nullable despite the nullability of its arguments. Details for the 2nd bug: The server is unable to create indices on blobs without explicit blob key part length. However, this fact was ignored for blob function result fields of GROUP BY intermediate tables. Fixed by disabling GROUP BY index creation for blob function result fields like regular blob fields. mysql-test/r/func_time.result: Test case for bug #52160. mysql-test/r/type_blob.result: Test case for bug #52160. mysql-test/t/func_time.test: Test case for bug #52160. mysql-test/t/type_blob.test: Test case for bug #52160. sql/item_timefunc.h: Bug #52160: crash and inconsistent results when grouping by a function and column TIME_TO_SEC() returns NULL if its argument is invalid (empty string for example). Thus its nullability depends not only Fixed by (overoptimistically) setting TIME_TO_SEC() to be nullable despite the nullability of its arguments. sql/sql_select.cc: Bug #52160: crash and inconsistent results when grouping by a function and column The server is unable to create indices on blobs without explicit blob key part length. However, this fact was ignored for blob function result fields of GROUP BY intermediate tables. Fixed by disabling GROUP BY index creation for blob function result fields like regular blob fields.
| | * | | | | Merge mysql-5.1-innodb -> mysql-5.1-bugteamVasil Dimov2010-10-2954-350/+4361
| | |\ \ \ \ \
| * | | | | | | row_ins_index_entry(): Note that only CREATE INDEX sets foreign=FALSE.Marko Mäkelä2010-11-042-2/+4
| | | | | | | |
| * | | | | | | Add change log entry for bug#54538 fix.Sunny Bains2010-11-041-0/+7
| | | | | | | |
| * | | | | | | rw_lock_debug_print(): Output the thread ID in unsigned format.Marko Mäkelä2010-11-032-2/+2
| | | | | | | |
| * | | | | | | Bug#57947 InnoDB diagnostics shows btr_block_get calls instead of real callersMarko Mäkelä2010-11-034-47/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve the diagnostics of buffer pool accesses for B-trees, so that the file names and line numbers of the real calls are shown instead of the line of the buf_page_get() call in btr_block_get(). btr_page_get(): Replaced with a macro. btr_block_get_func(): Renamed from btr_block_get(). Add file, line. btr_block_get(): A macro that passes the __FILE__, __LINE__ to btr_block_get_func(). dict_truncate_index_tree(): Replace a btr_page_get() call with btr_block_get(), since we are only latching the page, not accessing it.
| * | | | | | | Non-functional change: Remove bogus const qualifiersMarko Mäkelä2010-11-036-13/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and make some function comments more accurate.
| * | | | | | | Fix Bug #54538 - use of exclusive innodb dictionary lock limits performance.Sunny Bains2010-11-035-34/+134
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch doesn't get rid of the need to acquire the dict_sys->mutex but reduces the need to keep the mutex locked for the duration of the query to fsp_get_available_space_in_free_extents() from ha_innobase::info(). This is a port of revno:3548 from the builtin to the plugin. rb://501 Approved by Jimmy Yang and Marko Makela.
| * | | | | | | In this patch, existing tests innodb_bug54679.test and innodb_bug56632.test areunknown2010-11-029-869/+1573
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | removed and replaced by the comprehensive innodb-create-options.test. It uses the rules listed in the comments at the top of that test. This patch introduces these differences from previous behavior; 1) KEY_BLOCK_SIZE=0 is allowed by Innodb in both strict and non-strict mode with no errors or warnings. It was previously used by the server to set KEY_BLOCK_SIZE to undefined. (Bug#56628) 2) An explicit valid non-DEFAULT ROW_FORMAT always takes priority over a valid KEY_BLOCK_SIZE. (bug#56632) 3) Automatic use of COMPRESSED row format is only done if the ROW_FORMAT is DEFAULT or unspecified. 4) ROW_FORMAT=FIXED is prevented in strict mode. This patch also includes various formatting changes for consistency with InnoDB coding standards. Related Bugs Bug#54679: ALTER TABLE causes compressed row_format to revert to compact Bug#56628: ALTER TABLE .. KEY_BLOCK_SIZE=0 produces untrue warning or unnecessary error Bug#56632: ALTER TABLE implicitly changes ROW_FORMAT to COMPRESSED
* | | | | | | | Add ChangeLog entry for Bug#53046Vasil Dimov2010-11-031-0/+8
| | | | | | | |
* | | | | | | | Fix Bug#53046 dict_update_statistics_low can still be run concurrently on ↵Vasil Dimov2010-11-028-73/+215
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | same table Replace the array of mutexes that used to protect dict_index_t::stat_n_diff_key_vals[] with an array of rw locks that protects all the stats related members in dict_table_t and all of its indexes. Approved by: Jimmy (rb://503)
* | | | | | | Increment InnoDB Plugin version to 1.0.14.Vasil Dimov2010-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | InnoDB Plugin 1.0.13 has been released with MySQL 5.1.52.
* | | | | | | Bug#57799 READ UNCOMMITTED access failure of off-page DYNAMIC or COMPRESSEDMarko Mäkelä2010-11-022-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | columns again This is follow-up to Bug #54358. Not all occurrences of the bug were fixed. We need to check all calls to btr_copy_externally_stored_field_prefix_low() and do the right thing when the pointer to the off-page column is null (full of zero bytes). It turns out that only the call to btr_copy_externally_stored_field_prefix() in row_sel_sec_rec_is_for_blob() needs to be changed. For fetching complete off-page columns rather than prefixes, the function btr_rec_copy_externally_stored_field() already checks if the pointer is null (all-zero). Two of its callers (row_merge_copy_blobs() and row_sel_fetch_columns()) are never executed as READ COMMITTED and can rightfully assert that the fetch succeeded. The third caller, row_sel_store_mysql_rec(), already does the right thing. The calls in row_upd_ext_fetch() and trx_undo_page_fetch_ext() must expect that the off-page column exists. Update and rollback are locking operations, never READ UNCOMMITTED.
* | | | | | | White-space corrections in the InnoDB Plugin ChangeLogMarko Mäkelä2010-11-021-5/+5
| |/ / / / / |/| | | | |
* | | | | | Bug#52062: Compiler warning in os0file.c on windows 64-bitCalvin Sun2010-10-281-6/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows, the parameter for number of bytes passed into WriteFile() and ReadFile() is DWORD. Casting is needed to silence the warning on 64-bit Windows. Also, adding several asserts to ensure the variable for number of bytes is no more than 32 bits, even on 64-bit Windows. This is for InnoDB Plugin. rb://415 Approved by: Inaam
* | | | | | Bug#52062: Compiler warning in os0file.c on windows 64-bitCalvin Sun2010-10-271-4/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows, the parameter for number of bytes passed into WriteFile() and ReadFile() is DWORD. Casting is needed to silence the warning on 64-bit Windows. Also, adding several asserts to ensure the variable for number of bytes is no more than 32 bits, even on 64-bit Windows. This is for built-in InnoDB. rb://415 Approved by: Inaam
* | | | | | Merge mysql-5.1-bugteam -> mysql-5.1-innodbVasil Dimov2010-10-2790-250/+876
|\ \ \ \ \ \ | |/ / / / /
| * | | | | Fixed bug numbers in disabled.def filesAnitha Gopi2010-10-273-5/+5
| | | | | |
| * | | | | merge from 5.1-mtrBjorn Munch2010-10-2519-37/+46
| |\ \ \ \ \
| | * | | | | Follow-up to Bug #55582 which allows checking strings in ifBjorn Munch2010-10-2115-26/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Simplified cases where a select was used to compare variable against ''
| | * | | | | Fixed wrong feof check in read_line, see 52019Bjorn Munch2010-10-201-1/+1
| | | | | | |
| | * | | | | Fixed missing cast of arg to my_mbcharlenBjorn Munch2010-10-201-1/+1
| | | | | | |
| | * | | | | 48863 followup: move an array declaration out from within if blockBjorn Munch2010-10-201-1/+1
| | | | | | |
| | * | | | | Bug #52019 main.mysqltest fails on new tests for lowercase_resultBjorn Munch2010-10-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Limited to actual bug fix, fixing a while condition Again confirmed on Linux PPC and on AIX 5.3
| | * | | | | Bug #56654 pb2 log is very hard to readBjorn Munch2010-10-191-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added some more info in a number of fail cases (re-commit for administrative reasons)