MediaWiki master
BaseDump Class Reference

Readahead helper for making large MediaWiki data dumps; reads in a previous XML dump to sequentially prefetch text records already normalized and decompressed. More...

Public Member Functions

 __construct ( $infile)
 
 close ()
 
 prefetch ( $page, $rev, $slot=SlotRecord::MAIN)
 Attempts to fetch the text of a particular page revision from the dump stream.
 

Protected Member Functions

 debug ( $str)
 

Protected Attributes

bool $atEnd = false
 
bool $atPageEnd = false
 
string[] null $infiles = null
 
int $lastPage = 0
 
int $lastRev = 0
 
XMLReader null $reader = null
 

Detailed Description

Readahead helper for making large MediaWiki data dumps; reads in a previous XML dump to sequentially prefetch text records already normalized and decompressed.

This can save load on the external database servers, hopefully.

Assumes that dumps will be recorded in the canonical order:

  • ascending by page_id
  • ascending by rev_id within each page
  • text contents are immutable and should not change once recorded, so the previous dump is a reliable source

Definition at line 44 of file BaseDump.php.

Constructor & Destructor Documentation

◆ __construct()

BaseDump::__construct ( $infile)
Parameters
string$infile

Definition at line 61 of file BaseDump.php.

References debug().

Member Function Documentation

◆ close()

BaseDump::close ( )
Returns
null

Definition at line 234 of file BaseDump.php.

◆ debug()

BaseDump::debug ( $str)
protected
Parameters
string$str

Definition at line 126 of file BaseDump.php.

References wfDebug().

Referenced by __construct(), and prefetch().

◆ prefetch()

BaseDump::prefetch ( $page,
$rev,
$slot = SlotRecord::MAIN )

Attempts to fetch the text of a particular page revision from the dump stream.

May return null if the page is unavailable.

Parameters
int$pageID number of page to read
int$revID number of revision to read
string$slotRole name of the slot to read
Returns
string|null

Definition at line 81 of file BaseDump.php.

References debug().

Member Data Documentation

◆ $atEnd

bool BaseDump::$atEnd = false
protected

Definition at line 48 of file BaseDump.php.

◆ $atPageEnd

bool BaseDump::$atPageEnd = false
protected

Definition at line 50 of file BaseDump.php.

◆ $infiles

string [] null BaseDump::$infiles = null
protected

Definition at line 56 of file BaseDump.php.

◆ $lastPage

int BaseDump::$lastPage = 0
protected

Definition at line 52 of file BaseDump.php.

◆ $lastRev

int BaseDump::$lastRev = 0
protected

Definition at line 54 of file BaseDump.php.

◆ $reader

XMLReader null BaseDump::$reader = null
protected

Definition at line 46 of file BaseDump.php.


The documentation for this class was generated from the following file: