InnoDB Plugin  1.0
Typedefs | Enumerations
buf0types.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define BUF_BUDDY_LOW_SHIFT   UNIV_ZIP_SIZE_SHIFT_MIN
#define BUF_BUDDY_LOW   (1U << BUF_BUDDY_LOW_SHIFT)
#define BUF_BUDDY_SIZES   (UNIV_PAGE_SIZE_SHIFT - BUF_BUDDY_LOW_SHIFT)
#define BUF_BUDDY_SIZES_MAX
#define BUF_BUDDY_HIGH   (BUF_BUDDY_LOW << BUF_BUDDY_SIZES)

Typedefs

typedef byte buf_frame_t

Enumerations

enum  buf_flush_t { BUF_FLUSH_LRU = 0, BUF_FLUSH_LIST, BUF_FLUSH_SINGLE_PAGE, BUF_FLUSH_N_TYPES }
enum  buf_remove_t { BUF_REMOVE_ALL_NO_WRITE, BUF_REMOVE_FLUSH_NO_WRITE, BUF_REMOVE_FLUSH_WRITE }
enum  buf_io_fix { BUF_IO_NONE = 0, BUF_IO_READ, BUF_IO_WRITE, BUF_IO_PIN }
enum  srv_checksum_algorithm_t {
  SRV_CHECKSUM_ALGORITHM_CRC32, SRV_CHECKSUM_ALGORITHM_STRICT_CRC32, SRV_CHECKSUM_ALGORITHM_INNODB, SRV_CHECKSUM_ALGORITHM_STRICT_INNODB,
  SRV_CHECKSUM_ALGORITHM_NONE, SRV_CHECKSUM_ALGORITHM_STRICT_NONE
}

Detailed Description

The database buffer pool global types for the directory

Created 11/17/1995 Heikki Tuuri

Macro Definition Documentation

#define BUF_BUDDY_HIGH   (BUF_BUDDY_LOW << BUF_BUDDY_SIZES)
twice the maximum block size of the buddy system;

the underlying memory is aligned by this amount: this must be equal to UNIV_PAGE_SIZE

#define BUF_BUDDY_LOW   (1U << BUF_BUDDY_LOW_SHIFT)

Smallest buddy page size

#define BUF_BUDDY_LOW_SHIFT   UNIV_ZIP_SIZE_SHIFT_MIN

Parameters of binary buddy system for compressed pages (buf0buddy.h) Zip shift value for the smallest page size

#define BUF_BUDDY_SIZES   (UNIV_PAGE_SIZE_SHIFT - BUF_BUDDY_LOW_SHIFT)

Actual number of buddy sizes based on current page size

#define BUF_BUDDY_SIZES_MAX
Value:

Maximum number of buddy sizes based on the max page size

Typedef Documentation

typedef byte buf_frame_t

A buffer frame.

See Also
page_t

Enumeration Type Documentation

Flags for flush types

Enumerator:
BUF_FLUSH_LRU 

flush via the LRU list

BUF_FLUSH_LIST 

flush via the flush list of dirty blocks

BUF_FLUSH_SINGLE_PAGE 

flush via the LRU list but only a single page

BUF_FLUSH_N_TYPES 

index of last element + 1

enum buf_io_fix

Flags for io_fix types

Enumerator:
BUF_IO_NONE 

no pending I/O

BUF_IO_READ 

read pending

BUF_IO_WRITE 

write pending

BUF_IO_PIN 

disallow relocation of block and its removal of from the flush_list

Algorithm to remove the pages for a tablespace from the buffer pool.

See buf_LRU_flush_or_remove_pages().

Enumerator:
BUF_REMOVE_ALL_NO_WRITE 

Remove all pages from the buffer pool, don't write or sync to disk

BUF_REMOVE_FLUSH_NO_WRITE 

Remove only, from the flush list, don't write or sync to disk

BUF_REMOVE_FLUSH_WRITE 

Flush dirty pages to disk only don't remove from the buffer pool

Alternatives for srv_checksum_algorithm, which can be changed by

setting innodb_checksum_algorithm

Enumerator:
SRV_CHECKSUM_ALGORITHM_CRC32 

Write crc32, allow crc32, innodb or none when reading

SRV_CHECKSUM_ALGORITHM_STRICT_CRC32 

Write crc32, allow crc32 when reading

SRV_CHECKSUM_ALGORITHM_INNODB 

Write innodb, allow crc32, innodb or none when reading

SRV_CHECKSUM_ALGORITHM_STRICT_INNODB 

Write innodb, allow innodb when reading

SRV_CHECKSUM_ALGORITHM_NONE 

Write none, allow crc32, innodb or none when reading

SRV_CHECKSUM_ALGORITHM_STRICT_NONE 

Write none, allow none when reading