Page MenuHomeNicheWork Phabricator

MABS: Create working demo
Open, NormalPublic

Description

Create a demonstration of synchronization between two wikis for presentation in Paris.

Event Timeline

hexmode created this task.Aug 6 2019, 11:30 AM
hexmode triaged this task as Normal priority.
hexmode added a comment.EditedAug 6 2019, 5:10 PM

When trying to sync two brand new systems, they seem to exercise a bug in the api where revisions of main page show up in the history, but clicking on them says it isn't there.

Purging the page causes the page to be blank and only one revision to show in the history.
Querying the API (request: /api.php?action=query&format=json&prop=revisions&revids=1&rvprop=ids%7Ctimestamp%7Cflags%7Ccomment%7Cuser%7Ccontent) shows the page in the revisions, but visiting the page itself says "There is currently no text in this page. You can search for this page title in other pages, search the related logs, or create this page. "

The revision shows up in the history and clicking on it brings you to the normal diff view. But clicking on "newer revision" shows the above message. Need to try with MW 1.32.

Switching to older version shows that this may be a db schema problem since vising history page results in "Did you forget to run your application's database schema updater after upgrading?"

Returning to 1.33 with update.php.

ok, so update didn't do it, but now I think I've messed up the db.sql

recreating the db dump fixed the above problem.

Now I need a way to align git commits with the mediawiki revisions. This will probably mean doing something similar to the git-svn bridge which (I think) stores hashes in comments.

Currently, any time I do a push I see the following

No previous mediawiki revision found.
Getting last revision id on tracked pages...
Listing pages on remote wiki...
1 pages found.
Last remote revision found is 0.
Warning: no common ancestor, pushing complete history
To mediawiki::http://moon.localdomain
 * [new branch]      master -> master

The No previous mediawiki revision found. is problematic because this is the originating wiki.

This is different than when I have a freshly cloned repo:

$ git clone mediawiki::http://home.localdomain repo
Cloning into 'repo'...
Searching revisions...
No previous mediawiki revision found.
... fetching from beginning.
Fetching & writing export data by revs...
Listing pages on remote wiki...
1 pages found.
1/3: Revision #1 of Main_Page
2/3: Revision #2 of Main_Page
3/3: Revision #3 of Main_Page
Searching revisions...
No previous mediawiki revision found.
... fetching from beginning.
Fetching & writing export data by revs...
1/3: Revision #1 of Main_Page
2/3: Revision #2 of Main_Page
3/3: Revision #3 of Main_Page
$ cd repo
$ git fetch
Searching revisions...
Last local mediawiki revision found is 3.
... fetching from here.
Fetching & writing export data by revs...
Listing pages on remote wiki...
1 pages found.

Also needs fixing: double fetch of pages.

focusing on just getting the demo working right now. Which means manual syncing for now.

some initial problems, but they were caused by problems with the old db being left behind

hexmode shifted this object from the Restricted Space space to the S3 Public NicheWork space.Sep 16 2019, 9:30 AM
hexmode changed the visibility from "All Users" to "Public (No Login Required)".