Page MenuHomePhabricator

TK-999 (Máté Szabó)
User

Projects

Heute

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Monday

  • Clear sailing ahead.

User Details

User Since
Feb 7 2017, 10:09 PM (390 w, 3 d)
Availability
Available
LDAP User
TK-999
MediaWiki User
Unknown

Neueste Aktivität

May 27 2024

TK-999 added a comment to T365691: Consider removing Microsoft Windows Cache (wincache) support.

Looks good to me. My only worry is that this can still be used in some instances with older versions. I'm wondering is it worth to extract just WinCacheBagOStuff to a separate small library and let people install it with composer if they really need it.

Before hard removal, first we should do a hard deprecation, - wfDeprecated() call in WinCacheBagOStuff constructor and update the ObjectCacheFactory:: getLocalServerCacheClass() to not use fallback to WinCacheBagOStuff when ACPU is not defined.

cc @Krinkle - do you have any thoughts on this matter ?

May 27 2024, 8:18 AM · MW-1.42-release, MediaWiki-Platform-Team (Radar), Patch-For-Review, PHP 8.1 support, MediaWiki-libs-BagOStuff

May 23 2024

TK-999 created T365691: Consider removing Microsoft Windows Cache (wincache) support.
May 23 2024, 10:35 AM · MW-1.42-release, MediaWiki-Platform-Team (Radar), Patch-For-Review, PHP 8.1 support, MediaWiki-libs-BagOStuff

May 9 2024

TK-999 added a comment to T338103: Micro-optimize ApiResult::isMetadataKey with str_starts_with once we support PHP8+.

I wonder if this method really is that hot—in the api.php-specific wall time flamegraph for May 8th, I get no hits at all for the method name, and ApiResult shows up as ~0.1%, which is so little that I have trouble finding it in the flamegraph. In the CPU time graph, ApiResult::applyTransformations shows up as responsible for ~0.4% of CPU time, but isMetadataKey is not visible there either.

May 9 2024, 2:09 PM · MediaWiki-General

May 7 2024

TK-999 added a project to T361419: DatabaseTest::testCriticalSectionErrorSelect fails locally, yet passes with php-xdebug enabled: Upstream.
May 7 2024, 12:34 PM · Upstream, Wikimedia-Hackathon-2024, MediaWiki-libs-RequestTimeout, MW-Interfaces-Team, MediaWiki-libs-Rdbms
TK-999 added a comment to T361419: DatabaseTest::testCriticalSectionErrorSelect fails locally, yet passes with php-xdebug enabled.

Looks like this already got reported as https://bugs.xdebug.org/view.php?id=2222. The author does not seem to be particularly swayed by it though...

May 7 2024, 12:34 PM · Upstream, Wikimedia-Hackathon-2024, MediaWiki-libs-RequestTimeout, MW-Interfaces-Team, MediaWiki-libs-Rdbms

May 6 2024

TK-999 added a comment to T340552: MediaWiki imports OpenTelemetry client instrumentation library for enhanced trace metadata.

This is an amazing proof-of-concept, thanks so much @TK-999 !!!

I'm generally in favor of just using the OTel interfaces and definitions. They're rigorously defined, and have broad industry support and a well-functioning open source community.

Re: your second question, I think in general if it looks like an RPC, we should trace it. Database queries for sure. Possibly memcached traffic, depending on the operation counts and overhead.

May 6 2024, 8:59 PM · MediaWiki-Platform-Team, Patch-For-Review, Wikimedia-Hackathon-2024, MediaWiki-libs-HTTP, Observability-Tracing
TK-999 updated subscribers of T340552: MediaWiki imports OpenTelemetry client instrumentation library for enhanced trace metadata.

A couple of thoughts on next steps:

  • We should decide whether we would like a vendor-agnostic tracing abstraction in core or if we're fine with using the OTEL interfaces. PSR-22 proposes a standard tracing interface for PHP, but the work appears to have stalled and the proposed interfaces seem rudimentary at best.
    • We should also decide whether to use the official OTEL client at all or write our own. The former case would AIUI require a code review for security and other considerations.
  • We should decide on the exact level of instrumentation we want. @Krinkle has rightfully warned that trying to instrument too much userland code would effectively be a resurgence of the old wfProfileIn/Out situation, with profiling calls creeping into ever more areas of the code. I generally agree with this, as IMO distributed tracing is not profiling—that job can be better than by and therefore should be left to a profiler. However, tracing instrumentation can bring two benefits:
May 6 2024, 11:59 AM · MediaWiki-Platform-Team, Patch-For-Review, Wikimedia-Hackathon-2024, MediaWiki-libs-HTTP, Observability-Tracing
TK-999 added a comment to T340552: MediaWiki imports OpenTelemetry client instrumentation library for enhanced trace metadata.

To run the above PoC, you need a Jaeger deployment. This is trivially doable with the upstream all-in-one image:

