Page MenuHomePhabricator

Special:Categories should also include the first relevant item when "from" is filled
Closed, ResolvedPublic

Description

Special:Categories/Foo should show:

Category:Foo
Category:Foo bar
Category:Foo baz
Category:Qux

but shows:

Category:Foo bar
Category:Foo baz
Category:Qux

while the Category:Foo is the last item of previous page.


(adding "code-update-regression" keyword, because I'm pretty sure it used to work correctly before)


Version: unspecified
Severity: minor

Details

Reference
bz25095

Event Timeline

bzimport raised the priority of this task from to Low.Nov 21 2014, 11:14 PM
bzimport set Reference to bz25095.
bzimport added a subscriber: Unknown Object (MLST).

this issue still exists btw. As a matter of fact, it seems worse....

http://en.wikipedia.org/w/index.php?title=Special:Categories/Foo&offset=Fontwell_Park_Racecourse

Clearly the list contains "Food Network", yet
http://en.wikipedia.org/w/index.php?title=Special:Categories/Food_Network
starts at "Food Network (Canada)"

Pressing "Previous 50" http://en.wikipedia.org/w/index.php?title=Special:Categories/Food_Network&dir=prev&offset=Food_Network_%28Canada%29

gives you a list that ALSO doesn't contain "Food Network". Thus the pager offset is making exact match offsets disappear altogether from the list :D

SELECT /* IndexPager::reallyDoQuery (CategoryPager) MaxSem */ cat_title,cat_pages FROM category WHERE (cat_pages > 0) AND (cat_title>'Foo') ORDER BY cat_title LIMIT 51

This doesn't look right, should be cat_title>='Foo', otherwise &from= and &offset= work the same way.

(In reply to comment #1)

this issue still exists btw. As a matter of fact, it seems worse....

http://en.wikipedia.org/w/index.php?title=Special:Categories/Foo&offset=Fontwell_Park_Racecourse

Clearly the list contains "Food Network", yet
http://en.wikipedia.org/w/index.php?title=Special:Categories/Food_Network
starts at "Food Network (Canada)"

Pressing "Previous 50"
http://en.wikipedia.org/w/index.php?title=Special:Categories/Food_Network&dir=prev&offset=Food_Network_%28Canada%29

gives you a list that ALSO doesn't contain "Food Network". Thus the pager
offset is making exact match offsets disappear altogether from the list :D

Couldn't repro it locally.

Unfortunately, the fix breaks paging in Special:Categories (bug 36019).

Another fix is pending review in Gerrit changeset #7086.

  • Bug 37469 has been marked as a duplicate of this bug. ***
  • Bug 38016 has been marked as a duplicate of this bug. ***
  • Bug 38525 has been marked as a duplicate of this bug. ***
  • Bug 15381 has been marked as a duplicate of this bug. ***