aboutsummaryrefslogtreecommitdiffstats
path: root/includes/content
diff options
context:
space:
mode:
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>2024-03-01 19:00:43 +0000
committerGerrit Code Review <gerrit@wikimedia.org>2024-03-01 19:00:43 +0000
commit46e64513bb6643101367e3c9821cab75c46c0a05 (patch)
treedfd1a37c8955e84a1342b81c332f799b92519063 /includes/content
parentefdccf82678a6b00b5f52a9a578862fad6bb9119 (diff)
parentd3a9abe50bab986cf0679a6c0466df7a204ab648 (diff)
downloadmediawikicore-46e64513bb6643101367e3c9821cab75c46c0a05.tar.gz
mediawikicore-46e64513bb6643101367e3c9821cab75c46c0a05.zip
Merge "ParserOutputAccess: only use PoolCounter if the caller asks for it."
Diffstat (limited to 'includes/content')
-rw-r--r--includes/content/WikitextContentHandler.php16
1 files changed, 16 insertions, 0 deletions
diff --git a/includes/content/WikitextContentHandler.php b/includes/content/WikitextContentHandler.php
index bfe76fbfd86c..42c0ea25646f 100644
--- a/includes/content/WikitextContentHandler.php
+++ b/includes/content/WikitextContentHandler.php
@@ -28,6 +28,7 @@ use MediaWiki\Content\Transform\PreloadTransformParams;
use MediaWiki\Content\Transform\PreSaveTransformParams;
use MediaWiki\Languages\LanguageNameUtils;
use MediaWiki\Linker\LinkRenderer;
+use MediaWiki\Logger\LoggerFactory;
use MediaWiki\Parser\MagicWordFactory;
use MediaWiki\Parser\ParserOutput;
use MediaWiki\Parser\ParserOutputFlags;
@@ -369,8 +370,23 @@ class WikitextContentHandler extends TextContentHandler {
$text = $contentWithoutRedirect->getText();
}
+ $time = -microtime( true );
+
$parserOutput = $parser
->parse( $text, $title, $parserOptions, true, true, $revId );
+ $time += microtime( true );
+
+ // Timing hack
+ if ( $time > 3 ) {
+ // TODO: Use Parser's logger (once it has one)
+ $channel = $parserOptions->getUseParsoid() ? 'slow-parsoid' : 'slow-parse';
+ $logger = LoggerFactory::getInstance( $channel );
+ $logger->info( 'Parsing {title} was slow, took {time} seconds', [
+ 'time' => number_format( $time, 2 ),
+ 'title' => (string)$title,
+ 'trigger' => $parserOptions->getRenderReason(),
+ ] );
+ }
// T330667: Record the fact that we used the value of
// 'useParsoid' to influence this parse. Note that