~mdcallag/mysql-patch/5.0-map

« back to all changes in this revision

Viewing changes to innobase/include/btr0sea.h

  • Committer: Mark Callaghan
  • Date: 2009-03-08 23:10:48 UTC
  • mfrom: (2676.15.35 merge-5.0-bugteam)
  • Revision ID: mdcallag@gmail.com-20090308231048-98m2y0h6lck93gn1
mergeĀ fromĀ 5.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
40
40
/*===================*/
41
41
                                /* out, own: search info struct */
42
42
        mem_heap_t*     heap);  /* in: heap where created */
 
43
/*********************************************************************
 
44
Returns the value of ref_count. The value is protected by
 
45
btr_search_latch. */
 
46
ulint
 
47
btr_search_info_get_ref_count(
 
48
/*==========================*/
 
49
                                /* out: ref_count value. */
 
50
        btr_search_t*   info);  /* in: search info. */
43
51
/*************************************************************************
44
52
Updates the search info. */
45
53
UNIV_INLINE
144
152
 
145
153
struct btr_search_struct{
146
154
        ulint   magic_n;        /* magic number */
 
155
        ulint   ref_count;      /* Number of blocks in this index tree
 
156
                                that have search index built
 
157
                                i.e. block->index points to this index.
 
158
                                Protected by btr_search_latch except
 
159
                                when during initialization in
 
160
                                btr_search_info_create(). */
 
161
 
147
162
        /* The following 4 fields are currently not used: */
148
163
        rec_t*  last_search;    /* pointer to the lower limit record of the
149
164
                                previous search; NULL if not known */
154
169
                                or BTR_SEA_SAME_PAGE */
155
170
        dulint  modify_clock;   /* value of modify clock at the time
156
171
                                last_search was stored */
157
 
        /*----------------------*/
158
 
        /* The following 4 fields are not protected by any latch: */
 
172
 
 
173
        /* The following fields are not protected by any latch.
 
174
        Unfortunately, this means that they must be aligned to
 
175
        the machine word, i.e., they cannot be turned into bit-fields. */
159
176
        page_t* root_guess;     /* the root page frame when it was last time
160
177
                                fetched, or NULL */
161
178
        ulint   hash_analysis;  /* when this exceeds a certain value, the