- 25 Jan, 2011 7 commits
-
-
Sunny Bains authored
over the mutex list and free each mutex. When UNIV_MEM_DEBUG is defined, we need skip the hash mutex. It is a minor bug affecting only UNIV_SYNC_DEBUG builds, found by Michael.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
mlog_parse_string(): Enclose the comparison in UNIV_UNLIKELY, not the comparand.
-
Marko Mäkelä authored
row_vers_build_for_semi_consistent_read(): Dereference version_trx before releasing kernel_mutex, but not thereafter.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
buf_block_alloc(): ulint zip_size is always 0. buf_LRU_get_free_block(): ulint zip_size is always 0. buf_LRU_free_block(): ibool* buf_pool_mutex_released is always NULL. Remove these parameters. buf_LRU_get_free_block(): Simplify the initialization of block->page.zip and release buf_pool_mutex() earlier.
-
Sunny Bains authored
There are two main pain points, one is lookup by thread id for sync_thread_t and the other is to do a lookup by latch or level in sync_thread_t::levels. Changed the sync_thread_t::levels lookup and reserve operation from O(N) to O(1). Pure lookups are still O(N), the main change for pure lookup is that we no longer need to search up to SYNC_THREAD_N_LEVELS but only up to the number of slots actually ever used ie. it is possible some were used in the past but are now on the free list. If the in_use count drops to 0 we reset the free list too. Overload the sync_level_t::level field to track the free list. If sync_thread_t::latch == NULL then sync_thread_t::level contains the ordinal value of the previous free entry. rb://580 Approved by Jimmy Yang.
-
- 24 Jan, 2011 5 commits
-
-
Vasil Dimov authored
-
Vasil Dimov authored
-
Vasil Dimov authored
-
- 20 Jan, 2011 3 commits
-
-
Martin Hansson authored
-
Martin Hansson authored
-
Martin Hansson authored
-
- 19 Jan, 2011 10 commits
-
-
Martin Hansson authored
-
Martin Hansson authored
ZERO When dates are represented internally as strings, i.e. when a string constant is compared to a date value, both values are converted to long integers, ostensibly for fast comparisons. DATE typed integer values are converted to DATETIME by multiplying by 1,000,000 (each digit pair representing hour, minute and second, respectively). But the mechanism did not distuinguish cached INTEGER values, already in correct format, from newly converted strings. Fixed by marking the INTEGER cache as being of DATETIME format.
-
Alexander Barkov authored
-
Alexander Barkov authored
-
Bjorn Munch authored
-
Bjorn Munch authored
-
Bjorn Munch authored
-
Bjorn Munch authored
-
Bjorn Munch authored
-
Bjorn Munch authored
-
- 18 Jan, 2011 15 commits
-
-
Libing Song authored
-
Anitha Gopi authored
-
Anitha Gopi authored
-
Libing Song authored
-
Libing Song authored
rpl_packet got a timeout failure sporadically on PB when stopping slave. The real reason of this bug is that STOP SLAVE stopped IO thread first and then stopped SQL thread. It was possible that IO thread stopped after replicating part of a transaction which SQL thread was executing. SQL thread would be hung if the transaction could not be rolled back safely. After this patch, STOP SLAVE will stop SQL thread first and then stop IO thread, which guarantees that IO thread will fetch the reset of the events of the transaction that SQL thread is executing, so that SQL thread can finish the transaction if it cannot be rolled back safely. Added below auxiliary files to make the test code neater. restart_slave_sql.inc rpl_connection_master.inc rpl_connection_slave.inc rpl_connection_slave1.inc
-
John H. Embretsen authored
Fix for bug#45740 introduced test case using SHOW TABLE STATUS against a Memory table using latin1 character in table name. The test failed on Windows and FreeBSD due to a difference in the value for Avg_row_length. The average row length normally depends on the values for data length and row count. According to the 5.5 manual data length is approximate with Memory tables. With MyISAM and InnoDB the Avg_row_length is the same on Windows and Solaris. The solution implemented by this patch is to mask out the value for Avg_row_length, as it may vary when using Memory tables.
-
Bjorn Munch authored
-
Bjorn Munch authored
Undoing the patch, it complicates the code but is not the solution I do not beleive newline mismatch could be the cause of this failure First, I cannot see how this could be a problem, mtr ignores the newline when reading the expect file, and the file is written and read on Windows. Second, if this really was the problem it should have been deterministic: either the newline is correctly interepreted or it is not.
-
Bjorn Munch authored
-
Bjorn Munch authored
-
Bjorn Munch authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
rw_lock_debug_print(): Add parameter FILE* for specifying the output stream. rw_lock_list_print_info(): Invoke rw_lock_debug_print() on file, not stderr.
-
Bjorn Munch authored
-
Bjorn Munch authored
-