1
0
mirror of https://github.com/MariaDB/server.git synced 2025-09-15 05:41:27 +03:00
Commit Graph

1771 Commits

Author SHA1 Message Date
Marko Mäkelä
493b45e85f Fix a bogus debug assertion in the fix of Bug #57707.
buf_pool_init(): Replace ut_ad(n_instances < MAX_BUFFER_POOLS)
with ut_ad(n_instances <= MAX_BUFFER_POOLS).
(Spotted by Michael Izioumtchenko.)
Add ut_ad(n_instances > 0).
2010-10-27 21:50:45 +03:00
Marko Mäkelä
26d81a2a98 Bug #57707 InnoDB buf_page_t size has doubled on 32-bit systems
buf_page_t: Remove the buf_pool pointer. Add buf_pool_index:6 next to
buf_fix_count:19 (it was buf_fix_count:25). This will limit the number
of concurrent transactions to somewhere around 524,288.

buf_pool_index(buf_pool): A new function to determine the index of a
buffer pool in buf_pool_ptr[].

buf_pool_ptr: Make this a dynamically allocated array instead of an
array of pointers. Allocate the array in buf_pool_init() and free in
buf_pool_free().

buf_pool_free_instance(): No longer free the buf_pool object, as it is
allocated from a big array.

buf_pool_from_bpage(), buf_pool_from_block(): Move the definitions to
the beginning of the files, because some compilers have (had) problems
with forward definitions of inline functions. Calculate the buffer
pool from buf_pool_index.

buf_pool_from_array(): Add debug assertions for input validation.
2010-10-27 09:56:56 +03:00
Marko Mäkelä
9c168f3225 Bug #57707 InnoDB buf_page_t size has doubled on 32-bit systems
buf_page_t: Remove the buf_pool pointer. Add buf_pool_index:6 next to
buf_fix_count:19 (it was buf_fix_count:25). This will limit the number
of concurrent transactions to somewhere around 524,288.

buf_pool_index(buf_pool): A new function to determine the index of a
buffer pool in buf_pool_ptr[].

buf_pool_ptr: Make this a dynamically allocated array instead of an
array of pointers. Allocate the array in buf_pool_init() and free in
buf_pool_free().

buf_pool_free_instance(): No longer free the buf_pool object, as it is
allocated from a big array.

buf_pool_from_bpage(), buf_pool_from_block(): Move the definitions to
the beginning of the files, because some compilers have (had) problems
with forward definitions of inline functions. Calculate the buffer
pool from buf_pool_index.

buf_pool_from_array(): Add debug assertions for input validation.
2010-10-27 09:56:56 +03:00
Marko Mäkelä
67a0d9c0e0 Fix bit-rot left by the multiple buffer pools patch.
Rename buf_pool_watch, buf_pool_mutex, buf_pool_zip_mutex
to buf_pool->watch, buf_pool->mutex, buf_pool->zip_mutex
in comments. Refer to buf_pool->flush_list_mutex instead of
flush_list_mutex.

Remove obsolete declarations of buf_pool_mutex and buf_pool_zip_mutex.
2010-10-20 14:46:28 +03:00
Marko Mäkelä
c486d4da98 Fix bit-rot left by the multiple buffer pools patch.
Rename buf_pool_watch, buf_pool_mutex, buf_pool_zip_mutex
to buf_pool->watch, buf_pool->mutex, buf_pool->zip_mutex
in comments. Refer to buf_pool->flush_list_mutex instead of
flush_list_mutex.

Remove obsolete declarations of buf_pool_mutex and buf_pool_zip_mutex.
2010-10-20 14:46:28 +03:00
Marko Mäkelä
6dfc85f0f7 Merge Bug #56680 from mysql-5.1.
Additional fixes in 5.5:

ibuf_set_del_mark(): Add diagnostics when setting a buffered delete-mark fails.

ibuf_delete(): Correct a misleading comment about non-found records.

rec_print(): Add a const qualifier to the index parameter.

Bug #56680 wrong InnoDB results from a case-insensitive covering index

row_search_for_mysql(): When a secondary index record might not be
visible in the current transaction's read view and we consult the
clustered index and optionally some undo log records, return the
relevant columns of the clustered index record to MySQL instead of the
secondary index record.

