MediaWiki  1.29.2
testCompression.php File Reference

Test revision text compression and decompression. More...

Go to the source code of this file.

Variables

 $blob = new $type
 
 $dbr = $this->getDB( DB_REPLICA )
 
 $hashes = []
 
 $keys = []
 
if(!isset( $args[0])) $lang = Language::factory( 'en' )
 
 $optionsWithArgs = [ 'start', 'limit', 'type' ]
 
 $res
 
foreach( $res as $row) $serialized = serialize( $blob )
 
 $t = -microtime( true )
 
 $title = Title::newFromText( $args[0] )
 
 $type = isset( $options['type'] ) ? $options['type'] : 'ConcatenatedGzipHistoryBlob'
 
 $uncompressedSize = 0
 
 $untilHappy = true
 
if(isset( $options['start'])) else
 

Detailed Description

Test revision text compression and decompression.

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.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. http://www.gnu.org/copyleft/gpl.html

Definition in file testCompression.php.

Variable Documentation

◆ $blob

◆ $dbr

$dbr = $this->getDB( DB_REPLICA )

Definition at line 50 of file testCompression.php.

◆ $hashes

◆ $keys

$keys = []

Definition at line 65 of file testCompression.php.

Referenced by Status\__sleep(), MemcLockManager\acquireMutexes(), ParserOutput\addJsConfigVars(), OutputPage\addJsConfigVars(), ApiResult\addMetadataToResultVars(), ApiResult\applyTransformations(), BatchRowIterator\buildGreaterThanCondition(), ProcessCacheLRU\clear(), MapCacheLRU\clear(), EmailNotification\composeCommonMailtext(), SqlBagOStuff\deleteObjectsExpiringBefore(), SpecialRedirect\dispatchLog(), JobQueueRedis\doDelete(), Installer\doGenerateKeys(), MySqlLockManager\doGetLocksOnServer(), UploadStashCleanup\execute(), LocalisationUpdate\Updater\expandRemotePath(), Wikimedia\Rdbms\DatabaseSqlite\fieldName(), BlockListPager\formatValue(), MemcLockManager\freeLocksOnServer(), Installer\generateKeys(), MemcachedClient\get_multi(), WANCacheReapUpdate\getEventAffectedKeys(), MemcLockManager\getLocksOnServer(), MemcachedPhpBagOStuff\getMulti(), ReplicatedBagOStuff\getMulti(), RedisBagOStuff\getMulti(), MemcachedPeclBagOStuff\getMulti(), SqlBagOStuff\getMulti(), WANObjectCache\getMulti(), BagOStuff\getMulti(), HTMLFormField\getNearestFieldByName(), ConvertExtensionToRegistration\handleCredits(), Wikimedia\Rdbms\DatabasePostgres\insert(), Wikimedia\Rdbms\DatabaseMssql\insert(), Wikimedia\Rdbms\Database\insert(), WANObjectCacheReaper\invoke(), LocalisationCache\isExpired(), UploadStash\listFiles(), MWRestrictions\loadFromArray(), UserPasswordPolicy\maxOfPolicies(), User\pingLimiter(), WANObjectCache\prefixCacheKeys(), MemcLockManager\releaseMutexes(), FormatMetadata\sanitizeArrayForAPI(), ApiResult\setValue(), PrefixSearch\specialSearch(), ApiWatchTest\testGetRollbackToken(), WANObjectCacheTest\testProcessCache(), ApiWatchTest\testWatchRollback(), and PoolCounterRedis\waitForSlotOrNotif().

◆ $lang

if (!isset($args[0])) $lang = Language::factory( 'en' )
Examples
/src/tests/phpunit/MediaWikiTestCase.php.

Definition at line 33 of file testCompression.php.

Referenced by CiteCSSFileModule\__construct(), SearchNearMatcher\__construct(), SearchEngineConfig\__construct(), ParserOptions\__construct(), OutputPage\addAcceptLanguage(), LinkCache\addGoodLinkObj(), ProtectionForm\buildForm(), SpecialEditWatchlist\buildTools(), Preferences\datetimePreferences(), MediaWiki\Session\SessionProvider\describe(), TextContent\diff(), SpecialUndelete\diffHeader(), Skin\doEditSectionLink(), SpecialWatchlist\doHeader(), ImagePage\doRenderLangOpt(), SvgHandler\doTransform(), Installer\envCheckShellLocale(), Language\equals(), DateFormats\execute(), ListVariants\execute(), SpecialAutoblockList\execute(), SpecialBlockList\execute(), UpdateMediaWiki\execute(), QueryPage\execute(), MessageBlobStore\fetchMessage(), MessageCache\figureMessage(), FormatMetadata\flattenArrayReal(), BlockLogFormatter\formatBlockFlag(), BlockLogFormatter\formatBlockFlags(), CoreParserFunctions\formatDate(), ProtectLogFormatter\formatExpiry(), SpecialListGroupRights\formatPermissions(), DoubleRedirectsPage\formatResult(), ListredirectsPage\formatResult(), MIMEsearchPage\formatResult(), SpecialProtectedtitles\formatRow(), ActiveUsersPager\formatRow(), UsersPager\formatRow(), SpecialNewpages\formatRow(), ContribsPager\formatRow(), MessageBlobStore\generateMessageBlob(), MediaWiki\Widget\Search\FullSearchResultWidget\generateSizeHtml(), DummyLinker\generateTOC(), Linker\generateTOC(), MessageBlobStore\get(), MessageCache\get(), WebInstaller\getAcceptLanguage(), CreditsAction\getAuthor(), SvgHandler\getAvailableLanguages(), MessageBlobStore\getBlob(), MessageBlobStore\getBlobs(), CreditsAction\getContributors(), InfoAction\getContributors(), ApiQueryUserInfo\getCurrentUserInfo(), Preferences\getDateOptions(), Title\getDefaultMessageText(), FileRepo\getDescriptionRenderUrl(), ForeignDBFile\getDescriptionText(), LocalFile\getDescriptionText(), File\getDescriptionText(), Status\getErrorMessage(), Status\getErrorMessageArray(), RevertAction\getFormFields(), SpecialBotPasswords\getFormFields(), MWGrants\getGrantsLink(), MWGrants\getGrantsWikiText(), OutputPage\getHeadLinksArray(), CategoryViewer\getHTML(), Status\getHTML(), Skin\getHtmlElementAttributes(), MWTimestamp\getHumanTimestamp(), LinksUpdate\getInterlangInsertions(), OutputPage\getJSVars(), ResourceLoaderContext\getLanguage(), ResourceLoaderFileModule\getLanguageScripts(), WebInstallerLanguage\getLanguageSelector(), ContentHandler\getLocalizedName(), Status\getMessage(), ResourceLoaderModule\getMessageBlob(), MessageCache\getMessageForLang(), MessageCache\getMessageFromFallbackChain(), ContentModelLogFormatter\getMessageParameters(), AlphabeticPager\getNavigationBar(), DeletedContribsPager\getNavigationBar(), SearchNearMatcher\getNearMatchInternal(), ContentHandler\getPageLanguage(), Language\getParentLanguage(), Block\getPermissionsError(), SpecialWhatLinksHere\getPrevNext(), Article\getRedirectHeaderHtml(), MWTimestamp\getRelativeTimestamp(), DifferenceEngine\getRevisionHeader(), SiteConfigurationTest\getSiteParamsCallback(), SpecialBlock\getSuggestedDurations(), ForeignAPIRepo\getThumbError(), ImageHistoryList\getThumbForLine(), LogPage\getTitleLink(), SpecialVersion\getVersion(), Status\getWikiText(), MWGrants\grantName(), MWGrants\grantNames(), HistoryPager\historyLine(), ImageHistoryList\imageHistoryLine(), ParserOptions\initialiseFromUser(), FormatMetadata\langItem(), CoreParserFunctions\language(), Status\languageFromParam(), MessageBlobStore\makeCacheKey(), MediaWikiTitleCodecTest\makeCodec(), FormatMetadata\makeFormattedData(), LoginSignupSpecialPage\makeLanguageSelector(), LoginSignupSpecialPage\makeLanguageSelectorLink(), MessageCacheTest\makePage(), SvgHandler\makeParamString(), Language\newFromCode(), ParserOptions\newFromUserAndLang(), ConfirmEditHooks\onAlternateEditPreview(), GadgetHooks\onCodeEditorGetPageLanguage(), RevertAction\onSuccess(), ImagePage\openShowImage(), SpecialRecentChanges\optionsPanel(), InfoAction\pageInfo(), prepare(), Preferences\profilePreferences(), MediaWiki\Widget\Search\SearchFormWidget\profileTabsHtml(), SvgHandler\rasterize(), MessageBlobStore\recacheMessageBlob(), SpecialPageTest\requireLoginAnonProvider(), FormatMetadata\resolveMultilangValue(), ChangeTags\restrictedTagError(), MediaWikiTestCase\setContentLang(), MediaWiki\Auth\AuthManager\setDefaultUserOptions(), ResourceLoaderModule\setMessageBlob(), Installer\setParserLanguage(), DifferenceEngine\setTextLanguage(), MediaWikiTestCase\setUserLang(), ChangesList\showCharacterDifference(), SpecialUndelete\showFileConfirmationForm(), SpecialExpandTemplates\showHtmlPreview(), LogEventsList\showLogExtract(), SpecialGadgets\showMainForm(), Article\showMissingArticle(), EmailConfirmation\showRequestForm(), SpecialUndelete\showRevision(), SiteConfiguration\siteFromDB(), Skin\subPageSubtitle(), SpecialPageFactoryTest\testConflictResolution(), LanguageTest\testEmbedBidi(), ApiErrorFormatterTest\testErrorFormatter(), MediaWikiTitleCodecTest\testFormat(), MessageCacheTest\testFullKeyBehaviour(), MediaWikiTitleCodecTest\testGetFullText(), MediaWikiTitleCodecTest\testGetNamespaceName(), ContentHandlerTest\testGetPageLanguage(), TitleTest\testGetPageViewLanguage(), LanguageTest\testGetParentLanguage(), MediaWikiTitleCodecTest\testGetPrefixedDBkey(), MediaWikiTitleCodecTest\testGetPrefixedText(), MediaWikiTitleCodecTest\testGetText(), CollationTest\testIsPrefix(), LanguageTest\testListToText(), MessageCacheTest\testMessageFallbacks(), ResourcesTest\testMissingMessages(), CollationTest\testNotIsPrefix(), LanguageTest\testParseFormattedNumber(), MediaWikiTitleCodecTest\testParseTitle(), LanguageTest\testTranslateBlockExpiry(), DummyLinker\tocList(), Linker\tocList(), TraditionalImageGallery\toHTML(), SpecialRevisionDelete\tryShowFile(), LocalisationCache\unloadAll(), and Article\viewRedirect().

◆ $optionsWithArgs

$optionsWithArgs = [ 'start', 'limit', 'type' ]

Definition at line 24 of file testCompression.php.

◆ $res

$res
Initial value:
= $dbr->select(
[ 'page', 'revision', 'text' ],
'*',
[
'page_namespace' => $title->getNamespace(),
'page_title' => $title->getDBkey(),
'page_id=rev_page',
'rev_timestamp > ' . $dbr->addQuotes( $dbr->timestamp( $start ) ),
'rev_text_id=old_id'
], __FILE__, [ 'LIMIT' => $limit ]
)

Definition at line 51 of file testCompression.php.

◆ $serialized

◆ $t

foreach ($keys as $id=> $key) $t = -microtime( true )

Definition at line 67 of file testCompression.php.

Referenced by JSNode\__construct(), ParserOutput\addLanguageLink(), MediaWiki\Tidy\Balancer\advance(), CoreParserFunctions\basepagename(), CoreParserFunctions\basepagenamee(), Benchmarker\bench(), BenchmarkTidy\benchmark(), ProtectionForm\buildForm(), Revision\checkContentModel(), FakeConverter\convert(), FakeConverter\convertTitle(), UploadFromUrlTest\deleteFile(), PopulateImageSha1\doDBUpdates(), SpecialRecentChanges\doHeader(), MysqlUpdater\doSchemaRestructuring(), SearchOracle\escapeTerm(), ApiQueryCategoryInfo\execute(), SpecialExport\execute(), Protect\execute(), RollbackEdits\execute(), PPFuzzTester\execute(), ApiQueryUsers\execute(), BlockLevelPass\execute(), ApiMain\executeActionWithErrorHandling(), ApiQueryInfo\extractPageInfo(), ApiQueryRevisionsBase\extractRevisionInfo(), ApiQueryRecentChanges\extractRowInfo(), UsersPager\formatRow(), CoreParserFunctions\fullpagename(), CoreParserFunctions\fullpagenamee(), CreditsAction\getAuthor(), PreferencesForm\getButtons(), User\getCanonicalName(), Skin\getCategoryLinks(), ParserOutput\getDisplayTitle(), WANCacheReapUpdate\getEventAffectedKeys(), ApiPageSet\getInvalidTitles(), DummyLinker\getLinkColour(), Linker\getLinkColour(), PNGMetadataExtractor\getMetadata(), LinkCache\getMutableCacheKeys(), SpecialAllPages\getNamespaceKeyAndText(), PdfImage\getPageSize(), DatabaseSqliteTest\getTables(), ApiQueryInfo\getTSIDs(), UserrightsPage\groupCheckboxes(), Skin\lastModified(), PageArchive\listPagesBySearch(), Title\makeTitle(), LinksUpdateTest\makeTitleAndParserOutput(), Title\makeTitleSafe(), CoreParserFunctions\mwnamespace(), CoreParserFunctions\namespacee(), CoreParserFunctions\namespacenumber(), Title\newFromDBkey(), Article\newFromID(), Title\newFromRow(), Title\newFromTextThrow(), Title\newFromURL(), MediaWikiSite\normalizePageName(), CoreParserFunctions\pageid(), CoreParserFunctions\pagename(), CoreParserFunctions\pagenamee(), SearchOracle\parseQuery(), RecentChange\parseToRCType(), JSMinPlus\parseTree(), ApiQueryBase\prefixedTitlePartToKey(), SpecialPage\prefixSearchString(), FileDuplicateSearchPage\prefixSearchSubpages(), Preferences\profilePreferences(), WfTimestampTest\provideNormalTimestamps(), SearchExactMatchRescorer\rescore(), CoreParserFunctions\revisionday(), CoreParserFunctions\revisionday2(), CoreParserFunctions\revisionid(), CoreParserFunctions\revisionmonth(), CoreParserFunctions\revisionmonth1(), CoreParserFunctions\revisiontimestamp(), CoreParserFunctions\revisionuser(), CoreParserFunctions\revisionyear(), CoreParserFunctions\rootpagename(), CoreParserFunctions\rootpagenamee(), ApiQueryWatchlistRaw\run(), HTMLCacheUpdateJob\run(), ApiQueryLinks\run(), ApiQueryRevisions\run(), ApiQueryBacklinksprop\run(), ApiQueryBacklinks\runFirstQuery(), ApiQueryBacklinks\runSecondQuery(), Wikimedia\Rdbms\DatabaseMssql\selectSQLText(), CacheTime\setCacheTime(), ParserOutput\setEditSectionTokens(), OutputPage\setRedirectedFrom(), Skin\setRelevantTitle(), HTMLForm\setSubmitID(), HTMLForm\setSubmitText(), Profiler\setTemplated(), DerivativeContext\setTitle(), HTMLForm\setTitle(), ParserOutput\setTitleText(), QuickTemplate\setTranslator(), SpecialAllPages\showChunk(), SpecialGadgets\showMainForm(), EmailConfirmation\showRequestForm(), SpecialUndelete\showRevision(), CoreParserFunctions\subjectpagename(), CoreParserFunctions\subjectpagenamee(), CoreParserFunctions\subjectspace(), CoreParserFunctions\subjectspacee(), CoreParserFunctions\subpagename(), CoreParserFunctions\subpagenamee(), CoreParserFunctions\talkpagename(), CoreParserFunctions\talkpagenamee(), CoreParserFunctions\talkspace(), CoreParserFunctions\talkspacee(), WikiPageTest\testDoDeleteArticle(), TextContentTest\testGetRedirectTarget(), WikiPageTest\testGetRedirectTarget(), SearchEnginePrefixTest\testSearch(), SearchEnginePrefixTest\testSearchWithOffset(), WANObjectCacheTest\testSetAndGet(), LinksUpdateTest\testUpdate_categorylinks(), LinksUpdateTest\testUpdate_externallinks(), LinksUpdateTest\testUpdate_imagelinks(), LinksUpdateTest\testUpdate_iwlinks(), LinksUpdateTest\testUpdate_langlinks(), LinksUpdateTest\testUpdate_page_props(), LinksUpdateTest\testUpdate_pagelinks(), LinksUpdateTest\testUpdate_templatelinks(), Wikimedia\Rdbms\Database\timestamp(), ApiQueryBase\titlePartToKey(), StringPrefixSearch\titles(), and Language\userAdjust().

