Class: Innodb::Page::Sys
- Inherits:
-
Innodb::Page
- Object
- Innodb::Page
- Innodb::Page::Sys
- Defined in:
- lib/innodb/page/sys.rb
Overview
Another layer of indirection for pages of type SYS, as they have multiple uses within InnoDB. We’ll override the self.handle method and check the page offset to decide which type of SYS page this is.
Constant Summary
Constants inherited from Innodb::Page
PAGE_TYPE, PAGE_TYPE_BY_VALUE, SPECIALIZED_CLASSES
Instance Attribute Summary
Attributes inherited from Innodb::Page
Class Method Summary collapse
Methods inherited from Innodb::Page
#calculate_checksum, #checksum, #corrupt?, #cursor, #dump, #each_region, #fil_header, #initialize, #inspect, #lsn, maybe_undefined, #name, #next, #offset, parse, #pos_fil_header, #pos_fil_trailer, #pos_page_body, #prev, #size, #size_fil_header, #size_fil_trailer, #type
Constructor Details
This class inherits a constructor from Innodb::Page
Class Method Details
.handle(page, space, buffer) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/innodb/page/sys.rb', line 10 def self.handle(page, space, buffer) case when page.offset == 7 Innodb::Page::SysDataDictionaryHeader.new(space, buffer) when space.rseg_page?(page.offset) Innodb::Page::SysRsegHeader.new(space, buffer) else # We can't do anything better, so pass on the generic InnoDB::Page. page end end |