Class: Innodb::Page::SysIbufHeader

Inherits:
Innodb::Page show all
Defined in:
lib/innodb/page/sys_ibuf_header.rb

Defined Under Namespace

Classes: Header

Constant Summary

Constants inherited from Innodb::Page

PAGE_TYPE, PAGE_TYPE_BY_VALUE, UNDEFINED_PAGE_NUMBER

Instance Attribute Summary

Attributes inherited from Innodb::Page

#space

Instance Method Summary collapse

Methods inherited from Innodb::Page

#checksum_crc32, #checksum_crc32?, #checksum_innodb, #checksum_innodb?, #checksum_invalid?, #checksum_type, #checksum_valid?, #corrupt?, #cursor, #default_page_size?, #each_page_body_byte_as_uint8, #each_page_header_byte_as_uint8, #extent_descriptor?, #fil_header, #fil_trailer, handle, #in_doublewrite_buffer?, #initialize, #inspect, #inspect_header_fields, maybe_undefined, #misplaced?, #misplaced_offset?, #misplaced_space?, #name, page_type_by_value, parse, #pos_fil_header, #pos_fil_trailer, #pos_page_body, #pos_partial_page_header, register_specialization, #size, #size_fil_header, #size_fil_trailer, #size_page_body, #size_partial_page_header, specialization_for, specialization_for?, #torn?, undefined?

Constructor Details

This class inherits a constructor from Innodb::Page

Instance Method Details

#dumpObject



40
41
42
43
44
45
# File 'lib/innodb/page/sys_ibuf_header.rb', line 40

def dump
  super

  puts "ibuf header:"
  pp ibuf_header
end

#each_region {|Region.new( offset: pos_ibuf_header, length: size_ibuf_header, name: :ibuf_header, info: "Insert Buffer Header" )| ... } ⇒ Object

Yields:



27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/innodb/page/sys_ibuf_header.rb', line 27

def each_region(&block)
  return enum_for(:each_region) unless block_given?

  super

  yield Region.new(
    offset: pos_ibuf_header,
    length: size_ibuf_header,
    name: :ibuf_header,
    info: "Insert Buffer Header"
  )
end

#ibuf_headerObject



19
20
21
22
23
24
25
# File 'lib/innodb/page/sys_ibuf_header.rb', line 19

def ibuf_header
  cursor(pos_ibuf_header).name("ibuf_header") do |c|
    Header.new(
      fseg: c.name("fseg") { Innodb::FsegEntry.get_inode(space, c) }
    )
  end
end

#pos_ibuf_headerObject



11
12
13
# File 'lib/innodb/page/sys_ibuf_header.rb', line 11

def pos_ibuf_header
  pos_page_body
end

#size_ibuf_headerObject



15
16
17
# File 'lib/innodb/page/sys_ibuf_header.rb', line 15

def size_ibuf_header
  Innodb::FsegEntry::SIZE
end