◆ $title

$title = Title::newFromText( $args[0] )

Definition at line 34 of file testCompression.php.

◆ $type

Definition at line 48 of file testCompression.php.

◆ $uncompressedSize

$uncompressedSize = 0

Definition at line 66 of file testCompression.php.

◆ $untilHappy

$untilHappy = true

Definition at line 46 of file testCompression.php.

◆ else

if (isset($options[ 'limit'])) else
Initial value:
{
$start = '19700101000000'

Definition at line 38 of file testCompression.php.

$dbr
$dbr
Definition: testCompression.php:50
$limit
this hook is for auditing only RecentChangesLinked and Watchlist RecentChangesLinked and Watchlist Do not use this to implement individual filters if they are compatible with the ChangesListFilter and ChangesListFilterGroup structure use sub classes of those in conjunction with the ChangesListSpecialPageStructuredFilters hook This hook can be used to implement filters that do not implement that or custom behavior that is not an individual filter e g Watchlist and Watchlist you will want to construct new ChangesListBooleanFilter or ChangesListStringOptionsFilter objects When constructing you specify which group they belong to You can reuse existing or create your you must register them with $special registerFilterGroup removed from all revisions and log entries to which it was applied This gives extensions a chance to take it off their books as the deletion has already been partly carried out by this point or something similar the user will be unable to create the tag set and then return false from the hook function Ensure you consume the ChangeTagAfterDelete hook to carry out custom deletion actions as context called by AbstractContent::getParserOutput May be used to override the normal model specific rendering of page content as context as context the output can only depend on parameters provided to this hook not on global state indicating whether full HTML should be generated If generation of HTML may be but other information should still be present in the ParserOutput object to manipulate or replace but no entry for that model exists in $wgContentHandlers please use GetContentModels hook to make them known to core if desired whether it is OK to use $contentModel on $title Handler functions that modify $ok should generally return false to prevent further hooks from further modifying $ok inclusive $limit
Definition: hooks.txt:1049
$title
$title
Definition: testCompression.php:34