~drizzle-trunk/drizzle/development

« back to all changes in this revision

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

  • Committer: Eric Day
  • Date: 2009-10-31 21:53:33 UTC
  • mfrom: (1200 staging)
  • mto: This revision was merged to the branch mainline in revision 1202.
  • Revision ID: eday@oddments.org-20091031215333-j94bjoanwmi68p6f
Merged trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 
17
17
*****************************************************************************/
18
18
 
19
 
/******************************************************
 
19
/**************************************************//**
 
20
@file include/buf0flu.ic
20
21
The database buffer pool flush algorithm
21
22
 
22
23
Created 11/5/1995 Heikki Tuuri
23
24
*******************************************************/
24
25
 
 
26
#ifndef UNIV_HOTBACKUP
25
27
#include "buf0buf.h"
26
28
#include "mtr0mtr.h"
27
29
#include "srv0srv.h"
28
30
 
29
 
/************************************************************************
 
31
/********************************************************************//**
30
32
Inserts a modified block into the flush list. */
31
33
UNIV_INTERN
32
34
void
33
35
buf_flush_insert_into_flush_list(
34
36
/*=============================*/
35
 
        buf_block_t*    block); /* in/out: block which is modified */
36
 
/************************************************************************
 
37
        buf_block_t*    block); /*!< in/out: block which is modified */
 
38
/********************************************************************//**
37
39
Inserts a modified block into the flush list in the right sorted position.
38
40
This function is used by recovery, because there the modifications do not
39
41
necessarily come in the order of lsn's. */
41
43
void
42
44
buf_flush_insert_sorted_into_flush_list(
43
45
/*====================================*/
44
 
        buf_block_t*    block); /* in/out: block which is modified */
 
46
        buf_block_t*    block); /*!< in/out: block which is modified */
45
47
 
46
 
/************************************************************************
 
48
/********************************************************************//**
47
49
This function should be called at a mini-transaction commit, if a page was
48
50
modified in it. Puts the block to the list of modified blocks, if it is not
49
51
already in it. */
51
53
void
52
54
buf_flush_note_modification(
53
55
/*========================*/
54
 
        buf_block_t*    block,  /* in: block which is modified */
55
 
        mtr_t*          mtr)    /* in: mtr */
 
56
        buf_block_t*    block,  /*!< in: block which is modified */
 
57
        mtr_t*          mtr)    /*!< in: mtr */
56
58
{
57
59
        ut_ad(block);
58
60
        ut_ad(buf_block_get_state(block) == BUF_BLOCK_FILE_PAGE);
81
83
        ++srv_buf_pool_write_requests;
82
84
}
83
85
 
84
 
/************************************************************************
 
86
/********************************************************************//**
85
87
This function should be called when recovery has modified a buffer page. */
86
88
UNIV_INLINE
87
89
void
88
90
buf_flush_recv_note_modification(
89
91
/*=============================*/
90
 
        buf_block_t*    block,          /* in: block which is modified */
91
 
        ib_uint64_t     start_lsn,      /* in: start lsn of the first mtr in a
 
92
        buf_block_t*    block,          /*!< in: block which is modified */
 
93
        ib_uint64_t     start_lsn,      /*!< in: start lsn of the first mtr in a
92
94
                                        set of mtr's */
93
 
        ib_uint64_t     end_lsn)        /* in: end lsn of the last mtr in the
 
95
        ib_uint64_t     end_lsn)        /*!< in: end lsn of the last mtr in the
94
96
                                        set of mtr's */
95
97
{
96
98
        ut_ad(block);
119
121
 
120
122
        buf_pool_mutex_exit();
121
123
}
 
124
#endif /* !UNIV_HOTBACKUP */