~drizzle-trunk/drizzle/development

« back to all changes in this revision

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

  • Committer: Lee Bieber
  • Date: 2010-12-23 02:14:02 UTC
  • mfrom: (2021.1.2 build)
  • Revision ID: kalebral@gmail.com-20101223021402-o4zhdsv3x8s0q6pz
Merge Stewart - Update innobase plugin to be based on innodb 1.1.4 from MySQL 5.5.8 
Merge Marisa - fixed markup in 'administrative.rst', which was throwing an error in the build

Show diffs side-by-side

added added

removed removed

Lines of Context:
47
47
        return(srv_buf_pool_curr_size);
48
48
}
49
49
 
 
50
/********************************************************************//**
 
51
Calculates the index of a buffer pool to the buf_pool[] array.
 
52
@return the position of the buffer pool in buf_pool[] */
 
53
UNIV_INLINE
 
54
ulint
 
55
buf_pool_index(
 
56
/*===========*/
 
57
        const buf_pool_t*       buf_pool)       /*!< in: buffer pool */
 
58
{
 
59
        ulint   i = buf_pool - buf_pool_ptr;
 
60
        ut_ad(i < MAX_BUFFER_POOLS);
 
61
        ut_ad(i < srv_buf_pool_instances);
 
62
        return(i);
 
63
}
 
64
 
 
65
/******************************************************************//**
 
66
Returns the buffer pool instance given a page instance
 
67
@return buf_pool */
 
68
UNIV_INLINE
 
69
buf_pool_t*
 
70
buf_pool_from_bpage(
 
71
/*================*/
 
72
        const buf_page_t*       bpage) /*!< in: buffer pool page */
 
73
{
 
74
        ulint   i;
 
75
        i = bpage->buf_pool_index;
 
76
        ut_ad(i < srv_buf_pool_instances);
 
77
        return(&buf_pool_ptr[i]);
 
78
}
 
79
 
 
80
/******************************************************************//**
 
81
Returns the buffer pool instance given a block instance
 
82
@return buf_pool */
 
83
UNIV_INLINE
 
84
buf_pool_t*
 
85
buf_pool_from_block(
 
86
/*================*/
 
87
        const buf_block_t*      block) /*!< in: block */
 
88
{
 
89
        return(buf_pool_from_bpage(&block->page));
 
90
}
 
91
 
50
92
/*********************************************************************//**
51
93
Gets the current size of buffer buf_pool in pages.
52
94
@return size in pages*/
887
929
}
888
930
 
889
931
/******************************************************************//**
890
 
Returns the buffer pool instance given a page instance
891
 
@return buf_pool */
892
 
UNIV_INLINE
893
 
buf_pool_t*
894
 
buf_pool_from_bpage(
895
 
/*================*/
896
 
        const buf_page_t*       bpage) /*!< in: buffer pool page */
897
 
{
898
 
        /* Every page must be in some buffer pool. */
899
 
        ut_ad(bpage->buf_pool != NULL);
900
 
 
901
 
        return(bpage->buf_pool);
902
 
}
903
 
 
904
 
/******************************************************************//**
905
 
Returns the buffer pool instance given a block instance
906
 
@return buf_pool */
907
 
UNIV_INLINE
908
 
buf_pool_t*
909
 
buf_pool_from_block(
910
 
/*================*/
911
 
        const buf_block_t*      block) /*!< in: block */
912
 
{
913
 
        return(buf_pool_from_bpage(&block->page));
914
 
}
915
 
 
916
 
/******************************************************************//**
917
932
Returns the buffer pool instance given space and offset of page
918
933
@return buffer pool */
919
934
UNIV_INLINE
930
945
        ignored_offset = offset >> 6; /* 2log of BUF_READ_AHEAD_AREA (64)*/
931
946
        fold = buf_page_address_fold(space, ignored_offset);
932
947
        index = fold % srv_buf_pool_instances;
933
 
        return buf_pool_ptr[index];
 
948
        return(&buf_pool_ptr[index]);
934
949
}
935
950
 
936
951
/******************************************************************//**
940
955
buf_pool_t*
941
956
buf_pool_from_array(
942
957
/*================*/
943
 
        ulint   index)          /*!< in: array index to get
 
958
        ulint   index)          /*!< in: array index to get
944
959
                                buffer pool instance from */
945
960
{
946
 
        return buf_pool_ptr[index];
 
961
        ut_ad(index < MAX_BUFFER_POOLS);
 
962
        ut_ad(index < srv_buf_pool_instances);
 
963
        return(&buf_pool_ptr[index]);
947
964
}
948
965
 
949
966
/******************************************************************//**