[ Index ]

PHP Cross Reference of MediaWiki-1.24.0

title

Body

[close]

/includes/ -> HistoryBlob.php (summary)

Efficient concatenated text storage. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

File Size: 704 lines (17 kb)
Included or required:0 times
Referenced: 5 times
Includes or requires: 0 files

Defines 5 classes

HistoryBlob:: (4 methods):
  addItem()
  getItem()
  setText()
  getText()

ConcatenatedGzipHistoryBlob:: (11 methods):
  __construct()
  addItem()
  getItem()
  setText()
  getText()
  removeItem()
  compress()
  uncompress()
  __sleep()
  __wakeup()
  isHappy()

HistoryBlobStub:: (6 methods):
  __construct()
  setLocation()
  setReferrer()
  getReferrer()
  getText()
  getHash()

HistoryBlobCurStub:: (3 methods):
  __construct()
  setLocation()
  getText()

DiffHistoryBlob:: (13 methods):
  __construct()
  addItem()
  getItem()
  setText()
  getText()
  compress()
  diff()
  patch()
  xdiffAdler32()
  uncompress()
  __sleep()
  __wakeup()
  isHappy()


Interface: HistoryBlob  - X-Ref

Base class for general text storage via the "object" flag in old_flags, or
two-part external storage URLs. Used for represent efficient concatenated
storage, and migration-related pointer objects.

addItem( $text )   X-Ref
Adds an item of text, returns a stub object which points to the item.
You must call setLocation() on the stub object before storing it to the
database

param: string $text
return: string The key for getItem()

getItem( $key )   X-Ref
Get item by key, or false if the key is not present

param: string $key
return: string|bool

setText( $text )   X-Ref
Set the "default text"
This concept is an odd property of the current DB schema, whereby each text item has a revision
associated with it. The default text is the text of the associated revision. There may, however,
be other revisions in the same object.

Default text is not required for two-part external storage URLs.

param: string $text

getText()   X-Ref
Get default text. This is called from Revision::getRevisionText()

return: string

Class: ConcatenatedGzipHistoryBlob  - X-Ref

Concatenated gzip (CGZ) storage
Improves compression ratio by concatenating like objects before gzipping

__construct()   X-Ref
Constructor


addItem( $text )   X-Ref

param: string $text
return: string

getItem( $hash )   X-Ref

param: string $hash
return: array|bool

setText( $text )   X-Ref

param: string $text
return: void

getText()   X-Ref

return: array|bool

removeItem( $hash )   X-Ref
Remove an item

param: string $hash

compress()   X-Ref
Compress the bulk data in the object


uncompress()   X-Ref
Uncompress bulk data


__sleep()   X-Ref

return: array

__wakeup()   X-Ref
No description

isHappy()   X-Ref
Helper function for compression jobs
Returns true until the object is "full" and ready to be committed

return: bool

Class: HistoryBlobStub  - X-Ref

Pointer object for an item within a CGZ blob stored in the text table.

__construct( $hash = '', $oldid = 0 )   X-Ref

param: string $hash The content hash of the text
param: int $oldid The old_id for the CGZ object

setLocation( $id )   X-Ref
Sets the location (old_id) of the main object to which this object
points

param: int $id

setReferrer( $id )   X-Ref
Sets the location (old_id) of the referring object

param: string $id

getReferrer()   X-Ref
Gets the location of the referring object

return: string

getText()   X-Ref

return: string

getHash()   X-Ref
Get the content hash

return: string

Class: HistoryBlobCurStub  - X-Ref

To speed up conversion from 1.4 to 1.5 schema, text rows can refer to the
leftover cur table as the backend. This avoids expensively copying hundreds
of megabytes of data during the conversion downtime.

Serialized HistoryBlobCurStub objects will be inserted into the text table
on conversion if $wgLegacySchemaConversion is set to true.
__construct( $curid = 0 )   X-Ref

param: int $curid The cur_id pointed to

setLocation( $id )   X-Ref
Sets the location (cur_id) of the main object to which this object
points

param: int $id

getText()   X-Ref

return: string|bool

Class: DiffHistoryBlob  - X-Ref

Diff-based history compression
Requires xdiff 1.5+ and zlib

__construct()   X-Ref


addItem( $text )   X-Ref

param: string $text
return: int

getItem( $key )   X-Ref

param: string $key
return: string

setText( $text )   X-Ref

param: string $text

getText()   X-Ref

return: string

compress()   X-Ref


diff( $t1, $t2 )   X-Ref

param: string $t1
param: string $t2
return: string

patch( $base, $diff )   X-Ref

param: string $base
param: string $diff
return: bool|string

xdiffAdler32( $s )   X-Ref
Compute a binary "Adler-32" checksum as defined by LibXDiff, i.e. with
the bytes backwards and initialised with 0 instead of 1. See bug 34428.

param: string $s
return: string|bool False if the hash extension is not available

uncompress()   X-Ref
No description

__sleep()   X-Ref

return: array

__wakeup()   X-Ref
No description

isHappy()   X-Ref
Helper function for compression jobs
Returns true until the object is "full" and ready to be committed

return: bool



Generated: Fri Nov 28 14:03:12 2014 Cross-referenced by PHPXref 0.7.1