$ docker run --rm -p 16686:16686 -p 4318:4318 jaegertracing/all-in-one:1.57
May 6 2024, 11:51 AM · MediaWiki-Platform-Team, Patch-For-Review, Wikimedia-Hackathon-2024, MediaWiki-libs-HTTP, Observability-Tracing

May 5 2024

TK-999 added a comment to T290639: Move redirect lookup logic into a service object.

Tentatively reopening as the service class has been a stub for a while.

May 5 2024, 10:49 AM · MW-1.43-notes (1.43.0-wmf.10; 2024-06-18), MediaWiki-Redirects, Platform Team Workboards (MW Expedition)
TK-999 reopened T290639: Move redirect lookup logic into a service object, a subtask of T301372: Core Page REST API should follow redirects, as Open.
May 5 2024, 10:49 AM · MW-1.40-notes (1.40.0-wmf.17; 2023-01-02), RESTBase Sunsetting, Content-Transform-Team-WIP, Platform Team Workboards (MW Expedition)
TK-999 reopened T290639: Move redirect lookup logic into a service object as "Open".
May 5 2024, 10:49 AM · MW-1.43-notes (1.43.0-wmf.10; 2024-06-18), MediaWiki-Redirects, Platform Team Workboards (MW Expedition)

May 4 2024

TK-999 added a comment to T361419: DatabaseTest::testCriticalSectionErrorSelect fails locally, yet passes with php-xdebug enabled.

Minimal reproducer:

php
<?php
May 4 2024, 10:27 PM · Upstream, Wikimedia-Hackathon-2024, MediaWiki-libs-RequestTimeout, MW-Interfaces-Team, MediaWiki-libs-Rdbms
TK-999 added a project to T361419: DatabaseTest::testCriticalSectionErrorSelect fails locally, yet passes with php-xdebug enabled: Wikimedia-Hackathon-2024.
May 4 2024, 10:26 PM · Upstream, Wikimedia-Hackathon-2024, MediaWiki-libs-RequestTimeout, MW-Interfaces-Team, MediaWiki-libs-Rdbms
TK-999 added a comment to T361419: DatabaseTest::testCriticalSectionErrorSelect fails locally, yet passes with php-xdebug enabled.

We investigated further with @Krinkle today. Our results are follows:

May 4 2024, 10:26 PM · Upstream, Wikimedia-Hackathon-2024, MediaWiki-libs-RequestTimeout, MW-Interfaces-Team, MediaWiki-libs-Rdbms
TK-999 updated the task description for T363584: Hackathon 2024: Stats!.
May 4 2024, 12:41 PM · MediaWiki-core-Hackathon-2024, Wikimedia-Hackathon-2024, Epic, MediaWiki-General, MediaWiki-extensions-General
TK-999 claimed T359374: Migrate MediaWiki.PageStore.LinkCache to statslib.
May 4 2024, 12:35 PM · MW-1.43-notes (1.43.0-wmf.4; 2024-05-07), Observability-Metrics
TK-999 claimed T359365: Migrate RefreshLinksJob to statslib.
May 4 2024, 9:40 AM · MW-1.43-notes (1.43.0-wmf.4; 2024-05-07), Observability-Metrics

May 3 2024

TK-999 added a project to T340552: MediaWiki imports OpenTelemetry client instrumentation library for enhanced trace metadata: Wikimedia-Hackathon-2024.
May 3 2024, 8:32 AM · MediaWiki-Platform-Team, Patch-For-Review, Wikimedia-Hackathon-2024, MediaWiki-libs-HTTP, Observability-Tracing
TK-999 closed T363980: WebRequest::getCookie may return an array value, causing errors as Resolved.
May 3 2024, 7:41 AM · Wikimedia-Hackathon-2024, MW-1.43-notes (1.43.0-wmf.4; 2024-05-07), MediaWiki-General, MediaWiki-Platform-Team

May 2 2024

TK-999 added a comment to T363980: WebRequest::getCookie may return an array value, causing errors.

Sorry, just got to the airport and so I hadn't seen your comment @Tgr before posting further. That probably makes more sense than what I was proposing :)

May 2 2024, 9:56 AM · Wikimedia-Hackathon-2024, MW-1.43-notes (1.43.0-wmf.4; 2024-05-07), MediaWiki-General, MediaWiki-Platform-Team
TK-999 added a comment to T363980: WebRequest::getCookie may return an array value, causing errors.

Neither RFC 2109 nor RFC 2965 nor RFC 6265 appear to have an opinion on how to deal with duplicate cookies in an incoming Cookie header.

