~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/innobase/include/buf0flu.h

Merge Revision revid:svn-v4:16c675df-0fcb-4bc9-8058-dcc011a37293:branches/zip:6790 from MySQL InnoDB

Original revid:svn-v4:16c675df-0fcb-4bc9-8058-dcc011a37293:branches/zip:6790

Original Authors: jyang
Original commit message:
branches/zip: Fix bug #51356: "many valgrind errors in error messages
with concurrent ddl". Null terminate the name string returned
from innobase_convert_identifier() call when reporting DB_DUPLICATE_KEY
error in create_table_def().
rb://266 approved by Marko

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*****************************************************************************
2
2
 
3
 
Copyright (c) 1995, 2010, Innobase Oy. All Rights Reserved.
 
3
Copyright (c) 1995, 2009, Innobase Oy. All Rights Reserved.
4
4
 
5
5
This program is free software; you can redistribute it and/or modify it under
6
6
the terms of the GNU General Public License as published by the Free Software
40
40
/*=============*/
41
41
        buf_page_t*     bpage); /*!< in: pointer to the block in question */
42
42
/********************************************************************//**
43
 
Relocates a buffer control block on the flush_list.
44
 
Note that it is assumed that the contents of bpage has already been
45
 
copied to dpage. */
46
 
UNIV_INTERN
47
 
void
48
 
buf_flush_relocate_on_flush_list(
49
 
/*=============================*/
50
 
        buf_page_t*     bpage,  /*!< in/out: control block being moved */
51
 
        buf_page_t*     dpage); /*!< in/out: destination block */
52
 
/********************************************************************//**
53
43
Updates the flush system data structures when a write is completed. */
54
44
UNIV_INTERN
55
45
void
149
139
 
150
140
struct buf_flush_stat_struct
151
141
{
152
 
        ib_uint64_t     redo;           /*!< amount of redo generated. */
153
 
        ulint           n_flushed;      /*!< number of pages flushed. */
 
142
        ib_uint64_t     redo;           /**< amount of redo generated. */
 
143
        ulint           n_flushed;      /**< number of pages flushed. */
154
144
};
155
145
 
156
146
/** Statistics for selecting flush rate of dirty pages. */
185
175
/*====================*/
186
176
#endif /* UNIV_DEBUG || UNIV_BUF_DEBUG */
187
177
 
188
 
/******************************************************************//**
189
 
Initialize the red-black tree to speed up insertions into the flush_list
190
 
during recovery process. Should be called at the start of recovery
191
 
process before any page has been read/written. */
192
 
UNIV_INTERN
193
 
void
194
 
buf_flush_init_flush_rbt(void);
195
 
/*==========================*/
196
 
 
197
 
/******************************************************************//**
198
 
Frees up the red-black tree. */
199
 
UNIV_INTERN
200
 
void
201
 
buf_flush_free_flush_rbt(void);
202
 
/*==========================*/
203
 
 
204
178
/** When buf_flush_free_margin is called, it tries to make this many blocks
205
179
available to replacement in the free list and at the end of the LRU list (to
206
180
make sure that a read-ahead batch can be read efficiently in a single