summaryrefslogtreecommitdiff
path: root/storage/innobase
Commit message (Collapse)AuthorAgeFilesLines
* 10.0-base mergeSergei Golubchik2013-04-1541-443/+1073
|\
| * 5.5 mergeSergei Golubchik2013-04-146-2/+155
| |\
| | * MDEV-4338 - Support FusionIO/directFS atomic writesVladislav Vaintroub2013-04-065-0/+153
| | |
| | * MDEV-4243 Warnings/errors while compiling with clangSergei Golubchik2013-03-281-2/+2
| | |
| * | Linking problem on WindowsSergei Golubchik2013-04-101-4/+2
| | |
| * | error messages: name the storage engine explicitly,Sergei Golubchik2013-04-091-0/+2
| | | | | | | | | | | | instead of "used storage engine" and similar changes.
| * | * don't use 1-8 numbers for open_table_error codes, use an enum.Sergei Golubchik2013-04-091-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | * print "table doesn't exist in engine" when a table doesn't exist in the engine, instead of "file not found" (if no file was involved) * print a complete filename that cannot be found ('t1.MYI', not 't1') * it's not an error for a DROP if a table doesn't exist in the engine (or some table files cannot be found) - if the DROP succeeded regardless
| * | 5.5 mergeSergei Golubchik2013-03-2740-479/+1075
| |\ \ | | |/
| | * fix innodb failures on solarisSergei Golubchik2013-03-111-0/+2
| | |
| | * merge with mysql-5.5.30 minus few incorrect or not applicable changesetsSergei Golubchik2013-02-2832-423/+1017
| | |\
| | | * Merge Post Fix for BUG#14628410 from mysql-5.1 to mysql-5.5Satya Bodapati2013-01-041-0/+8
| | | |\
| | | * | Bug #14556349 RENAME OF COMPRESSED TABLE AND INSERT BUFFER MERGE CAUSEAnnamalai Gurusami2012-12-201-2/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | HANG Problem Statement: When the operation RENAME TABLE is about rename the tablespace of the table, it will stop all i/o operations on the tablespace temporarily. For this the fil_space_t::stop_ios member is used. Once the fil_space_t::stop_ios member is set to TRUE in the RENAME TABLE operation, it is expected that no new i/o operation will be done on the tablespace and all pending i/o operation can be completed on the tablespace. If the pending i/o operations initiate any new i/o operations then there will be deadlock. The RENAME TABLE operation will be waiting for pending i/o on the tablespace to be completed, and the pending i/o operations will be waiting on the RENAME TABLE operation to set the file_space_t::stop_ios flag to be set to FALSE. But in the given scenario the pending i/o operations did not initiate new i/o. But they where still unnecessarily checking the fil_space_t::stop_ios flag. This resulted in deadlock. Solution: I noticed that this deadlock happens in fil_space_get_size() and fil_space_get_zip_size() in the i/o threads. These functions check the stop_ios flag even when no i/o will be initiated. I modified these functions to ensure that they check the stop_ios flag only when they will be initiating an i/o operation. This solves the problem. rb://1635 (mysql-5.5) rb://1660 (mysql-trunk) approved by Inaam, Jimmy, and ima.
| | | * | Fix Bug#16021177 DICT_LOAD_FOREIGNS() PASSES UNALIGNED MEMORY TOVasil Dimov2012-12-191-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DTUPLE_CREATE_FROM_MEM() Align to word-size the memory occupied by tuple_buf[] memory chunk. I confirm that this change fixes the SIGBUS on Solaris. Approved by: Marko (via IM)
| | | * | Merge mysql-5.1 -> mysql-5.5Vasil Dimov2012-12-181-2/+7
| | | |\ \ | | | | |/
| | | * | Merge mysql-5.1 -> mysql-5.5Vasil Dimov2012-12-181-7/+5
| | | |\ \ | | | | |/
| | | * | Approved by Jimmy and Inaam. rb#1576Bill Qu2012-12-178-15/+138
| | | | |
| | | * | merge from 5.1Inaam Rana2012-12-141-7/+14
| | | |\ \ | | | | |/
| | | * | Follow-up fix to Bug#14628410: Remove the Windows InnoDB Plugin specificMarko Mäkelä2012-12-131-97/+0
| | | | | | | | | | | | | | | | | | | | implementation of innobase_mysql_tmpfile() from MySQL 5.5 onwards.
| | | * | Merge fix for Bug#14628410 from mysql-5.1 to mysql-5.5Satya Bodapati2012-12-132-8/+37
| | | |\ \ | | | | |/
| | | * | Merging from mysql-5.1 to mysql-5.5. Annamalai Gurusami2012-12-111-0/+7
| | | |\ \ | | | | |/
| | | * | UNIV_DEBUG build of some environments needsYasufumi Kinoshita2012-12-042-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | #include "read0read.h" for srv0srv.c and trx0rec.c. This is only for mysql-5.5
| | | * | merge from 5.1Inaam Rana2012-11-301-16/+4
| | | |\ \ | | | | |/
| | | * | Bug#59354 : Bug #12659252 : ASSERT !OTHER_LOCK AT LOCK_REC_ADD_TO_QUEUE ↵Yasufumi Kinoshita2012-11-287-18/+120
| | | |\ \ | | | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DURING A DELETE OPERATION The converted implicit lock should wait for the prior conflicting lock if found. rb://1437 approved by Marko
| | | | * Bug#59354 : Bug #12659252 : ASSERT !OTHER_LOCK AT LOCK_REC_ADD_TO_QUEUE ↵Yasufumi Kinoshita2012-11-287-15/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DURING A DELETE OPERATION The converted implicit lock should wait for the prior conflicting lock if found. rb://1437 approved by Marko
| | | * | Merge mysql-5.1 to mysql-5.5.Marko Mäkelä2012-11-281-4/+16
| | | |\ \ | | | | |/
| | | * | Bug #14676249 : ROW_VERS_IMPL_X_LOCKED_LOW() MIGHT HIT ↵Yasufumi Kinoshita2012-11-264-1/+29
| | | |\ \ | | | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | !BPAGE->FILE_PAGE_WAS_FREED ASSERTION trx_undo_prev_version_build() should confirm existence of inherited (not-own) external pages. Bug #14676084 : ROW_UNDO_MOD_UPD_DEL_SEC() DOESN'T NEED UNDO_ROW AND UNDO_EXT INITIALIZED mtr script could hit the assertion error !bpage->file_page_was_freed using this path. So, also fixed rb://1337 approved by Marko Makela.
| | | * | merge from 5.1Inaam Rana2012-11-163-62/+40
| | | |\ \ | | | | |/
| | | * | Merge mysql-5.1 to mysql-5.5.Marko Mäkelä2012-11-151-2/+0
| | | |\ \ | | | | |/
| | | * | Merge mysql-5.1 to mysql-5.5.Marko Mäkelä2012-11-154-149/+247
| | | |\ \ | | | | |/
| | | * | Fix Bug #14753402 - FAILING ASSERTION: LEN == IFIELD->FIXED_LENJimmy Yang2012-11-142-3/+31
| | | | | | | | | | | | | | | | | | | | | | | | | rb://1411 approved by Marko
| | | * | This is a backport of "WL#5674 InnoDB: report all deadlocks (Bug#1784)"Vasil Dimov2012-11-124-47/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | from MySQL 5.6 into MySQL 5.5 Will close Bug#14515889 BACKPORT OF INNODB DEADLOCK LOGGING TO 5.5 The original implementation is in vasil.dimov@oracle.com-20101213120811-k2ldtnao2t6zrxfn Approved by: Jimmy (rb:1535)
| | | * | Bug #14676111 WRONG PAGE_LEVEL WRITTEN FOR UPPER THAN FATHER PAGE AT ↵Yasufumi Kinoshita2012-11-129-5/+112
| | | |\ \ | | | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BTR_LIFT_PAGE_UP() btr_lift_page_up() writes wrong page number (different by -1) for upper than father page. But in almost all of the cases, the father page should be root page, no upper pages. It is very rare path. In addition the leaf page should not be lifted unless the father page is root. Because the branch pages should not become the leaf pages. rb://1336 approved by Marko Makela.
| | | | * Bug #14676111 WRONG PAGE_LEVEL WRITTEN FOR UPPER THAN FATHER PAGE AT ↵Yasufumi Kinoshita2012-11-129-2/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BTR_LIFT_PAGE_UP() btr_lift_page_up() writes wrong page number (different by -1) for upper than father page. But in almost all of the cases, the father page should be root page, no upper pages. It is very rare path. In addition the leaf page should not be lifted unless the father page is root. Because the branch pages should not become the leaf pages. rb://1336 approved by Marko Makela.
| | | * | Merging from mysql-5.1 to mysql-5.5. Annamalai Gurusami2012-11-094-5/+74
| | | |\ \ | | | | |/
| | * | | MDEV-4028 - Converted rdiff files to uniformElena Stepanova2013-02-037-56/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MDEV-11 - Modifed tests and result files to use explicit column lists in INSERT and SELECT statements
* | | | | MDEV-4207 Invalid code in fts_savepoint_release() in InnoDBSergei Golubchik2013-03-281-1/+1
| | | | |
* | | | | 10.0-base mergeSergei Golubchik2013-01-3129-269/+459
|\ \ \ \ \ | |/ / / /
| * | | | 5.5 mergeSergei Golubchik2013-01-2926-239/+431
| |\ \ \ \ | | |/ / /
| | * | | MDEV-4065 thd_kill_statement serviceSergei Golubchik2013-01-181-9/+8
| | | | |
| | * | | mysql-5.5.29 mergeSergei Golubchik2013-01-158-42/+108
| | |\ \ \ | | | |/ /
| | | * | Merge mysql-5.1 to mysql-5.5.Marko Mäkelä2012-10-221-1/+5
| | | |\ \ | | | | |/
| | | * | Merge mysql-5.1 to mysql-5.5.Marko Mäkelä2012-10-181-7/+12
| | | |\ \ | | | | |/
| | | * | Bug #13702112 : WAIT_FOR_READ IS STUCK IN THE 90SYasufumi Kinoshita2012-10-171-3/+4
| | | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rb://1334 approved by: Inaam Rana
| | | * \ \ Merge mysql-5.1 to mysql-5.5.Marko Mäkelä2012-10-163-6/+35
| | | |\ \ \ | | | | |/ /
| | | * | | bug#14704286Krunal Bauskar krunal.bauskar@oracle.com2012-10-151-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SECONDARY INDEX UPDATES MAKE CONSISTENT READS DO O(N^2) UNDO PAGE LOOKUPS (honoring kill query while accessing sec_index) If secondary index is being used for select query evaluation and this query is operating with consistent read snapshot it might take good time for secondary index to return back control to mysql as MVCC would kick in. If user issues "kill query <id>" while query is actively accessing secondary index it will not be honored as there is no hook to check for this condition. Added hook for this check. ----- Parallely secondary index taking too long to evaluate for consistent read snapshot case is being examined for performance improvement. WL#6540.
| | | * | | Merge mysql-5.1 -> mysql-5.5Vasil Dimov2012-10-092-1/+17
| | | |\ \ \
| | | * | | | Bug #14036214 MYSQLD CRASHES WHEN EXECUTING UPDATE IN TRX WITHAnnamalai Gurusami2012-10-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CONSISTENT SNAPSHOT OPTION A transaction is started with a consistent snapshot. After the transaction is started new indexes are added to the table. Now when we issue an update statement, the optimizer chooses an index. When the index scan is being initialized via ha_innobase::change_active_index(), InnoDB reports the error code HA_ERR_TABLE_DEF_CHANGED, with message stating that "insufficient history for index". This error message is propagated up to the SQL layer. But the my_error() api is never called. The statement level diagnostics area is not updated with the correct error status (it remains in Diagnostics_area::DA_EMPTY). Hence the following check in the Protocol::end_statement() fails. 516 case Diagnostics_area::DA_EMPTY: 517 default: 518 DBUG_ASSERT(0); 519 error= send_ok(thd->server_status, 0, 0, 0, NULL); 520 break; The fix is to backport the fix of bugs 14365043, 11761652 and 11746399. 14365043 PROTOCOL::END_STATEMENT(): ASSERTION `0' FAILED 11761652 HA_RND_INIT() RESULT CODE NOT CHECKED 11746399 RETURN VALUES OF HA_INDEX_INIT() AND INDEX_INIT() IGNORED rb://1227 approved by guilhem and mattiasj.
| | | * | | | Merge mysql-5.1 to mysql-5.5.Marko Mäkelä2012-10-083-4/+24
| | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Also, add debug check for trx_id sanity to row_upd_rec_sys_fields().
| | | * \ \ \ \ Merge from mysql-5.1 to mysql-5.5. Annamalai Gurusami2012-09-283-79/+0
| | | |\ \ \ \ \
| | | * | | | | | Bug#14594600 ASSERT FROM DROP TABLE CONCURRENT WITH IBUF MERGESInaam Rana2012-09-201-24/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rb://1293 approved by: Marko Makela There is race when dropping a single table tablespace where a reader thread can initiate a read request before the delete flag is set and before it is finished the deleting thread can attempt to free the fil_node. This patch checks the status in fil_io() to make sure that the tablespace is not being deleted. If it is being deleted then an error is returned instead of attempting IO.