ibuf_insert_to_index_page_low(): New function, refactored from
ibuf_insert_to_index_page().

ibuf_insert_to_index_page(): When we are inserting a record in place
of a delete-marked record and some fields of the record differ, update
that record just like row_ins_sec_index_entry_by_modify() would do.

btr_cur_update_alloc_zip(): Make the function public.

mysql_row_templ_t: Add clust_rec_field_no.

row_sel_store_mysql_rec(), row_sel_push_cache_row_for_mysql(): Add the
flag rec_clust, for returning data at clust_rec_field_no instead of
rec_field_no. Resurrect the debug assertion that the record not be
marked for deletion. (Bug #55626)

[UNIV_DEBUG || UNIV_IBUF_DEBUG] ibuf_debug, buf_page_get_gen(),
buf_flush_page_try():
Implement innodb_change_buffering_debug=1 for evicting pages from the
buffer pool, so that change buffering will be attempted more
frequently.
2010-10-19 09:35:14 +03:00
Marko Mäkelä
e85e1206b1 Merge Bug #56680 from mysql-5.1.
Additional fixes in 5.5:

ibuf_set_del_mark(): Add diagnostics when setting a buffered delete-mark fails.

ibuf_delete(): Correct a misleading comment about non-found records.

rec_print(): Add a const qualifier to the index parameter.

Bug #56680 wrong InnoDB results from a case-insensitive covering index

row_search_for_mysql(): When a secondary index record might not be
visible in the current transaction's read view and we consult the
clustered index and optionally some undo log records, return the
relevant columns of the clustered index record to MySQL instead of the
secondary index record.

ibuf_insert_to_index_page_low(): New function, refactored from
ibuf_insert_to_index_page().

ibuf_insert_to_index_page(): When we are inserting a record in place
of a delete-marked record and some fields of the record differ, update
that record just like row_ins_sec_index_entry_by_modify() would do.

btr_cur_update_alloc_zip(): Make the function public.

mysql_row_templ_t: Add clust_rec_field_no.

row_sel_store_mysql_rec(), row_sel_push_cache_row_for_mysql(): Add the
flag rec_clust, for returning data at clust_rec_field_no instead of
rec_field_no. Resurrect the debug assertion that the record not be
marked for deletion. (Bug #55626)

[UNIV_DEBUG || UNIV_IBUF_DEBUG] ibuf_debug, buf_page_get_gen(),
buf_flush_page_try():
Implement innodb_change_buffering_debug=1 for evicting pages from the
buffer pool, so that change buffering will be attempted more
frequently.
2010-10-19 09:35:14 +03:00
Marko Mäkelä
a8f2f7af32 Bug #56680 wrong InnoDB results from a case-insensitive covering index
row_search_for_mysql(): When a secondary index record might not be
visible in the current transaction's read view and we consult the
clustered index and optionally some undo log records, return the
relevant columns of the clustered index record to MySQL instead of the
secondary index record.

REC_INFO_DELETED_FLAG: Move the definition from rem0rec.ic to rem0rec.h.

ibuf_insert_to_index_page_low(): New function, refactored from
ibuf_insert_to_index_page().

ibuf_insert_to_index_page(): When we are inserting a record in place
of a delete-marked record and some fields of the record differ, update
that record just like row_ins_sec_index_entry_by_modify() would do.

mysql_row_templ_t: Add clust_rec_field_no.

row_sel_store_mysql_rec(), row_sel_push_cache_row_for_mysql(): Add the
flag rec_clust, for returning data at clust_rec_field_no instead of
rec_field_no. Resurrect the debug assertion that the record not be
marked for deletion. (Bug #55626)

buf_LRU_free_block(): Refactored from
buf_LRU_search_and_free_block(). This is needed for the
innodb_change_buffering_debug diagnostics.

[UNIV_DEBUG || UNIV_IBUF_DEBUG] ibuf_debug, buf_page_get_gen(),
buf_flush_page_try():
Implement innodb_change_buffering_debug=1 for evicting pages from the
buffer pool, so that change buffering will be attempted more
frequently.
2010-10-19 08:58:53 +03:00
Marko Mäkelä
f2d39c9eaf Bug #56680 wrong InnoDB results from a case-insensitive covering index
row_search_for_mysql(): When a secondary index record might not be
visible in the current transaction's read view and we consult the
clustered index and optionally some undo log records, return the
relevant columns of the clustered index record to MySQL instead of the
secondary index record.

REC_INFO_DELETED_FLAG: Move the definition from rem0rec.ic to rem0rec.h.

ibuf_insert_to_index_page_low(): New function, refactored from
ibuf_insert_to_index_page().

ibuf_insert_to_index_page(): When we are inserting a record in place
of a delete-marked record and some fields of the record differ, update
that record just like row_ins_sec_index_entry_by_modify() would do.

mysql_row_templ_t: Add clust_rec_field_no.

row_sel_store_mysql_rec(), row_sel_push_cache_row_for_mysql(): Add the
flag rec_clust, for returning data at clust_rec_field_no instead of
rec_field_no. Resurrect the debug assertion that the record not be
marked for deletion. (Bug #55626)

buf_LRU_free_block(): Refactored from
buf_LRU_search_and_free_block(). This is needed for the
innodb_change_buffering_debug diagnostics.

[UNIV_DEBUG || UNIV_IBUF_DEBUG] ibuf_debug, buf_page_get_gen(),
buf_flush_page_try():
Implement innodb_change_buffering_debug=1 for evicting pages from the
buffer pool, so that change buffering will be attempted more
frequently.
2010-10-19 08:58:53 +03:00
Vasil Dimov
288a543332 (buf0flu.c:136) Bug#55227 Fix compiler warnings in innodb with gcc 4.6 2010-09-20 18:45:40 +03:00
Vasil Dimov
2460ca43d9 (buf0flu.c:136) Bug#55227 Fix compiler warnings in innodb with gcc 4.6 2010-09-20 18:45:40 +03:00
Vasil Dimov
87d4bae87e (partially) Fix Bug#55227 Fix compiler warnings in innodb with gcc 4.6
Fix compiler warning:
buf/buf0flu.c: In function 'buf_flush_batch':
buf/buf0flu.c:844:9: error: variable 'old_page_count' set but not used [-Werror=unused-but-set-variable]
2010-09-14 12:00:58 +03:00
Vasil Dimov
3684641cd9 (partially) Fix Bug#55227 Fix compiler warnings in innodb with gcc 4.6
Fix compiler warning:
buf/buf0flu.c: In function 'buf_flush_batch':
buf/buf0flu.c:844:9: error: variable 'old_page_count' set but not used [-Werror=unused-but-set-variable]
2010-09-14 12:00:58 +03:00
Alexander Nozdrin
f0fe6e4dac Auto-merge from mysql-5.5-merge. 2010-08-30 18:07:40 +04:00
Alexander Nozdrin
dc195adf34 Auto-merge from mysql-5.5-merge. 2010-08-30 18:07:40 +04:00
Mats Kindahl
b0836bd309 Merging with mysql-5.5-stage. 2010-08-16 14:50:27 +02:00
Mats Kindahl
cd34770558 Merging with mysql-5.5-stage. 2010-08-16 14:50:27 +02:00
Inaam Rana
0f9c818545 When the caller of buf_flush_list() provides us with the number of
pages that it wants to flush then we should honor that value as in
not going beyond that in our eagerness to flush the neighbors of
the selected victim.
2010-07-30 10:39:16 -04:00
Inaam Rana
c7e307e987 When the caller of buf_flush_list() provides us with the number of
pages that it wants to flush then we should honor that value as in
not going beyond that in our eagerness to flush the neighbors of
the selected victim.
2010-07-30 10:39:16 -04:00
Marko Mäkelä
c1567ecebd Bug#54728: Replace the dulint struct with a 64-bit integer. 2010-06-23 14:06:59 +03:00
Marko Mäkelä
d26a9ed0d3 Bug#54728: Replace the dulint struct with a 64-bit integer. 2010-06-23 14:06:59 +03:00
Marko Mäkelä
0d44ea07dc buf_flush_insert_in_flush_rbt(), buf_flush_validate_low():
Silence GCC warnings about dereferencing a type-punned pointer.
Approved by Jimmy Yang.
2010-06-22 13:43:17 +03:00
Marko Mäkelä
3ba73a2173 buf_flush_insert_in_flush_rbt(), buf_flush_validate_low():
Silence GCC warnings about dereferencing a type-punned pointer.
Approved by Jimmy Yang.
2010-06-22 13:43:17 +03:00
Marko Mäkelä
d264c3afbc Merge a change from mysql-5.1-innodb:
------------------------------------------------------------
revno: 3502
revision-id: marko.makela@oracle.com-20100608114055-7b04ytuqz0lde6v1
parent: jimmy.yang@oracle.com-20100603134448-itzduhwgbw0b8nlh
committer: Marko Mäkelä <marko.makela@oracle.com>
branch nick: 5.1-innodb
timestamp: Tue 2010-06-08 14:40:55 +0300
message:
  buf_page_get_gen(): Pass file,line to rw_lock_x_lock().
2010-06-08 14:47:34 +03:00
Marko Mäkelä
570a4ae8fe Merge a change from mysql-5.1-innodb:
------------------------------------------------------------
revno: 3502
revision-id: marko.makela@oracle.com-20100608114055-7b04ytuqz0lde6v1
parent: jimmy.yang@oracle.com-20100603134448-itzduhwgbw0b8nlh
committer: Marko Mäkelä <marko.makela@oracle.com>
branch nick: 5.1-innodb
timestamp: Tue 2010-06-08 14:40:55 +0300
message:
  buf_page_get_gen(): Pass file,line to rw_lock_x_lock().
2010-06-08 14:47:34 +03:00
Mats Kindahl
aaf2bdde94 WL#5363: Thread Pool Service Interface
In order to allow thread schedulers to be dynamically loaded,
it is necessary to make the following changes to the server:

- Two new service interfaces

- Modifications to InnoDB to inform the thread scheduler of state changes.

- Changes to the VIO subsystem for checking if data is available on a socket.

- Elimination of remains of the old thread pool implementation.

The two new service interfaces introduces are:

my_thread_scheduler
  A service interface to register a thread
  scheduler.

thd_wait
  A service interface to inform thread scheduler
  that the thread is about to start waiting.

In addition, the patch adds code that:

- Add a call to thd_wait for table locks in mysys
  thd_lock.c by introducing a set function that
  can be used to set a callback to be used when
  waiting on a lock and resuming from waiting.

- Calling the mysys set function from the server
  to set the callbacks correctly.
2010-06-07 16:01:39 +02:00
Mats Kindahl
b1dcf448ea WL#5363: Thread Pool Service Interface
In order to allow thread schedulers to be dynamically loaded,
it is necessary to make the following changes to the server:

- Two new service interfaces

- Modifications to InnoDB to inform the thread scheduler of state changes.

- Changes to the VIO subsystem for checking if data is available on a socket.

- Elimination of remains of the old thread pool implementation.

The two new service interfaces introduces are:

my_thread_scheduler
  A service interface to register a thread
  scheduler.

thd_wait
  A service interface to inform thread scheduler
  that the thread is about to start waiting.

In addition, the patch adds code that:

- Add a call to thd_wait for table locks in mysys
  thd_lock.c by introducing a set function that
  can be used to set a callback to be used when
  waiting on a lock and resuming from waiting.

- Calling the mysys set function from the server
  to set the callbacks correctly.
2010-06-07 16:01:39 +02:00
Marko Mäkelä
c0dd84217c Merge from mysql-5.1-innodb:
------------------------------------------------------------
  revno: 3478.1.3
  revision-id: marko.makela@oracle.com-20100525123748-pmpehbg29oyhc1ns
  parent: marko.makela@oracle.com-20100524114349-5kaw52sz0yh4szkb
  committer: Marko Mäkelä <marko.makela@oracle.com>
  branch nick: 5.1-innodb
  timestamp: Tue 2010-05-25 15:37:48 +0300
  message:
    Suppress bogus Valgrind warnings about buf_buddy_relocate()
    accessing uninitialized memory in Valgrind-instrumented builds.
2010-06-01 14:56:22 +03:00
Marko Mäkelä
ea53f9af45 Merge from mysql-5.1-innodb:
------------------------------------------------------------
  revno: 3478.1.3
  revision-id: marko.makela@oracle.com-20100525123748-pmpehbg29oyhc1ns
  parent: marko.makela@oracle.com-20100524114349-5kaw52sz0yh4szkb
  committer: Marko Mäkelä <marko.makela@oracle.com>
  branch nick: 5.1-innodb
  timestamp: Tue 2010-05-25 15:37:48 +0300
  message:
    Suppress bogus Valgrind warnings about buf_buddy_relocate()
    accessing uninitialized memory in Valgrind-instrumented builds.
2010-06-01 14:56:22 +03:00
Calvin Sun
c2b0ebb55b mysql-trunk-innodb: fix compile errors on Windows with UNIV_DEBUG defined. 2010-05-21 16:30:09 -05:00
Calvin Sun
dde975afb9 mysql-trunk-innodb: fix compile errors on Windows with UNIV_DEBUG defined. 2010-05-21 16:30:09 -05:00
Marko Mäkelä
cc182a0943 Merge a change from mysql-5.1-innodb:
------------------------------------------------------------
revno: 3475
revision-id: marko.makela@oracle.com-20100520130734-ueow9mn60czp7o4m
parent: marko.makela@oracle.com-20100520104042-ma2nsscqdvwoph8k
committer: Marko Mäkelä <marko.makela@oracle.com>
branch nick: 5.1-innodb
timestamp: Thu 2010-05-20 16:07:34 +0300
message:
  buf_LRU_free_block(): Correct an error in the comment.
2010-05-20 16:16:32 +03:00
Marko Mäkelä
8344f58aa4 Merge a change from mysql-5.1-innodb:
------------------------------------------------------------
revno: 3475
revision-id: marko.makela@oracle.com-20100520130734-ueow9mn60czp7o4m
parent: marko.makela@oracle.com-20100520104042-ma2nsscqdvwoph8k
committer: Marko Mäkelä <marko.makela@oracle.com>
branch nick: 5.1-innodb
timestamp: Thu 2010-05-20 16:07:34 +0300
message:
  buf_LRU_free_block(): Correct an error in the comment.
2010-05-20 16:16:32 +03:00
Marko Mäkelä
9bf086dcff Merge a change from mysql-5.1-innodb:
------------------------------------------------------------
revno: 3471
revision-id: marko.makela@oracle.com-20100519080152-h3555oqmu3wo95so
parent: marko.makela@oracle.com-20100519075843-4gl3uijo6cwjtcf9
committer: Marko Mäkelä <marko.makela@oracle.com>
branch nick: 5.1-innodb
timestamp: Wed 2010-05-19 11:01:52 +0300
message:
  Silence some more bogus Valgrind warnings on non-32-bit systems. (Bug #53307)
2010-05-19 12:36:27 +03:00
Marko Mäkelä
86bd3125d7 Merge a change from mysql-5.1-innodb:
------------------------------------------------------------
revno: 3471
revision-id: marko.makela@oracle.com-20100519080152-h3555oqmu3wo95so
parent: marko.makela@oracle.com-20100519075843-4gl3uijo6cwjtcf9
committer: Marko Mäkelä <marko.makela@oracle.com>
branch nick: 5.1-innodb
timestamp: Wed 2010-05-19 11:01:52 +0300
message:
  Silence some more bogus Valgrind warnings on non-32-bit systems. (Bug #53307)
2010-05-19 12:36:27 +03:00
Inaam Rana
52223f7217 Initialize block->is_hashed to avoid valgrind warning. 2010-05-18 12:53:02 -04:00
Inaam Rana
7ac44b5d9e Initialize block->is_hashed to avoid valgrind warning. 2010-05-18 12:53:02 -04:00
Vasil Dimov
a6142ed8e4 Silence a spurious valrgind warning:
==2229== Uninitialised byte(s) found during client check request
==2229==    at 0x9A599D: buf_page_get_gen (buf0buf.c:3003)
==2229==    by 0x9D58CD: fsp_header_init (fsp0fsp.c:974)
==2229==    by 0x95BEAE: innobase_start_or_create_for_mysql (srv0start.c:1537)
==2229==    by 0x91DDBB: innobase_init(void*) (ha_innodb.cc:2409)
==2229==    by 0x73AF1F: ha_initialize_handlerton(st_plugin_int*) (handler.cc:475)
==2229==    by 0x5DBAE3: plugin_initialize(st_plugin_int*) (sql_plugin.cc:1057)
==2229==    by 0x5DD185: plugin_init(int*, char**, int) (sql_plugin.cc:1343)
==2229==    by 0x53830A: init_server_components() (mysqld.cc:4141)
==2229==    by 0x539048: mysqld_main(int, char**) (mysqld.cc:4742)
==2229==    by 0x52D412: main (main.cc:24)
==2229==  Address 0x998B00C is not stack'd, malloc'd or (recently) free'd
==2229== (Memcheck does not allow error to be suppressed)

Approved by:	Marko (rb://345)
2010-05-17 09:32:06 +03:00
Vasil Dimov
930e66c206 Silence a spurious valrgind warning:
==2229== Uninitialised byte(s) found during client check request
==2229==    at 0x9A599D: buf_page_get_gen (buf0buf.c:3003)
==2229==    by 0x9D58CD: fsp_header_init (fsp0fsp.c:974)
==2229==    by 0x95BEAE: innobase_start_or_create_for_mysql (srv0start.c:1537)
==2229==    by 0x91DDBB: innobase_init(void*) (ha_innodb.cc:2409)
==2229==    by 0x73AF1F: ha_initialize_handlerton(st_plugin_int*) (handler.cc:475)
==2229==    by 0x5DBAE3: plugin_initialize(st_plugin_int*) (sql_plugin.cc:1057)
==2229==    by 0x5DD185: plugin_init(int*, char**, int) (sql_plugin.cc:1343)
==2229==    by 0x53830A: init_server_components() (mysqld.cc:4141)
==2229==    by 0x539048: mysqld_main(int, char**) (mysqld.cc:4742)
==2229==    by 0x52D412: main (main.cc:24)
==2229==  Address 0x998B00C is not stack'd, malloc'd or (recently) free'd
==2229== (Memcheck does not allow error to be suppressed)

Approved by:	Marko (rb://345)
2010-05-17 09:32:06 +03:00
Marko Mäkelä
dc322344fc Merge from mysql-5.1-innodb:
------------------------------------------------------------
  revno: 3458
  revision-id: marko.makela@oracle.com-20100511105012-b2t7wvz6mu6bll74
  parent: marko.makela@oracle.com-20100511104910-nim8kgguawpis7zo
  committer: Marko Mäkelä <marko.makela@oracle.com>
  branch nick: mysql-5.1-innodb
  timestamp: Tue 2010-05-11 13:50:12 +0300
  message:
    Do not demand that buf_page_t be fully initialized on 64-bit systems.
    There may be padding before buf_page_t::zip. (Bug #53307)
2010-05-11 18:46:17 +03:00
Marko Mäkelä
9a3c4beccc Merge from mysql-5.1-innodb:
------------------------------------------------------------
  revno: 3458
  revision-id: marko.makela@oracle.com-20100511105012-b2t7wvz6mu6bll74
  parent: marko.makela@oracle.com-20100511104910-nim8kgguawpis7zo
  committer: Marko Mäkelä <marko.makela@oracle.com>
  branch nick: mysql-5.1-innodb
  timestamp: Tue 2010-05-11 13:50:12 +0300
  message:
    Do not demand that buf_page_t be fully initialized on 64-bit systems.
    There may be padding before buf_page_t::zip. (Bug #53307)
2010-05-11 18:46:17 +03:00
Vasil Dimov
77817e64bb Merge from mysql-5.1-innodb:
------------------------------------------------------------
  revno: 3439
  revision-id: marko.makela@oracle.com-20100504124744-c1ivf5tm90nv7lc1
  parent: marko.makela@oracle.com-20100504105546-4ew7a77e9uhxmhho
  committer: Marko M?kel? <marko.makela@oracle.com>
  branch nick: 5.1-innodb
  timestamp: Tue 2010-05-04 15:47:44 +0300
  message:
    Add Valgrind checks to catch uninitialized writes to data files.
    buf_flush_insert_into_flush_list(),
    buf_flush_insert_sorted_into_flush_list(),
    buf_flush_post_to_doublewrite_buf(): Check that the page is initialized.
  modified:
    storage/innodb_plugin/buf/buf0flu.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbuf%2Fbuf0flu.c
  ------------------------------------------------------------
2010-05-04 16:50:08 +03:00
Vasil Dimov
84745ca419 Merge from mysql-5.1-innodb:
------------------------------------------------------------
  revno: 3439
  revision-id: marko.makela@oracle.com-20100504124744-c1ivf5tm90nv7lc1
  parent: marko.makela@oracle.com-20100504105546-4ew7a77e9uhxmhho
  committer: Marko M?kel? <marko.makela@oracle.com>
  branch nick: 5.1-innodb
  timestamp: Tue 2010-05-04 15:47:44 +0300
  message:
    Add Valgrind checks to catch uninitialized writes to data files.
    buf_flush_insert_into_flush_list(),
    buf_flush_insert_sorted_into_flush_list(),
    buf_flush_post_to_doublewrite_buf(): Check that the page is initialized.
  modified:
    storage/innodb_plugin/buf/buf0flu.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbuf%2Fbuf0flu.c
  ------------------------------------------------------------
2010-05-04 16:50:08 +03:00
Marko Mäkelä
6e5619be2c Add Valgrind checks to catch uninitialized writes to data files.
buf_flush_insert_into_flush_list(),
buf_flush_insert_sorted_into_flush_list(),
buf_flush_post_to_doublewrite_buf(): Check that the page is initialized.
2010-05-04 15:55:10 +03:00
Marko Mäkelä
5f0ff946c9 Add Valgrind checks to catch uninitialized writes to data files.
buf_flush_insert_into_flush_list(),
buf_flush_insert_sorted_into_flush_list(),
buf_flush_post_to_doublewrite_buf(): Check that the page is initialized.
2010-05-04 15:55:10 +03:00
Vasil Dimov
b0d1eaab03 Merge from mysql-5.1-innodb:
------------------------------------------------------------
  revno: 3436
  revision-id: marko.makela@oracle.com-20100503122859-k73bl51re93o0mt4
  parent: vasil.dimov@oracle.com-20100430100236-9ncldjxpi14ec7el
  committer: Marko M?kel? <marko.makela@oracle.com>
  branch nick: 5.1-innodb
  timestamp: Mon 2010-05-03 15:28:59 +0300
  message:
    buf_zip_decompress(): Allow BUF_NO_CHECKSUM_MAGIC as the stamped checksum.
    buf_page_get_gen(): Assert that buf_zip_decompress() succeeds.
    Callers are not prepared for a NULL return value. (Bug #53248)
  modified:
    storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog
    storage/innodb_plugin/buf/buf0buf.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbuf%2Fbuf0buf.c
  ------------------------------------------------------------
2010-05-04 13:58:43 +03:00
Vasil Dimov
4ba847463f Merge from mysql-5.1-innodb:
------------------------------------------------------------
  revno: 3436
  revision-id: marko.makela@oracle.com-20100503122859-k73bl51re93o0mt4
  parent: vasil.dimov@oracle.com-20100430100236-9ncldjxpi14ec7el
  committer: Marko M?kel? <marko.makela@oracle.com>
  branch nick: 5.1-innodb
  timestamp: Mon 2010-05-03 15:28:59 +0300
  message:
    buf_zip_decompress(): Allow BUF_NO_CHECKSUM_MAGIC as the stamped checksum.
    buf_page_get_gen(): Assert that buf_zip_decompress() succeeds.
    Callers are not prepared for a NULL return value. (Bug #53248)
  modified:
    storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog
    storage/innodb_plugin/buf/buf0buf.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbuf%2Fbuf0buf.c
  ------------------------------------------------------------
2010-05-04 13:58:43 +03:00
Inaam Rana
e2a3bb5acc buf_flush_list() should return failure if one of the buffer pool
was skipped because another flush batch was active. This is to
ensure that the when we return success then it is guaranteed that
all pages up to the lsn_limit have been flushed to the disk.
2010-04-26 23:24:45 -04:00
Inaam Rana
e77de87a11 buf_flush_list() should return failure if one of the buffer pool
was skipped because another flush batch was active. This is to
ensure that the when we return success then it is guaranteed that
all pages up to the lsn_limit have been flushed to the disk.
2010-04-26 23:24:45 -04:00
Vasil Dimov
c7525a0130 Merge from innodb-branches-innodb+ (2) 2010-04-19 20:53:16 +03:00