Page MenuHomePhabricator

Touching something in the Page namespace adds and removes it from a category, even when the page has no changes
Closed, InvalidPublic

Description

Running maintenance through one of the wikis, prior to other wikis. It is to touch files in the Page: namespace. When this is happening the page is being added and then removed to the category. In the following snippet from RC you will see that the only files that were "edited" were /137 and /147 yet all the intervening pages have cat changes/

    https://da.wikisource.org/w/index.php?title=Speciel:Seneste_%C3%A6ndringer&hidebots=0&limit=30

         13:22 	Kategori:Ikke korrekturlæst‎‎ (22 changes | history) . . (0)‎ . . [Wikisource-bot‎ (22×)]
	      	13:22 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/147 removed from category)
	      	13:22 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/147 added to category)
	      	13:22 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/146 removed from category)
	      	13:22 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/146 added to category)
	      	13:21 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/145 removed from category)
	      	13:21 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/145 added to category)
	      	13:21 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/144 removed from category)
	      	13:21 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/144 added to category)
	      	13:21 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/143 removed from category)
	      	13:21 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/143 added to category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/142 removed from category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/142 added to category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/141 removed from category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/141 added to category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/140 removed from category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/140 added to category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/139 removed from category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/139 added to category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/138 removed from category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/138 added to category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/137 removed from category)
	      	13:15 . . (0)‎ . . Wikisource-bot (Talk | contribs | block) (Side:Almindelig_Handelsvidenskab.djvu/137 added to category)
      13:22 	Side:Almindelig Handelsvidenskab.djvu/147‎ (diff | hist) . . (-1)‎ . . Wikisource-bot (Talk | contribs | block) (Pywikibot touch edit) [rollback]
      13:21 	Kategori:Korrekturlæst‎‎ (6 changes | history) . . (0)‎ . . [Wikisource-bot‎ (6×)]
      13:15 	Side:Almindelig Handelsvidenskab.djvu/137‎ (diff | hist) . . (-1)‎ . . Wikisource-bot (Talk | contribs | block) (Pywikibot touch edit) [rollback]

Event Timeline

Billinghurst raised the priority of this task from to Needs Triage.
Billinghurst updated the task description. (Show Details)
Billinghurst subscribed.

Well this certainly looks interesting....

As a guess I would say this has something todo with the ProofRead extension

Addshore triaged this task as Medium priority.
Addshore added a project: ProofreadPage.

So, I have spent a while now trying to reproduce this with the ProofRead extension installed (and the exact pages from da.wikisource but I have not managed to :/

Any ideas others may have would be greatly appreciated!

If we have somewhere I can poke with wikisource-bot, I can clumsily use touch.py on it

That may also be completely unrelated to Extension:ProofRead, since it also happened on Commons (see this comment).

Addshore renamed this task from Touching a file adds and removes it from a category, even when page has no changes to Touching something in the Page namespace adds and removes it from a category, even when the page has no changes.Sep 1 2015, 11:40 AM

Hmmm, well if it was just to do with the ProofRead thing I would say it was something to do with the pages not actually containing the category, and instead it being added in PageContent:: getParserOutput which calls $parserOutput->addCategory.

Looking into the commons thing now

And the CommonsMetadata extension also does something similar in HookHandler.php in the onContentAlterParserOutput method with $parserOutput->addTrackingCategory

Still digging to see if this is event he cause, unable to reproduce manually still, now to try with pywikibot for the wikisource case (although pywikibot was no where near the commons case afaik)...

Right, well after spending a large proportion of my day trying to reproduce this (and failing) I think the way to move forward here would be to not worry about this in the initial patch for the feature.
As a precaution we can disable the feature on all wikisource wikis and all commons wikis (which is the only place that this has happened), and once merged we could perhaps debug further on beta and test.
I am still convinced this has something to do with the CommonsMetadata or ProofreadPage extension and the addCategory method in ParserOutput, but I am no closer to working out exactly why.
It is of course quite hard to look into this as all of the recent change entries that this task is refering to no longer exist in the DB.

If anyone else fancies looking at this please do! but @kai.nissen and myself are stumped! (for now) :)

That approach works for me. It is not a very common task that we need to undertake, so we can manage it as we go forward, and I will ensure that I back off the page touches or do it with batches with someone around. Thanks for the work that you have put in.

Billinghurst changed the task status from Open to Stalled.Sep 1 2015, 3:37 PM

to retest following implementation as intervening bug fixes may have resolved the issue.

Change 235467 had a related patch set uploaded (by Addshore):
wgRCWatchCategoryMembership flase for commons & wikisource

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

Change 235467 abandoned by Addshore:
wgRCWatchCategoryMembership false for commons & wikisource

Reason:
currently disabled by default

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

Have not been able to reproduce.

This feature is currently deployed on beta and will likely be slowly rolled out on projects soonish.

We could probably close this for now unless it re appears.

@Addshore just checking that you were working on something with the proofread page extension

Closing this for now to keep lists of issues clean.
If when this feature makes its way back onto wikisource we see a similar thing we can reopen it!

This feature is due to be deployed on wikisource this Thursday again.
If we see similar things then we will revert the change and investigate.
(It will be much easier to investigate this time around as the changes will remain in the DB for us to look at)

Thursday? WSes usually get the deployment Tuesday. Is it being deployed out of session?

@Billinghurst the code deployment has happened already some time ago. What is missing is a config change to enable it on Wikisource (basically setting $wgRCWatchCategoryMembership) see https://gerrit.wikimedia.org/r/#/c/264735/. That can be done independently from software deployments.

Yep. Was just confirming. IRC didn't elicit a response. Thx.

This is now enabled on wikisource again!