May 2 2024, 9:47 AM · Wikimedia-Hackathon-2024, MW-1.43-notes (1.43.0-wmf.4; 2024-05-07), MediaWiki-General, MediaWiki-Platform-Team
TK-999 updated the task description for T363980: WebRequest::getCookie may return an array value, causing errors.
May 2 2024, 9:29 AM · Wikimedia-Hackathon-2024, MW-1.43-notes (1.43.0-wmf.4; 2024-05-07), MediaWiki-General, MediaWiki-Platform-Team
TK-999 triaged T363980: WebRequest::getCookie may return an array value, causing errors as Low priority.
May 2 2024, 9:29 AM · Wikimedia-Hackathon-2024, MW-1.43-notes (1.43.0-wmf.4; 2024-05-07), MediaWiki-General, MediaWiki-Platform-Team
TK-999 added a comment to T363980: WebRequest::getCookie may return an array value, causing errors.

This is apparently a poorly documented quirk of PHP's $_COOKIE handling. WebRequest::getCookie is a thin wrapper around this superglobal. At a quick glance, there is plenty of code that accesses values through this helper and assumes that the return value is either a string or falsy. I think we could either:

  1. Fix all occurrences to check for and handle array values, or
  2. Handle array values in getCookie() and concatenate or otherwise normalize them.
May 2 2024, 9:29 AM · Wikimedia-Hackathon-2024, MW-1.43-notes (1.43.0-wmf.4; 2024-05-07), MediaWiki-General, MediaWiki-Platform-Team
TK-999 created T363980: WebRequest::getCookie may return an array value, causing errors.
May 2 2024, 9:27 AM · Wikimedia-Hackathon-2024, MW-1.43-notes (1.43.0-wmf.4; 2024-05-07), MediaWiki-General, MediaWiki-Platform-Team

Apr 25 2024

TK-999 closed T363423: Interwiki redirects to local interwikis under the same domain do not work as Resolved.
Apr 25 2024, 9:07 PM · MW-1.43-notes (1.43.0-wmf.3; 2024-04-30), MediaWiki-Platform-Team, MediaWiki-Interwiki
TK-999 added a comment to T363423: Interwiki redirects to local interwikis under the same domain do not work.

Boldly tagging Mediawiki-Platform-Team since the component is without an owner but the change should be very simple.

Apr 25 2024, 12:43 PM · MW-1.43-notes (1.43.0-wmf.3; 2024-04-30), MediaWiki-Platform-Team, MediaWiki-Interwiki
TK-999 added a project to T363423: Interwiki redirects to local interwikis under the same domain do not work: MediaWiki-Platform-Team.
Apr 25 2024, 12:43 PM · MW-1.43-notes (1.43.0-wmf.3; 2024-04-30), MediaWiki-Platform-Team, MediaWiki-Interwiki

Apr 24 2024

TK-999 added a comment to T363423: Interwiki redirects to local interwikis under the same domain do not work.

This is a headache for sites that host sister projects under the same domain:

  • https://starwars.fandom.com/wiki/essences:Test works as expected,
  • https://starwars.fandom.com/wiki/es:Test only works thanks to a bag of tricks involving hijacking the BadTitleError thrown from the init code to serve a redirect anyways.
Apr 24 2024, 11:07 PM · MW-1.43-notes (1.43.0-wmf.3; 2024-04-30), MediaWiki-Platform-Team, MediaWiki-Interwiki
TK-999 created T363423: Interwiki redirects to local interwikis under the same domain do not work.
Apr 24 2024, 11:05 PM · MW-1.43-notes (1.43.0-wmf.3; 2024-04-30), MediaWiki-Platform-Team, MediaWiki-Interwiki

Apr 10 2024

TK-999 added a comment to T352913: session_write_close failure in PHPSessionHandlerTest under php8.3.

That sounds bad. Session data should be written to MediaWiki's session backend, not files - the default PHP session handler should be disabled as soon as Setup.php runs.

Apr 10 2024, 12:54 PM · MediaWiki-Platform-Team, PHP 8.3 support, MediaWiki-Core-AuthManager
TK-999 added a comment to T352913: session_write_close failure in PHPSessionHandlerTest under php8.3.

It appears to me that the immediate failure here is that the session directory at /var/lib/php/sessions is not writable (ie it doesn't exist and the "nobody" user in CI isn't allowed to create it).

Apr 10 2024, 12:52 PM · MediaWiki-Platform-Team, PHP 8.3 support, MediaWiki-Core-AuthManager

Apr 6 2024

TK-999 added a comment to T352913: session_write_close failure in PHPSessionHandlerTest under php8.3.

The error comes from \Wikimedia\PhpSessionSerializer::decode - it seems the serialization format may have changed.

Apr 6 2024, 8:42 AM · MediaWiki-Platform-Team, PHP 8.3 support, MediaWiki-Core-AuthManager

Apr 5 2024

TK-999 added a comment to T326480: PHP 8.2 failure for ApiResultTest::testTransformations for different order of the result.

Patch updated.

