- 25 May, 2011 3 commits
-
-
Anitha Gopi authored
-
Anitha Gopi authored
-
Mikael Ronström authored
BUG#12578441, reintroduced thd->cleanup() in unlink_thd, removed by mistake, added private interface to this function
-
- 24 May, 2011 13 commits
-
-
Marko Mäkelä authored
Fix a deadlock in the initial patch. lock_validate() must not hold the lock system mutex while s-latching a block, because some functions, such as lock_rec_convert_impl_to_expl(), may be already holding an x-latch on the block that lock_validate() is interested in while attempting to acquire the lock system mutex. This deadlock was not caught by UNIV_SYNC_DEBUG because of buf_block_dbg_add_level(block, SYNC_NO_ORDER_CHECK).
-
Anitha Gopi authored
-
Marko Mäkelä authored
lock_clust_rec_some_has_impl(), row_get_rec_trx_id(), lock_rec_queue_validate(), lock_table_other_has_incompatible(), lock_table_has_to_wait_in_queue(), lock_table_queue_validate(): Add const qualifiers. row_get_trx_id_offset(): Add const qualifiers. Keep the parameter rec only in UNIV_DEBUG builds. Inline the function. lock_rec_validate_page(): Take the buffer block as a parameter, to avoid a buf_page_get_gen() call in most cases. lock_rec_validate_page_low(): A version of lock_rec_validate_page() that assumes that the lock system mutexes are already being held. lock_rec_get_next_on_page_const(): A const variant of lock_rec_get_next_on_page(). lock_validate(): Do not release the lock system mutex while buffer-fixing the block for the lock_rec_validate_page() call. Releasing the mutex apparently caused the assertion failure. rb:665 approved by Sunny Bains
-
Anitha Gopi authored
-
Anitha Gopi authored
-
Horst.Hunger authored
-
Marko Mäkelä authored
------------------------------------------------------------ revno 2876.244.305 revision id marko.makela@oracle.com-20110413082211-e6ouhjz5rmqxcqap parent marko.makela@oracle.com-20110413075948-kvytmc37ye1nt7d9 committer Marko Mäkelä <marko.makela@oracle.com> branch nick 5.6-innodb timestamp Wed 2011-04-13 11:22:11 +0300 message: Suppress the Bug #58815 (Bug #11765812) assertion failure. buf_page_get_gen(): Introduce BUF_GET_POSSIBLY_FREED for suppressing the check that the file page must not have been freed. btr_estimate_n_rows_in_range_on_level(): Pass BUF_GET_POSSIBLY_FREED and explain in the comments why this is needed and why it should be mostly harmless to ignore the problem. If InnoDB had always initialized all unused fields in data files, no problem would exist. This change does not fix the bug, it just "shoots the messenger". rb:647 approved by Jimmy Yang
-
Anitha Gopi authored
-
Anitha Gopi authored
-
Anitha Gopi authored
-
Anitha Gopi authored
-
Anitha Gopi authored
-
Anitha Gopi authored
-
- 23 May, 2011 3 commits
-
-
Luis Soares authored
Automerged bzr bundle from bug report into latest mysql-5.5.
-
Luis Soares authored
In RBR and in case of converting blob fields, the space allocated while unpacking into the conversion field was not freed after copying from it into the real field. We fix this by freeing the conversion field when the conversion table is not needed anymore (on close_tables_to_lock).
-
Anitha Gopi authored
-
- 22 May, 2011 3 commits
-
-
Vasil Dimov authored
-
Vasil Dimov authored
-
Vasil Dimov authored
-
- 21 May, 2011 4 commits
-
-
Guilhem Bichot authored
-
Guilhem Bichot authored
-
Guilhem Bichot authored
-
Guilhem Bichot authored
-
- 20 May, 2011 3 commits
-
-
Dmitry Shulga authored
from 5.1->5.5.
-
Dmitry Shulga authored
when selecting from I_S and views exist, in SP. Symptoms: re-execution of prepared statement (or statement in a stored routine) which read from one of I_S tables and which in order to fill this I_S table had to open a view led to increasing memory consumption. What happened in this situation was that during the process of view opening for purpose of I_S filling view-related structures (like its LEX) were allocated on persistent MEM_ROOT of prepared statement (or stored routine). Since this MEM_ROOT is not freed until prepared statement deallocation (or expulsion of stored routine from the cache) and code responsible for filling I_S is not able to re-use results of view opening from previous executions this allocation ended up in memory hogging. This patch solves the problem by ensuring that when a view opened for the purpose of I_S filling all its structures are allocated on non-persistent runtime MEM_ROOT. This is achieved by activating a temporary Query_arena bound to this MEM_ROOT. Since this step makes impossible linking of view structures into LEX of our prepared statement (or stored routine statement) this patch also changes code filling I_S table to install a proxy LEX before trying to open a view or a table. Consequently some code which was responsible for backing-up/restoring parts of LEX when view/table was opened during filling of I_S table became redundant and was removed. This patch doesn't contain test case for this bug as it is hard to test memory hogging in our test suite.
-
Mayank Prasad authored
-
- 19 May, 2011 4 commits
-
-
Luis Soares authored
Manual merged mysql-5.1-gca into latest mysql-5.5. Conflicts ========= Text conflict in mysql-test/suite/rpl/r/rpl_relayspace.result Text conflict in mysql-test/suite/rpl/t/rpl_relayspace.test
-
Luis Soares authored
Automerge mysql-5.1-gca into latest mysql-5.1.
-
Luis Soares authored
VM-WIN2003-32-A, SLES10-IA64-A The test case waits for master_pos_wait not to timeout, which means that the deadlock between SQL and IO threads was succesfully and automatically dealt with. However, very rarely, master_pos_wait reports a timeout. This happens because the time set for master_pos_wait to wait was too small (6 seconds). On slow test env this could be a problem. We fix this by setting the timeout inline with the one used in sync_slave_with_master (300 seconds). In addition we refactored the test case and refined some comments.
-
Mikael Ronström authored
-
- 18 May, 2011 7 commits
-
-
Mayank Prasad authored
Issue: While running embedded server, if client issues TEE command (\T foo/bar) and "foo/bar" directory doesn't exist, it is suppose to give error. But it was aborting. This was happening because wrong error handler was being called. Solution: Modified calls to correct error handler. In embedded server case, there are two error handler (client and server) which are supposed to be called based on which context code is in. If it is in client context, client error handler should be called otherwise server. Test case: Test case automation is not possible as current (following) code doesn't allow '\T' to be executed from command line (OR command read from a file): [client/mysql.cc] ... static int com_tee(String *buffer __attribute__((unused)), char *line __attribute__((unused))) { char file_name[FN_REFLEN], *end, *param; if (status.batch) << THIS IS TRUE WHILE EXECUTING FROM COMMAND LINE. return 0; ... So, not adding test case in GA. WIll add a test case in mysql-trunk after removing above code so that this could be properly tested before GA. libmysqld/lib_sql.cc: Added code to call client/server error handler based on in control is in client/server code respectively. sql/mysql_priv.h: Added comments for THR_THD, THR_MALLOC keys. sql/sql_class.cc: Function definition of new function restore_global to removes thread specific data from stack (which was stored in store global). sql/sql_class.h: Function declaration of new function restore_global.
-
Mayank Prasad authored
-
Marko Mäkelä authored
or Oracle Bug #11766513. trx_undo_free_prepared(): Do not acquire or release trx->rseg->mutex. This code is invoked in the single-threaded part of shutdown, therefore a mutex is not needed.
-
Mikael Ronström authored
-
Mikael Ronström authored
-
Sergey Glukhov authored
-
Sergey Glukhov authored
There are two problems: 1. There is a missing check for 'year' parameter(year can not be greater than 9999) in makedate function. fix: added check that year can not be greater than 9999. 2. There is a missing check for zero date in from_days() function. fix: added zero date check into Item_func_from_days::get_date() function. mysql-test/r/func_time.result: test case mysql-test/t/func_time.test: test case sql/item_timefunc.cc: --added check that year can not be greater than 9999 for makedate() function --added zero date check into Item_func_from_days::get_date() function
-