Page MenuHomePhabricator

Requesting rewritten subpagelist extension for Wikiversity
Closed, ResolvedPublic

Description

Author: mccormack

Description:
Code of Extension:SubPageList3.zip. Add to SVN if you like.

There is a pretty exhaustive description of everything at http://www.mediawiki.org/wiki/Extension:SubPageList3, including a link to the discussions and voting on the Wikiversities. I rewrote this extension after JeLuF correctly pointed out that SubPageList2 (written by someone else) was nowhere near good enough. Mind you, I'm on a learning curve here. Code is in an attachment and also posted to the above page.


Version: unspecified
Severity: enhancement
URL: http://www.mediawiki.org/wiki/Extension:SubPageList3

Attached:

Details

Reference
bz13066

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 21 2014, 10:02 PM
bzimport set Reference to bz13066.
bzimport added a subscriber: Unknown Object (MLST).

Made some minor code tweaks in r32559.

Some fundamental issues which need to be fixed before any Wikimedia deployment:

Sorting:

The code causes an inefficient filesort operation by sorting on UPPER(page_title) instead of page_title. Depending on how smart the database is, that may be a non-issue (small result data sets) or it may be wildly inefficient, but it's a red flag.

More generally, note that the case-insensitive intention of this sort will fail on non-ASCII characters in MySQL 4 and default compat configurations, as the transformation applied at the DB won't be correct.

Recommend sorting simply on page_title, as elsewhere in the system (eg Special:Prefixindex).

Caching:

Currently the extension outright disables caching on any page using the <splist/> tag. While this ensures that up-to-date page lists are displayed, it could make a site widely using it very expensive indeed -- the entire page, however large, needs to be reparsed on every view -- even under a load spike like a Slashdotting, where the same page is hit over and over.

To correctly handle cache updates, uses on a page should be registered at links-update time, and creation/deletion of a subpage can trigger update jobs for registered pages.

mccormack wrote:

This bug ("request") is currently deprecated. Please see most recent thread at:
13163 Activate SubPageList3 extension on English Wikiversity

Brion's valuable comments have been moved there already.

I'm not sure how to mark this bug, so I've tried marking it as a duplicate of 13163.

Thank you!

*** This bug has been marked as a duplicate of bug 13163 ***