Apr 5 2024, 3:05 PM · MW-1.39-notes, MW-1.41-notes, MW-1.40-notes, MW-1.42-notes (1.42.0-wmf.26; 2024-04-09), Patch-For-Review, MediaWiki-Core-Tests, MediaWiki-Action-API, PHP 8.2 support

Mar 14 2024

TK-999 created T360155: Cargo does not rename hierarchy table names when a replacement table is switched in.
Mar 14 2024, 9:57 PM · MediaWiki-extensions-Cargo

Mar 5 2024

TK-999 added a comment to T331689: It would be cool if cargo had configuration to reduce risk of denial of service attacks.

@Yaron_Koren Yeah, this could also be integrated with the special page, good idea!

Mar 5 2024, 10:38 PM · MediaWiki-extensions-Cargo
TK-999 added a comment to T331689: It would be cool if cargo had configuration to reduce risk of denial of service attacks.

Something that came up recently (in the context of lol.fandom.com) was the ability to add rate limits to the Cargo query API, since there have been a few cases of people accidentally issuing too many queries in too short a timeframe. I made a patch for that.

Mar 5 2024, 12:18 PM · MediaWiki-extensions-Cargo

Feb 13 2024

TK-999 created T357395: Only run CargoStore validation logic before storing data.
Feb 13 2024, 11:37 AM · MediaWiki-extensions-Cargo

Feb 12 2024

TK-999 created T357313: Setup E2E tests for Cargo.
Feb 12 2024, 2:10 PM · MediaWiki-extensions-Cargo

Feb 6 2024

TK-999 closed T355530: Cannot delete files with non-standard extensions on MySQL in a strict mode as Resolved.
Feb 6 2024, 3:51 PM · MW-1.42-notes (1.42.0-wmf.18; 2024-02-13), MW-1.41-notes, MW-1.39-notes, MW-1.40-notes, MediaWiki-Uploading
TK-999 closed T355530: Cannot delete files with non-standard extensions on MySQL in a strict mode, a subtask of T108255: Enable MariaDB/MySQL's Strict Mode, as Resolved.
Feb 6 2024, 3:51 PM · SRE-Sprint-Week-Sustainability-March2023, Epic, Beta-Cluster-Infrastructure, DBA, MediaWiki-libs-Rdbms

Feb 5 2024

TK-999 added a comment to T316540: Support macOS compatibility.

It seems that kqueue is usable on macOS for at least wall-time profiling and simple timers—and unlike other Apple-specific APIs, should be available on other OSes too like BSD, which should facilitate testing. I cobbled together a patch leveraging this that seems to work on macOS.

Feb 5 2024, 11:08 AM · MediaWiki-Platform-Team, Developer Productivity, Excimer
TK-999 triaged T356568: PHP deprecation warning on Special:Drilldown as Low priority.
Feb 5 2024, 8:39 AM · Patch-For-Review, PHP 8.1 support, MediaWiki-extensions-Cargo
TK-999 closed T356568: PHP deprecation warning on Special:Drilldown as Resolved.
Feb 5 2024, 8:38 AM · Patch-For-Review, PHP 8.1 support, MediaWiki-extensions-Cargo

Feb 3 2024

TK-999 created T356568: PHP deprecation warning on Special:Drilldown.
Feb 3 2024, 2:48 PM · Patch-For-Review, PHP 8.1 support, MediaWiki-extensions-Cargo

Jan 30 2024

TK-999 added a comment to T320980: Add parameters to control ActorCache.

This should no longer be necessary, as the mentioned tests have been adjusted to not need such functionality.

Jan 30 2024, 8:05 AM · MediaWiki-User-management

Jan 23 2024

TK-999 edited projects for T32148: Year 10,000 problem, added: Patch-For-Review; removed Patch-Needs-Improvement.
Jan 23 2024, 2:34 PM · I18n, MediaWiki-General

Dec 20 2023

TK-999 added a comment to T257703: Clean up Cache-Control handling in MediaWiki.

Making session initialization happen at a predictable point in time was one of the design goals of the current session system, and IMO it resulted in much easier to reason about behavior, so it would be nice to keep that.

Dec 20 2023, 8:54 AM · MediaWiki-extensions-CentralNotice, Sustainability (Incident Followup), FR-CentralNotice-Caching, MediaWiki-Core-AuthManager
TK-999 added a comment to T257703: Clean up Cache-Control handling in MediaWiki.

Having something in place for REST that would allow handlers to specify whether they depend on a session SGTM irregardless—but we should consider the case where a handler unknowingly ends up depending on the session because of some deep dependency.

Dec 20 2023, 8:17 AM · MediaWiki-extensions-CentralNotice, Sustainability (Incident Followup), FR-CentralNotice-Caching, MediaWiki-Core-AuthManager
TK-999 added a comment to T257703: Clean up Cache-Control handling in MediaWiki.

That would mean the session is not available during hooks that run between the beginning of Setup.php and wherever session initialization would happen. Checking for registered or temp users would return the wrong result, messages would be rendered in the wrong language etc. Currently the only hook that runs before session initialization is MediaWikiServices and there the services are not set up yet so it's very unlikely that something session-dependent would be attempted.

The opposite approach would be to have some sort of URL routing step very early in Setup.php or the entry point which would determine whether this request needs a session. I think that's how a more modern web application would work: determining which controller handles the request is one of the first steps. MediaWiki doesn't really have controllers but it could be approximated for REST URLs.

Dec 20 2023, 8:16 AM · MediaWiki-extensions-CentralNotice, Sustainability (Incident Followup), FR-CentralNotice-Caching, MediaWiki-Core-AuthManager

Dec 19 2023

TK-999 added a comment to T257703: Clean up Cache-Control handling in MediaWiki.

More broadly, we may need to revisit the practice of eagerly setting up the session itself in Setup.php as well, since that itself may set cookies even if nothing attempts to interact with the session user during the lifetime of the request.

I had the same conclusion when analysing the related task T285210#9415537, and defering session management would make the warning Cookies set on {url} with Cache-Control "{cache-control}" more useful for developers to track actual code paths where both session is used and cache-control is declared as public.

At the same time, some session-independent API-like requests (API with action=query, index.php with action=raw, Wikibase’s Special:EntityData…) might also be marked as "should not use $wgUser" to extend a bit more the mechanism MW_NO_SESSION, and these would not set Set-Cookie if it don’t use $wgUser (and emit a log if they do).

Dec 19 2023, 10:15 PM · MediaWiki-extensions-CentralNotice, Sustainability (Incident Followup), FR-CentralNotice-Caching, MediaWiki-Core-AuthManager

Nov 23 2023

TK-999 added a comment to T302083: DiscussionTools source and preview getting out of sync in Android browsers (keyboard / GBoard app may be involved).

Adding @TK-999 since they wrote a patch for a similar issue in VE. Maybe they can provide some insights :)

Nov 23 2023, 4:34 PM · Editing-team, DiscussionTools

Nov 13 2023

TK-999 added a subtask for T289926: Fix passing null to non-null param of PHP internal functions in MediaWiki core (PHP 8.1 warning): T351088: PHP 8.1: WebRequest::getFuzzyBool may emit deprecation warnings.
Nov 13 2023, 2:41 PM · MW-1.40-notes (1.40.0-wmf.24; 2023-02-20), MW-1.39-release, MW-1.39-notes, MW-1.38-release, MW-1.38-notes, Patch-For-Review, MW-1.36-notes, MW-1.35-notes, MediaWiki-extensions-General, MediaWiki-General, PHP 8.1 support
TK-999 added a parent task for T351088: PHP 8.1: WebRequest::getFuzzyBool may emit deprecation warnings: T289926: Fix passing null to non-null param of PHP internal functions in MediaWiki core (PHP 8.1 warning).
Nov 13 2023, 2:41 PM · MW-1.42-notes (1.42.0-wmf.5; 2023-11-14), MediaWiki-Platform-Team, MediaWiki-General, PHP 8.1 support
TK-999 moved T351088: PHP 8.1: WebRequest::getFuzzyBool may emit deprecation warnings from Backlog to MediaWiki core on the PHP 8.1 support board.
Nov 13 2023, 2:40 PM · MW-1.42-notes (1.42.0-wmf.5; 2023-11-14), MediaWiki-Platform-Team, MediaWiki-General, PHP 8.1 support
TK-999 created T351088: PHP 8.1: WebRequest::getFuzzyBool may emit deprecation warnings.
Nov 13 2023, 2:07 PM · MW-1.42-notes (1.42.0-wmf.5; 2023-11-14), MediaWiki-Platform-Team, MediaWiki-General, PHP 8.1 support

Nov 2 2023

TK-999 edited projects for T51504: ipb_range_start and ipb_range_end should be blank for single-IP blocks, added: Patch-For-Review; removed Patch-Needs-Improvement.
Nov 2 2023, 8:48 PM · Patch-For-Review, MediaWiki-Blocks, Performance Issue

Oct 25 2023

TK-999 added a comment to T344189: array_merge_recursive inefficient on PHP 8.2 in HtmlForm.

What page(s) does this happen on reliably?

Oct 25 2023, 10:18 AM · Performance Issue, MediaWiki-HTMLForm, PHP 8.2 support

Oct 17 2023

TK-999 added a comment to T347507: ParsoidExtensionAPI: Provide a new method for extensions to access enclosing template parameters.

Thanks @Alex44019 and @cscott for raising this one. I remember discussing it with the team a while back, but the Parsoid extension API was considerably less fleshed out back then.

Oct 17 2023, 9:32 AM · Parsoid-Read-Views, Parsoid

Oct 15 2023

