User:Daniel Kinzler (WMDE)/MCR-StorageLayerTesting

From mediawiki.org

Patches to be tested[edit]

On the mcr-full VM, there is now a branch called McrStorageLayerTest that has these patches applied. We probably want that branch on gerrit, too, so it can be deployed on testwiki.

PageUpdater test plan[edit]

Daniel will do[edit]

  • edit page:
    • page creation works Yes Done, updates link tables Yes Done, updates page count Yes Done
    • page editing works Yes Done, updates link tables Yes Done, updates page count Yes Done
    • undoing an edit sets the undid ID Yes Done (tag is set. The ID is not recorded anywhere at the moment.)
    • minor edit sets the flag Yes Done
    • test bot edit sets the RC flag Yes Done
    • edit conflict is automerged when possible Yes Done
    • edit conflict GUI works when automerge not possible Yes Done
    • null edit works (how? use {{CURRENTTIMESTAMP}}, see https://dev-mcr-full.wmflabs.org/wiki/Time.) Yes Done
  • file upload:
    • new file: Yes Done
    • existing file: Yes Done
  • rollback Yes Done
  • page move: null revision in moved page Yes Done
  • undelete
    • full page Yes Done
    • revisions of an existing page Yes Done

Gergő will do[edit]

  • watchlist email notification Yes Done
  • edit stash works (how? using the debug log, there is a StashEdit channel + use objectcache channel with cache set to debug mode) (cache hit + cache miss, caching of AF + spam blacklist check) Yes Done
  • changing content model works (wikitext to JS and back), change to model where content is invalid is handled Yes Done
  • importing a revision works, updates page count Yes Done
  • double redirect fixer: run fixDoubleRedirects.php --async --title <title> Yes Done
  • AbuseFilter: test added link filter, test AF log Yes Done
    • seems like the abuse log has less variables than it should have? I'm not familiar enough with AF to be sure (compare [1])
  • ConfirmEdit: test added link captcha - not working on master either, maybe misconfigured?
  • Echo:
    • test reverted notification - PEBCAK, need to retest
    • test talk page edit notification Yes Done
    • test Flow watched edit notification
  • Flow: converted user talk page to use Flow, verify new revision saying it has been converted, verify user does not get new message notice Flow history throws exception [2]; also, archiving the old talk page fails. Probably unrelated issue with restbase not working.
  • NewUserMessage: test welcome message Yes Done
  • TemplateData: save page with valid and invalid TD transcluded Yes Done
  • Translate: set wgTranslateUsePreSaveTransform to false, test there is no PST when messages are saved Yes Done
  • installer: main page is created Yes Done
  • EventBus: check events mediawiki.page-create, resource_change (with null_edit tag), mediawiki.revision-create Yes Done (-> /vagrant/logs/eventbus-debug.log)
  • hack something up to check missing /unclear hooks (ArticleEditUpdateNewTalk, ArticleEditUpdates, ArticleEditUpdatesDeleteFromRecentchanges, NewRevisionFromEditComplete)

PageUpdater entry points[edit]

WikiPage::doEditContent[edit]

usage:

also Wikibase, BlueSpiceFoundation, SocialProfile, SemanticMediaWiki, LiquidThreads, CentralNotice, SecurePoll, JADE, FlaggedRevs, PeriodicRelatedChanges, PageForms, PageSchemas, DynamicPageList, EtherEditor, FanBoxes, FileImporter, FirstSteps, Athena, BlueSpiceGroupManager, Form, GWToolset, BlueSpiceSMWConnector, HAWelcome, ImageRating, Babel, LinkFilter, CheckUser, MOOC, MassEditRegex, CloneDiff, MsUpload, NotebookViewer, AutoCreateCategoryPages, OfflineImportLexicon, OpenStackManager, OracleTextSearch, CollaborationKit, CommentStreams, Patroller, PhabTaskGraph, PollNY, PrivateDomains, ReplaceText, ConfirmAccount, SemanticImageAnnotator, SpamBlacklist, SpamDiffTool, CreateUserPage, TranslateSvg, UploadWizard, Video, VisualEditor, WikiLexicalData, DataTransfer, WikimediaMaintenance, ZeroPortal, BlogPage, Lud, Nimiarkisto, Sanat, WordNet, BlueSpiceChecklist, CreateWiki

WikiPage::doEditUpdates[edit]

usage:

also Duplicator, MsUpload, Wikibase, Termbank

WikiPage::prepareContentForEdit[edit]

usage:

also: SemanticMediaWiki, AkismetKlikApprovedRevs, BlueSpicePageAccess, FlaggedRevs

ArticleEditUpdateNewTalk [edit]

(as above) usage: Flow, LiquidThreads

  • Flow: prevent new message notification when the edit is done by the Flow system user (?)

ArticleEditUpdates [edit]

(called in DerivedPageDataUpdater::doUpdates, which is called in WikiPage::doEditContent and WikiPage::doEditUpdates) usage: ApprovedRevs, FlaggedRevs

ArticleEditUpdatesDeleteFromRecentchanges [edit]

(as above) usage: CheckUser, Premoderation

  • CheckUser: every 50th edit, prune the checkuser changes table

ArticlePrepareTextForEdit [edit]

(called in DerivedPageDataUpdater::prepareContent, which is called in WikiPage::doEditContent and WikiPage::prepareContentForEdit) usage: Translate

  • Translate: disable PST when wgTranslateUsePreSaveTransform is unset and the page is a non-qqq message

NewRevisionFromEditComplete [edit]

(called in PageUpdater::doCreate/doModify, which is called in WikiPage::doEditContent) usage: SemanticMediaWiki, SummaryCards, FlaggedRevs, PageTriage, PubSubHubbub, DataTable2, EducationProgram, SemanticInterlanguageLinks, Transliterator, Wikibase, TimedMediaHandler, SemanticBundle, SocialProfile

PageContentInsertComplete [edit]

(called in PageUpdater::doCreate, which is called in WikiPage::doEditContent) usage: CirrusSearch, EventBus, Gadgets, GlobalUserPage, EditNotify, PageCreationNotif, PageTriage, SharedHelpPages, TweetANew, IndexFunction, TitleKey, MiniInvite

PageContentSave [edit]

(called in PageUpdater::saveRevision, which is called in WikiPage::doEditContent) usage: Translate, BlogPage, BlueSpiceEditNotifyConnector, TemplateData, AutoCategoriseUploads, EditNotify, reCaptcha, GraphViz, Lingo, MOOC, PageForms, Checkpoint, PureWikiDeletion, SemanticTasks, BlueSpicePageAccess, Premoderation, BlueSpiceEmoticons, BlueSpiceAuthors, WikiCategoryTagCloud, Awesomeness

PageContentSaveComplete [edit]

(as above) usage: Translate, BlueSpiceFoundation, Cognate, Cargo, ConfirmEdit, ApprovedRevs, AbuseFilter, BlogPage, WikimediaEvents, UploadWizard, PeriodicRelatedChanges, TitleBlacklist, SemanticMediaWiki, TheWikipediaLibrary, BlueSpicePageAssignments, BlueSpiceSMWConnector, SpamBlacklist, Athena, ProofreadPage, AutoCreateCategoryPages, Contributors, Drafts, Echo, EditSimilar, EditcountAdditions, EducationProgram, EtherEditor, EventBus, FlaggedRevs, Gadgets, HAWelcome, JsonConfig, LiquidThreads, LiveTranslate, MathSearch, MiniInvite, PageTriage, BlueSpiceExtendedSearch, OfflineImportLexicon, PureWikiDeletion, SemanticTasks, BlueSpiceSmartList, BlueSpiceSaferEdit, TweetANew, BlueSpiceArticleInfo, FeaturedFeeds

  • Translate:
    • [7] all kinds of data updates on message edit (fuzzy, transaltion stats), update translated page
    • [8] tag page (via Translate's custom revision tagging mechanism) as ready for translation
  • ConfirmEdit: clear cache when updating MediaWiki:Captcha-ip-whitelist
  • AbuseFilter: record AF variables into the AF log
  • TitleBlacklist: clear cache when editing MediaWiki:Titleblacklist
  • SpamBlacklist: clear cache when editing blacklist
  • Echo: trigger some notifications (reverted, 10^n edit)
  • EventBus: send null edit notifications to the bus

ParserOutputStashForEdit [edit]

usage:

RevisionInsertComplete [edit]

(used to be called on edits, not used in the current version of the patch) usage: EventBus, Translate, WikimediaEvents, HAWelcome

mcr-full deployed extensions[edit]

  • AbuseFilter
  • AntiSpoof
  • Babel
  • BetaFeatures
  • CentralAuth
  • Cite
  • Citoid
  • cldr
  • CodeEditor
  • ConfirmEdit
  • Echo
  • EventBus
  • EventLogging
  • Flow
  • GeoData
  • GlobalCssJs
  • GlobalUsage
  • MobileFrontend
  • NewUserMessage
  • PageImages
  • ParserFunctions
  • README
  • Renameuser
  • Scribunto
  • SpamBlacklist
  • SyntaxHighlight_GeSHi
  • TemplateData
  • TemplateSandbox
  • TextExtracts
  • Thanks
  • TitleBlacklist
  • Translate
  • UniversalLanguageSelector
  • UserMerge
  • VisualEditor
  • WikiEditor
  • WikiLove


WMF deployed extensions[edit]

  • 3D
  • AbuseFilter
  • AdvancedSearch
  • AntiSpoof
  • ApiFeatureUsage
  • ArticleCreationWorkflow
  • ArticlePlaceholder
  • Babel
  • BetaFeatures
  • BounceHandler
  • Calendar
  • Campaigns
  • Capiunto
  • CategoryTree
  • CentralAuth
  • CentralNotice
  • CharInsert
  • CheckUser
  • CirrusSearch
  • Cite
  • CiteThisPage
  • Citoid
  • cldr
  • CodeEditor
  • CodeMirror
  • CodeReview
  • Cognate
  • CollaborationKit
  • Collection
  • CommonsMetadata
  • ConfirmEdit
  • ConfirmEdit/FancyCaptcha
  • CongressLookup
  • ContactPage
  • ContentTranslation
  • ContributionTracking
  • CreditsSource
  • Dashiki
  • DisableAccount
  • Disambiguator
  • DismissableSiteNotice
  • DonationInterface
  • DoubleWiki
  • DynamicSidebar
  • Echo
  • EducationProgram
  • Elastica
  • ElectronPdfService
  • EventBus
  • EventLogging
  • ExtensionDistributor
  • FeaturedFeeds
  • FileExporter
  • FileImporter
  • FlaggedRevs
  • Flow
  • FundraiserLandingPage
  • FundraisingTranslateWorkflow
  • Gadgets
  • GeoCrumbs
  • GeoData
  • GettingStarted
  • GlobalBlocking
  • GlobalCssJs
  • GlobalPreferences
  • GlobalUsage
  • GlobalUserPage
  • GoogleNewsSitemap
  • Graph
  • GuidedTour
  • GWToolset
  • ImageMap
  • InputBox
  • Insider
  • intersection
  • Interwiki
  • InterwikiSorting
  • JADE
  • Josa
  • JsonConfig
  • Kartographer
  • LabeledSectionTransclusion
  • LandingCheck
  • LdapAuthentication
  • Linter
  • LiquidThreads
  • Listings
  • LocalisationUpdate
  • LoginNotify
  • MapSources
  • MassMessage
  • Math
  • MobileApp
  • MobileFrontend
  • MultimediaViewer
  • MwEmbedSupport
  • NavigationTiming
  • Newsletter
  • NewUserMessage
  • Nuke
  • OATHAuth
  • OAuth
  • ORES
  • OpenStackManager
  • PageAssessments
  • PagedTiffHandler
  • PageImages
  • PageTriage
  • PageViewInfo
  • ParserFunctions
  • ParserMigration
  • ParsoidBatchAPI
  • PdfHandler
  • PerformanceInspector
  • Petition
  • Poem
  • Popups
  • ProofreadPage
  • PropertySuggester
  • PoolCounter
  • QuickSurveys
  • Quiz
  • ReadingLists
  • RelatedArticles
  • RelatedSites
  • Renameuser
  • RevisionSlider
  • RSS
  • SandboxLink
  • Score
  • Scribunto
  • SearchExtraNS
  • SecurePoll
  • Sentry
  • ShortUrl
  • SiteMatrix
  • SpamBlacklist
  • SubPageList3
  • SubpageSortkey
  • SyntaxHighlight_GeSHi
  • TemplateData
  • TemplateSandbox
  • TemplateStyles
  • TextExtracts
  • Thanks
  • TimedMediaHandler
  • timeline
  • TitleBlacklist
  • TocTree
  • TorBlock
  • Translate
  • TranslationNotifications
  • TrustedXFF
  • TwoColConflict
  • UniversalLanguageSelector
  • UploadsLink
  • UploadWizard
  • UrlShortener
  • UserMerge
  • VipsScaler
  • VisualEditor
  • Wikibase/client/WikibaseClient.php
  • Wikibase/repo/Wikibase.php
  • WikibaseLexeme
  • WikibaseQuality
  • WikibaseQualityConstraints
  • Wikidata.org
  • WikidataPageBanner
  • WikiEditor
  • wikihiero
  • WikiLove
  • WikimediaBadges
  • WikimediaEvents
  • WikimediaIncubator
  • WikimediaMessages
  • XAnalytics
  • ZeroBanner
  • ZeroPortal