Page MenuHomePhabricator

Configure VE backend to use Parsoid directly on the beta cluster and testwiki
Closed, ResolvedPublic

Description

Before we switch VisualEditor away from using RESTbase in production, we need to try out the new backend code on SOME (not all) sites on the beta cluster and on testwiki.

  • dewiki.beta
  • testwiki

Relevant configuration:

# New config being introduced, see https://gerrit.wikimedia.org/r/c/mediawiki/extensions/VisualEditor/+/844465/8/extension.json#114
$VisualEditorDefaultParsoidClient = 'direct';

# NOTE: we used to force direct mode by disabling VRS alltogether, but other extensions use it!
#            So we should enable it again.
$wmgUseRestbaseVRS= false;

Relevant configuration:

$wmgUseRestbaseVRS= false;
NOTE: this is already enabled on labswiki (wikitech).

Event Timeline

daniel renamed this task from Configure VE backend to use Parsoid directly on the beta cluster an testwiki to Configure VE backend to use Parsoid directly on the beta cluster and testwiki.Oct 11 2022, 4:31 PM

Change 841858 had a related patch set uploaded (by Daniel Kinzler; author: Daniel Kinzler):

[operations/mediawiki-config@master] Beta: Switch VE on dewiki to direct mode

https://gerrit.wikimedia.org/r/841858

Change 841858 merged by jenkins-bot:

[operations/mediawiki-config@master] Beta: Switch VE on dewiki to direct mode

https://gerrit.wikimedia.org/r/841858

The change on beta de.wp seems to have broken saving changes to existing pages using visual editor. (Opening the editor doesn't fail, only saving/reviewing; and saving new pages also works.)

Testing on https://de.wikipedia.beta.wmflabs.org/wiki/Benutzer:Yatu, I get an error message mentioning HTTP 412 (Precondition Failed).

image.png (962×3 px, 254 KB)

This happens because when opening VE, it loads the existing page HTML client-side (the request is sent from the JS code in the user's browser, not from the PHP code) from https://de.wikipedia.beta.wmflabs.org/api/rest_v1/page/html/Benutzer%3AYatu?redirect=false&stash=true, which presumably still points to RESTBase. But when saving, it calls the core MediaWiki/Parsoid code, which doesn't have the original stashed HTML, so it fails.

There are a few ways to fix this:

  • Set wmgVisualEditorAccessRestbaseDirectly = false for this wiki, so that the client-side request is replaced by a server-side request (easiest fix for now, and we use this config on private production wikis; however it'd be better not to use this for public production wikis, since it makes the editor slower to load)
  • Make that URL be served by MediaWiki, not RESTBase (I don't know how to go about that)
  • Set $wgVisualEditorFullRestbaseURL to a different URL prefix that is served by MediaWiki and contains compatible APIs (I don't know if such URL prefix actually exists now)

Change 845058 had a related patch set uploaded (by Daniel Kinzler; author: Daniel Kinzler):

[operations/mediawiki-config@master] Set VisualEditorDefaultParsoidClient for dewiki

https://gerrit.wikimedia.org/r/845058

Change 845058 merged by jenkins-bot:

[operations/mediawiki-config@master] Set VisualEditorDefaultParsoidClient for dewiki-beta mad testwiki

https://gerrit.wikimedia.org/r/845058

Mentioned in SAL (#wikimedia-operations) [2022-11-07T08:04:41Z] <urbanecm@deploy1002> Started scap: Backport for [[gerrit:845058|Set VisualEditorDefaultParsoidClient for dewiki-beta mad testwiki (T320531)]]

Mentioned in SAL (#wikimedia-operations) [2022-11-07T08:05:01Z] <urbanecm@deploy1002> urbanecm and daniel: Backport for [[gerrit:845058|Set VisualEditorDefaultParsoidClient for dewiki-beta mad testwiki (T320531)]] synced to the testservers: mwdebug1001.eqiad.wmnet, mwdebug1002.eqiad.wmnet, mwdebug2001.codfw.wmnet, mwdebug2002.codfw.wmnet

Mentioned in SAL (#wikimedia-operations) [2022-11-07T08:23:36Z] <urbanecm@deploy1002> Finished scap: Backport for [[gerrit:845058|Set VisualEditorDefaultParsoidClient for dewiki-beta mad testwiki (T320531)]] (duration: 18m 54s)

Change 853919 had a related patch set uploaded (by Daniel Kinzler; author: Daniel Kinzler):

[operations/mediawiki-config@master] Set wmgVisualEditorAccessRestbaseDirectly = false for testwiki and dewiki.beta

https://gerrit.wikimedia.org/r/853919

Change 853919 merged by jenkins-bot:

[operations/mediawiki-config@master] Set wmgVisualEditorAccessRestbaseDirectly = false for testwiki and dewiki.beta

https://gerrit.wikimedia.org/r/853919

Mentioned in SAL (#wikimedia-operations) [2022-11-07T08:57:34Z] <urbanecm@deploy1002> Started scap: Backport for [[gerrit:853919|Set wmgVisualEditorAccessRestbaseDirectly = false for testwiki and dewiki.beta (T320531)]]

Mentioned in SAL (#wikimedia-operations) [2022-11-07T08:57:54Z] <urbanecm@deploy1002> urbanecm and daniel: Backport for [[gerrit:853919|Set wmgVisualEditorAccessRestbaseDirectly = false for testwiki and dewiki.beta (T320531)]] synced to the testservers: mwdebug1001.eqiad.wmnet, mwdebug2001.codfw.wmnet, mwdebug1002.eqiad.wmnet, mwdebug2002.codfw.wmnet

Mentioned in SAL (#wikimedia-operations) [2022-11-07T09:06:42Z] <urbanecm@deploy1002> Finished scap: Backport for [[gerrit:853919|Set wmgVisualEditorAccessRestbaseDirectly = false for testwiki and dewiki.beta (T320531)]] (duration: 09m 07s)

daniel claimed this task.
daniel updated the task description. (Show Details)