TK-999 added a comment to T324207: Phan crashes on css-sanitizer on PHP 8.1.

Taint-check is fully under our control, but it's not causing this crash as per above. This is a bug in phan itself. But unfortunately I agree with the second part of your comment. Phan is all but actively maintained at the moment, and this is already causing us troubles (T325321 immediately comes to mind).

Oct 15 2023, 6:35 AM · Patch-For-Review, Upstream, phan, PHP 8.1 support, css-sanitizer

Oct 13 2023

TK-999 added a comment to T324207: Phan crashes on css-sanitizer on PHP 8.1.

Might be worth to manually patch the affected plugin in CI—Phan seems to have been in development limbo for most of this year, there is very little activity both in terms of code changes and responding to issues.

Oct 13 2023, 4:07 PM · Patch-For-Review, Upstream, phan, PHP 8.1 support, css-sanitizer

Oct 11 2023

TK-999 edited projects for T53587: Parsoid needs to run findVariantLink or some equivalent thing, added: Patch-For-Review; removed Patch-Needs-Improvement.
Oct 11 2023, 3:53 PM · Content-Transform-Team-WIP, MediaWiki-Language-converter, Patch-For-Review, Parsoid-Read-Views (Phase 4 - Parsoid generates metadata needed by core), Parsoid-Rendering, Parsoid, Chinese-Sites

Oct 9 2023

TK-999 added a comment to T258856: Links to variants titles in Parsoid are still marked as red links.

Rebased this since it got a question about its status, just wanted to note per earlier discussions on the patch that T296023 probably needs to be resolved first to unblock this.

Oct 9 2023, 11:03 PM · Content-Transform-Team-WIP, Parsoid-Read-Views (Phase 2 - testwiki Main namespace support), Parsoid-Rendering, Parsoid
TK-999 added a comment to T275710: Deprecate IContextSource::getWikiPage and IContextSource::canUseWikiPage.

Perhaps one option could be to add a new method to WikiPageFactory that returns an optionally cached WikiPage instance for a given PageIdentity. That could then be used as a replacement without a performance cost.

Oct 9 2023, 10:38 AM · Patch-For-Review, MediaWiki-General, Platform Team Workboards (MW Expedition)

Sep 27 2023

TK-999 added a comment to T321527: Support conditional defaults for user properties.

Thanks for the CC.

Sep 27 2023, 4:19 PM · MW-1.42-notes (1.42.0-wmf.14; 2024-01-16), Growth-Team (Sprint 5 (Growth Team)), Wikimedia-Performance-recommendation, Proposal, MediaWiki-Core-Preferences

Sep 13 2023

TK-999 triaged T346265: ApiParse returns numeric file names as numbers in imagelinks section as Low priority.
Sep 13 2023, 9:51 PM · MW-1.41-notes (1.41.0-wmf.27; 2023-09-19), MediaWiki-Action-API
TK-999 closed T346265: ApiParse returns numeric file names as numbers in imagelinks section as Resolved.
Sep 13 2023, 9:50 PM · MW-1.41-notes (1.41.0-wmf.27; 2023-09-19), MediaWiki-Action-API
TK-999 moved T346265: ApiParse returns numeric file names as numbers in imagelinks section from Unsorted to Needs Review on the MediaWiki-Action-API board.
Sep 13 2023, 6:10 PM · MW-1.41-notes (1.41.0-wmf.27; 2023-09-19), MediaWiki-Action-API
TK-999 created T346265: ApiParse returns numeric file names as numbers in imagelinks section.
Sep 13 2023, 6:05 PM · MW-1.41-notes (1.41.0-wmf.27; 2023-09-19), MediaWiki-Action-API

Aug 15 2023

TK-999 added a comment to T344189: array_merge_recursive inefficient on PHP 8.2 in HtmlForm.

Possibly. I think it's worth disabling the JIT (ie making sure that opcache.jit_buffer_size is unset or 0, which is the default) though just to rule it out as a cause—it's been known to cause oddball issues when it is enabled that simply do not occur when it is off, and its maintenance status in general is dubious.

Aug 15 2023, 4:05 PM · Performance Issue, MediaWiki-HTMLForm, PHP 8.2 support
TK-999 added a comment to T344189: array_merge_recursive inefficient on PHP 8.2 in HtmlForm.

Might be worth an upstream report if a minimal reproducer can be isolated.

Aug 15 2023, 11:31 AM · Performance Issue, MediaWiki-HTMLForm, PHP 8.2 support

Jul 26 2023

TK-999 added a comment to T342748: mw-on-k8s app container CPU throttling at low average load.

@Clement_Goubert Yeah, we currently set a limit of 1 CPU per worker. We have not experimented with pinning.

Jul 26 2023, 1:52 PM · serviceops, MW-on-K8s
TK-999 added a comment to T342748: mw-on-k8s app container CPU throttling at low average load.

