User/actor storage changes

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

User/actor storage changes

Brad Jorsch (Anomie)
As you may have been aware, we've been working on changing how MediaWiki
stores "actors", meaning the user account or IP address that performed the
edit, logged action, and so on. Instead of having user ID and name fields
in each revision (rev_user+rev_user_text), log entry
(log_user+log_user_text), and so on, we're storing the ID and name in a
central "actor" table and referring to them by the actor ID from other
tables (log_actor and so on).

We've been writing to the new fields and tables since mid-December 2018,
and have back-populated them for old revisions, log entries, and so on.
We're about to start changing Wikimedia's production wikis to start reading
the new fields instead of the old.

For the most part wiki users shouldn't notice any changes, however if you
notice something being newly slow or incorrectly displaying the user,
please let me know.

For users of the Data Services replicas, such as Toolforge, the views do
still include the old columns and they will be simulated even after
MediaWiki stops writing them. But, for the non-compat views, this *will*
change in the future as it recently did for the comment columns, so you may
want to begin your migration process soon rather than waiting.

MediaWiki developers should make sure code accessing user fields makes use
of the ActorMigration class that was introduced in MediaWiki 1.31.

You can watch https://phabricator.wikimedia.org/T188327 (and any subtasks)
for more information on the deployment process.

Note that accesses to the actor table may be slow, as are accesses to the
comment table. Improving that situation is being tracked at
https://phabricator.wikimedia.org/T215445.


--
Brad Jorsch (Anomie)
Senior Software Engineer
Wikimedia Foundation
_______________________________________________
Wikitech-l mailing list
[hidden email]
https://lists.wikimedia.org/mailman/listinfo/wikitech-l