We were consistently throttled until we set limits == FPM worker count. Per the description (and Dan Luu's insightful foray[1]) into the topic, I don't think there is much that can be done besides adjusting or removing the limits or tweaking the CFS period that k8s uses. Removing the limits is probably fine given that the size of the worker pool is a natural upper bound on concurrency with pm = static.

Jul 26 2023, 1:07 PM · serviceops, MW-on-K8s

Jul 25 2023

TK-999 added a comment to T342201: MediaWiki\Extension\Notifications\Api\ApiEchoUnreadNotificationPages::getUnreadNotificationPagesFromForeign: Unexpected API response from {wiki}.

We've encountered spurious memcached timeouts (likely due to packet loss) with MW on k8s since forever. Are there any memcached errors logged as part of the same request?

Jul 25 2023, 11:01 AM · Growth-Team, serviceops, SRE, MediaWiki-Platform-Team, MW-1.41-notes (1.41.0-wmf.20; 2023-08-01), MediaWiki-extensions-CentralAuth, MW-on-K8s, Notifications, Wikimedia-production-error

Jul 21 2023

TK-999 closed T286928: Undefined index 0 exception in ExtArrays.php as Resolved.
Jul 21 2023, 12:20 PM · MediaWiki-extensions-Arrays

Jul 18 2023

TK-999 created T342127: CodeEditor $.textSelection('replaceSelection',...) fails.
Jul 18 2023, 2:37 PM · MW-1.41-notes (1.41.0-wmf.19; 2023-07-25), CodeEditor
hashar awarded T322748: LuaSandbox segmentation fault on PHP 8 during request shutdown a Love token.
Jul 18 2023, 8:50 AM · Upstream, php-segfault, PHP 8.0 support, LuaSandbox
TK-999 added a comment to T322748: LuaSandbox segmentation fault on PHP 8 during request shutdown.

Thanks, this is great!

Jul 18 2023, 2:10 AM · Upstream, php-segfault, PHP 8.0 support, LuaSandbox

Jul 17 2023

TK-999 added a comment to T322748: LuaSandbox segmentation fault on PHP 8 during request shutdown.

I think this is not a PHP 8.0 specific issue, it'd likely happen on earlier versions as well. We just happened to notice it because we were on the lookout for core dumps while investigating unrelated JIT issues.

Jul 17 2023, 8:31 PM · Upstream, php-segfault, PHP 8.0 support, LuaSandbox
TK-999 added a comment to T322748: LuaSandbox segmentation fault on PHP 8 during request shutdown.

Thanks a lot, Tim :)- using your advice, I inspected a more recent dump and found that it was a request where PHP was exceeding its configured memory limit while it was parsing a rather complex page. Going by that, I managed to narrow it down to a consistent reproducer:

--TEST--
Memory limit exceeded during sandbox init
--INI--
memory_limit=2M
--FILE--
<?php
$buf = str_repeat('a', 1000000);
$sandboxes = [];
for ($i = 0; $i < 100; $i++) {
    $sandboxes[] = new LuaSandbox();
}
?>
--EXPECTF--
Fatal error: Allowed memory size of 2097152 bytes exhausted%s(tried to allocate %d bytes) in %s on line %d
Jul 17 2023, 8:30 PM · Upstream, php-segfault, PHP 8.0 support, LuaSandbox
TK-999 closed T341945: PageForms may pick up default form from invalid page props as Resolved.
Jul 17 2023, 2:24 PM · MediaWiki-extensions-Page_Forms

Jul 16 2023

TK-999 updated the task description for T341945: PageForms may pick up default form from invalid page props.
Jul 16 2023, 1:34 PM · MediaWiki-extensions-Page_Forms
TK-999 created T341945: PageForms may pick up default form from invalid page props.
Jul 16 2023, 1:17 PM · MediaWiki-extensions-Page_Forms

Jul 15 2023

TK-999 added a comment to T337087: Move Cargo backlink updates to LinksUpdate.

Thank you, I forgot to circle back and close this task.

Jul 15 2023, 12:35 PM · Wikimedia-Hackathon-2023, MediaWiki-extensions-Cargo

Jul 14 2023

TK-999 added projects to T341319: RecentChanges: Improve performance of Special:RecentChanges rendering : Performance Issue, Performance-Team.
Jul 14 2023, 11:00 AM · Trust and Safety Product Team, MW-1.43-notes (1.43.0-wmf.1; 2024-04-16), Patch-Needs-Improvement, MediaWiki-Platform-Team (Radar), Wikimedia-Performance-recommendation, Performance Issue, Growth-Team, MediaWiki-Recent-changes

Jul 12 2023

TK-999 added a comment to T249164: RFC: Better interface for generating metrics in MediaWiki.

I wonder if OpenTelemetry metrics could be an alternative here.[1] T340551 makes it seem likely that the OTEL Collector will be deployed as an infrastructure component, so it could potentially be leveraged for exporting metrics in Prometheus format[2] while avoiding the use of APCu or a dedicated storage backend. What do you think?

Jul 12 2023, 6:52 AM · Observability-Metrics, Metrics Platform Backlog, Product-Data-Infrastructure (Backlog), Better Use Of Data, TechCom-RFC

Jun 13 2023

TK-999 added a comment to T338421: PageForms generates TransactionProfiler warnings on pageviews.

Thanks! Sorry, it seems I missed one spot so I made a fast follow.

Jun 13 2023, 11:54 AM · Patch-For-Review, MediaWiki-extensions-Page_Forms

Jun 8 2023

TK-999 created T338421: PageForms generates TransactionProfiler warnings on pageviews.
Jun 8 2023, 10:45 AM · Patch-For-Review, MediaWiki-extensions-Page_Forms

Jun 2 2023

TK-999 added a comment to T270525: Evaluate php-mustache .

It seems that the libmustache library used by php-mustache for actual mustache rendering purposes does not yet support referencing section data in some cases, i.e. given data like

$data = [ 'foo' => 'bar' ];

then

{{#foo}}{{.}} should be bar {{/foo}}

won't render correctly. Vector 2022 heavily uses this, so I made https://github.com/jbboehr/libmustache/pull/25 to hopefully try and fix this.

Jun 2 2023, 7:26 PM · MediaWiki-Platform-Team (Radar)

May 21 2023

TK-999 added a comment to T56140: Move TemplateData to its own JSON-content namespace and associate with Template-namespace, or to its own TemplateData content model and revision slot.

Tagging Wikimedia-Hackathon-2023 to showcase a basic PoC created during this event.

May 21 2023, 8:50 AM · Patch-For-Review, Wikimedia-Hackathon-2023, Multi-Content-Revisions, VisualEditor-MediaWiki, VisualEditor, TemplateData
TK-999 added a project to T56140: Move TemplateData to its own JSON-content namespace and associate with Template-namespace, or to its own TemplateData content model and revision slot: Wikimedia-Hackathon-2023.
May 21 2023, 8:50 AM · Patch-For-Review, Wikimedia-Hackathon-2023, Multi-Content-Revisions, VisualEditor-MediaWiki, VisualEditor, TemplateData

May 20 2023

TK-999 created T337087: Move Cargo backlink updates to LinksUpdate.
May 20 2023, 8:11 AM · Wikimedia-Hackathon-2023, MediaWiki-extensions-Cargo

May 19 2023

TK-999 edited projects for T324921: Add interface for extension properties to Parser, added: Wikimedia-Hackathon-2023; removed Wikimania-Hackathon-2023.
May 19 2023, 11:27 AM · Patch-Needs-Improvement, Content-Transform-Team, Wikimedia-Hackathon-2023, Technical-Debt, PHP 8.2 support, MediaWiki-Parser
TK-999 added a project to T324921: Add interface for extension properties to Parser: Wikimania-Hackathon-2023.
May 19 2023, 11:25 AM · Patch-Needs-Improvement, Content-Transform-Team, Wikimedia-Hackathon-2023, Technical-Debt, PHP 8.2 support, MediaWiki-Parser

Apr 25 2023

TK-999 created T335370: Cargo tables with more than 500 rows cannot be recreated on MW 1.38+.
Apr 25 2023, 4:24 PM · MediaWiki-extensions-Cargo

Apr 17 2023

TK-999 closed T334756: CargoSQLQuery: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated on PHP 8.1 as Resolved.
Apr 17 2023, 9:39 AM · PHP 8.1 support, MediaWiki-extensions-Cargo
TK-999 closed T334755: CargoQueryAPI doesn't expose error when a disallowed field alias is used as Resolved.
Apr 17 2023, 9:33 AM · MediaWiki-extensions-Cargo

Apr 14 2023

TK-999 created T334756: CargoSQLQuery: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated on PHP 8.1.
Apr 14 2023, 4:59 PM · PHP 8.1 support, MediaWiki-extensions-Cargo
TK-999 created T334755: CargoQueryAPI doesn't expose error when a disallowed field alias is used.
Apr 14 2023, 4:04 PM · MediaWiki-extensions-Cargo

Mar 29 2023

TK-999 added a comment to T333181: Cargo phan change is causing Page Forms validation to fail.

That should be fine for now. After that, we could either:

  • Configure PageForms to ignore Phan stubs in other extensions via a config stanza such as $cfg['exclude_file_regex'] = '@^../../extensions/Cargo/.phan/stubs/@';, or
  • Reimplement the hooks change in Cargo without stubs. This will require people to have a checkout of the AdminLinks extension to run phan locally and will also need a corresponding integration/config patch as noted by Sam.
Mar 29 2023, 1:34 PM · MediaWiki-extensions-Cargo