Seb35 (Seb35)
MediaWiki gnome

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Saturday

  • Clear sailing ahead.

User Details

User Since
Oct 7 2014, 9:50 AM (141 w, 2 d)
Availability
Available
IRC Nick
seb35
LDAP User
Seb35
MediaWiki User
Seb35

I follow MediaWiki development since 2007. Although I don’t regularly submit patches for the MediaWiki core, I act as an ambassador, submitting bugs, helping in their resolution, exchanging with the French-speaking community, improving documentation and its translation into French, etc. I developed three extensions (BackwardsTimeTravel, HSTS, and MediaWikiFarm).

Since 2016, I run a small MediaWiki consulting company in France, which help companies, associations and public sector to set up MediaWiki installations.

My GitHub account is Seb35.

Recent Activity

Tue, Jun 20

Seb35 triaged T168389: Create a maintenance script in Flow to rename a wiki as Low priority.

I did the following operations in database in a wiki and it globally works (*):

UPDATE flow_ext_ref SET ref_src_wiki = 'newWikiID' WHERE ref_src_wiki = 'oldWikiID';
UPDATE flow_revision SET rev_user_wiki = 'newWikiID' WHERE rev_user_wiki = 'oldWikiID';
UPDATE flow_revision SET rev_mod_user_wiki = 'newWikiID' WHERE rev_mod_user_wiki = 'oldWikiID';
UPDATE flow_revision SET rev_edit_user_wiki = 'newWikiID' WHERE rev_edit_user_wiki = 'oldWikiID';
UPDATE flow_tree_revision SET tree_orig_user_wiki = 'newWikiID' WHERE tree_orig_user_wiki = 'oldWikiID';
UPDATE flow_wiki_ref SET ref_src_wiki = 'newWikiID' WHERE ref_src_wiki = 'oldWikiID';
UPDATE flow_workflow SET workflow_wiki = 'newWikiID' WHERE workflow_wiki = 'oldWikiID';
UPDATE flow_subscription SET subscription_user_wiki = 'newWikiID' WHERE subscription_user_wiki = 'oldWikiID';

(The last table was empty, so I’m less sure, but it seems it should be changed too.)

Tue, Jun 20, 11:43 AM · Flow, Collaboration-Team-Triage
Seb35 created T168389: Create a maintenance script in Flow to rename a wiki.
Tue, Jun 20, 11:28 AM · Flow, Collaboration-Team-Triage

Fri, Jun 16

Seb35 added a comment to T166384: scap: Investigate scaps handling of InitialiseSettings.php.

Note that there is a filemtime( "InitialiseSettings.php" ) in https://phabricator.wikimedia.org/source/mediawiki-config/browse/master/wmf-config/CommonSettings.php;3d7a96ad4d39b09960f4c212109ff7e129cdc712$159. I guess it explains why touching InitialiseSettings.php triggered the beginning of the performance issues, possibly some feature flag or parameter was activated at this time. (I didn’t read in details the post-mortem itself.)

Fri, Jun 16, 4:15 PM · Release-Engineering-Team (Kanban), Scap
Seb35 added a comment to T117332: Links tables are sometimes not being populated.

For those who saw this issue, could you re-check if you still experience this issue? There were quite a lot of changes around jobs and related topics since this task was first opened, it could have been fixed.

Fri, Jun 16, 2:44 PM · MediaWiki-JobQueue, MediaWiki-Page-editing
Seb35 added a comment to T166738: Error "Class 'MWTimestamp' not found" when upgrading to MW 1.29.0-rc.0.

I found the task T164896 recently closed, possibly similar to this one (class_alias issue).

Fri, Jun 16, 1:51 PM · MW-1.29-release, MediaWiki-General-or-Unknown
Seb35 added a comment to T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted.

@aaron I added some documentation on Manual:Job queue and Manual:Job queue/For developers; could you review it and particularly the differences between deferrable updates and jobs? It should help developers to decide if they want to use a deferrable update and/or a job.

Fri, Jun 16, 12:16 PM · MW-1.30-release-notes (WMF-deploy-2017-06-06_(1.30.0-wmf.4)), MW-1.28-release, Wikimedia-log-errors, Performance-Team, MW-1.27-release, MW-1.29-release, MediaWiki-JobQueue

Thu, Jun 15

Seb35 added a comment to T166738: Error "Class 'MWTimestamp' not found" when upgrading to MW 1.29.0-rc.0.

I’m no more sure how I did to see the error, I guess it is a very specific state.

Thu, Jun 15, 8:26 AM · MW-1.29-release, MediaWiki-General-or-Unknown

Tue, Jun 13

Seb35 updated the task description for T154438: Special:MovePage throws MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush, JobQueueDB::doBatchPush).
Tue, Jun 13, 5:17 PM · Patch-For-Review, MediaWiki-JobQueue, MW-1.29-release, MediaWiki-Database
Seb35 updated the task description for T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted.
Tue, Jun 13, 5:17 PM · MW-1.30-release-notes (WMF-deploy-2017-06-06_(1.30.0-wmf.4)), MW-1.28-release, Wikimedia-log-errors, Performance-Team, MW-1.27-release, MW-1.29-release, MediaWiki-JobQueue
Seb35 updated the task description for T165714: BagOStuff::trackDuplicateKeys causes a "MWCallableUpdate::doUpdate: transaction round ..." during JobRunner::executeJob.
Tue, Jun 13, 5:17 PM · MW-1.29-release, Patch-For-Review, MediaWiki-JobQueue, Performance-Team, MediaWiki-Database
Seb35 updated the task description for T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".
Tue, Jun 13, 5:16 PM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database

Sat, Jun 10

Linedwell awarded T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)" a Cookie token.
Sat, Jun 10, 3:02 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database

Fri, Jun 9

Seb35 added a comment to T132215: Do not show recent changes for recently deleted pages.

Not sure about the MediaWiki version then (1.27-alpha or 1.28-alpha) but possibly this is partly solved by T153849 "Deleted pages' creation entry shows up in Special:RecentChanges as a redlink since MW 1.28" (duplicate of T154425): it is still a deferred update (by design) but it will work better.

Fri, Jun 9, 9:20 AM · MediaWiki-JobQueue, MediaWiki-Recent-changes
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

I link here some other tasks I found as partly linked to this one - if someone want to check in details and/or discuss these and/or close these:

  • T85762 "Get rid of the Uncommitted DB writes notice" A proposal about hiding these warnings in some cases
  • T85734 "Uncommitted DB writes (transaction from DatabaseBase::query (DatabaseBase::query))" Quite old, possibly solved in newer MediaWiki versions
  • T58269 "Uncommitted DB writes (transaction from DatabaseBase::query (Block::newLoad))" Quite old, possibly solved in newer MediaWiki versions
  • T52778 "nested transaction in update.php when updating collation" Quite old, possibly solved in newer MediaWiki versions
  • T132215 "Do not show recent changes for recently deleted pages" About the design to make as deferred updates for remove RC entries, parly solved (mitigated) by this fix (linked to T153849 "Deleted pages' creation entry shows up in Special:RecentChanges as a redlink since MW 1.28")
Fri, Jun 9, 9:14 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

I am able to confirm the observation (sadly)

@Seb35 Thanks for your time and effort.

Fri, Jun 9, 8:55 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

Closed the quasi-duplicates T154438, T157679, T166867, T153849 (same call stack but different user-end actions).

Fri, Jun 9, 7:47 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 closed T153849: Deleted pages' creation entry shows up in Special:RecentChanges as a redlink since MW 1.28 as Resolved.

Closed this task given it is almost a duplicate for T154425, it is solved by https://gerrit.wikimedia.org/r/#/c/356619/ (fixed in 1.28, 1.29, 1.30). An issue remains as of now, see T154425 for details.

Fri, Jun 9, 7:38 AM · Multimedia, MediaWiki-Patrolling, MediaWiki-File-management, MediaWiki-JobQueue, ShoutWiki, MediaWiki-Recent-changes
Seb35 closed T166867: DBUnexpectedError from line 2877 of Database.php: MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush). as Resolved.

Closed this task given it is almost a duplicate for T154425, it is solved by https://gerrit.wikimedia.org/r/#/c/356619/ (fixed in 1.28, 1.29, 1.30). An issue remains as of now, see T154425 for details.

Fri, Jun 9, 7:35 AM · MediaWiki-Database, MediaWiki-JobQueue, MW-1.29-release
Seb35 closed T157679: Exception thrown with an uncommited database transaction: MWCallableUpdate::doUpdate: Flush failed on server(s) as Resolved.

Closed this task given it is almost a duplicate for T154425, it is solved by https://gerrit.wikimedia.org/r/#/c/356619/ (fixed in 1.28, 1.29, 1.30). An issue remains as of now, see T154425 for details.

Fri, Jun 9, 7:34 AM · MW-1.29-release-notes, MW-1.28-release-notes, MW-1.30-release-notes, Patch-For-Review, MediaWiki-Database
Seb35 closed T157679: Exception thrown with an uncommited database transaction: MWCallableUpdate::doUpdate: Flush failed on server(s), a subtask of T41480: Bugs affecting translatewiki.net (errors from MediaWiki master) (tracking), as Resolved.
Fri, Jun 9, 7:34 AM · Tracking, MediaWiki-General-or-Unknown
Seb35 closed T154438: Special:MovePage throws MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush, JobQueueDB::doBatchPush) as Resolved.

Closed this task given it is almost a duplicate for T154425, it is solved by https://gerrit.wikimedia.org/r/#/c/356619/ (fixed in 1.28, 1.29, 1.30). An issue remains as of now, see T154425 for details.

Fri, Jun 9, 7:33 AM · Patch-For-Review, MediaWiki-JobQueue, MW-1.29-release, MediaWiki-Database

Thu, Jun 8

Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

I see some resolution path:

  • deactivate DeferredUpdates::tryOpportunisticExecute (it’s quite brutal)
  • add a check to the transaction status in DeferredUpdates::getBusyDbConnections
  • lazy push all jobs in CLI to defer their pushing at the end of the job execution (although it should be carefully designed because pushLazyJobs will push the jobs, and an indefinite loop could be created)
Thu, Jun 8, 2:58 PM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

I pretty sure there is no issue with Redis-managed queues.

Thu, Jun 8, 12:55 PM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

I localised the issue in DeferredUpdates::tryOpportunisticExecute() [which is pretty expected given it’s a difference between CLI and Web execution of jobs] => the callback is directly executed, but still don’t know why it does not add the job to the job queue.

Thu, Jun 8, 11:58 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

@mwjames @Krinkle I am able to confirm the observation (sadly): the FakeDispatchJob, added by SecondaryUpdateJob, is not added in the job queue when the job queue is executed on CLI (but works when executed on Web).

Thu, Jun 8, 9:42 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 closed T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted as Resolved.

Resolved in 1.27-1.30 (see summary in description for an overview of the two similar bugs).

Thu, Jun 8, 8:43 AM · MW-1.30-release-notes (WMF-deploy-2017-06-06_(1.30.0-wmf.4)), MW-1.28-release, Wikimedia-log-errors, Performance-Team, MW-1.27-release, MW-1.29-release, MediaWiki-JobQueue
Seb35 closed T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted, a subtask of T41480: Bugs affecting translatewiki.net (errors from MediaWiki master) (tracking), as Resolved.
Thu, Jun 8, 8:43 AM · Tracking, MediaWiki-General-or-Unknown

Wed, Jun 7

Seb35 added a comment to T166738: Error "Class 'MWTimestamp' not found" when upgrading to MW 1.29.0-rc.0.

Hmm, I now have this issue - not sure why I didn’t have previously.

Wed, Jun 7, 8:30 AM · MW-1.29-release, MediaWiki-General-or-Unknown
Seb35 closed T165714: BagOStuff::trackDuplicateKeys causes a "MWCallableUpdate::doUpdate: transaction round ..." during JobRunner::executeJob as Resolved.

Thanks for the confirmation @mwjames: given the possibly wide range of potential issues, it helps to have a +1 from a different setup.

Wed, Jun 7, 8:01 AM · MW-1.29-release, Patch-For-Review, MediaWiki-JobQueue, Performance-Team, MediaWiki-Database
Seb35 updated the task description for T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".
Wed, Jun 7, 7:51 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 updated the task description for T154438: Special:MovePage throws MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush, JobQueueDB::doBatchPush).
Wed, Jun 7, 7:51 AM · Patch-For-Review, MediaWiki-JobQueue, MW-1.29-release, MediaWiki-Database
Seb35 updated the task description for T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted.
Wed, Jun 7, 7:50 AM · MW-1.30-release-notes (WMF-deploy-2017-06-06_(1.30.0-wmf.4)), MW-1.28-release, Wikimedia-log-errors, Performance-Team, MW-1.27-release, MW-1.29-release, MediaWiki-JobQueue
Seb35 updated the task description for T165714: BagOStuff::trackDuplicateKeys causes a "MWCallableUpdate::doUpdate: transaction round ..." during JobRunner::executeJob.
Wed, Jun 7, 7:50 AM · MW-1.29-release, Patch-For-Review, MediaWiki-JobQueue, Performance-Team, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

The patch should be backported to REL1_29 and REL1_28. Should be checked for REL1_27.

Wed, Jun 7, 7:02 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database

Sat, Jun 3

Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

Ok so when a problem is solved another appears. We are in the shutdown, hence nothing is like normal operation. What happens with the proposed change is to add the lazy jobs as a deferrable update and not with onTransactionIdle (given it’s not possible due to Database mechanisms). So in the shutdown (either MediaWiki::restInPeace() either JobRunner::executeJob()), you execute the deferred updates, you add lazy jobs, and since the lazy jobs are added through a deferrable update, nothing more happens since deferred updates are already executed.

Sat, Jun 3, 5:11 PM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

Ok, I am able to reproduce the issue you are observing @mwjames, I investigate.

Sat, Jun 3, 4:26 PM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

From what I understand in this issue, when you have an EnqueuableDataUpdate (e.g. when you delete a page) and a classical DeferrableUpdate (e.g. Pingback, which is always added):

Sat, Jun 3, 3:50 PM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

So it would suggest the issue is in JobQueue::push(). If you set $wgJobRunRate to 0, do you see the job(s) with showJobs.php?

Sat, Jun 3, 3:29 PM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T160710: Session (new) Developers and MediaWiki: How to become BFFs?.

It is missing the 'Thanks' extension on Phabricator :) but thanks for the session and for the outcomes (notes and photos).

Sat, Jun 3, 3:01 PM · TCB-Team, Developer-Relations (Apr-Jun 2017), Wikimedia-Hackathon-2017
Seb35 awarded T160710: Session (new) Developers and MediaWiki: How to become BFFs? a Barnstar token.
Sat, Jun 3, 2:59 PM · TCB-Team, Developer-Relations (Apr-Jun 2017), Wikimedia-Hackathon-2017
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

The more worrying factor is that I executed the same process and now jobs are inserted which seems to indicate some non deterministic (or better opportunistic) behaviour.

Never mind my last comment, I actually reverted to the onTransactionIdle in doBatchPush to compare the results which showed the expected behaviour of jobs being inserted and executed but as soon as I switch to the proposed AutoCommitUpdate handler, jobs just vanish.

Sat, Jun 3, 2:26 PM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 updated the task description for T154438: Special:MovePage throws MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush, JobQueueDB::doBatchPush).
Sat, Jun 3, 10:51 AM · Patch-For-Review, MediaWiki-JobQueue, MW-1.29-release, MediaWiki-Database
Seb35 updated the task description for T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted.
Sat, Jun 3, 10:50 AM · MW-1.30-release-notes (WMF-deploy-2017-06-06_(1.30.0-wmf.4)), MW-1.28-release, Wikimedia-log-errors, Performance-Team, MW-1.27-release, MW-1.29-release, MediaWiki-JobQueue
Seb35 updated the task description for T165714: BagOStuff::trackDuplicateKeys causes a "MWCallableUpdate::doUpdate: transaction round ..." during JobRunner::executeJob.
Sat, Jun 3, 10:50 AM · MW-1.29-release, Patch-For-Review, MediaWiki-JobQueue, Performance-Team, MediaWiki-Database
Seb35 updated the task description for T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".
Sat, Jun 3, 10:49 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".
  1. Just to be sure: you have both the gerrit patches https://gerrit.wikimedia.org/r/#/c/356120/ (now in master, REL1_29 and REL1_28 branches) and https://gerrit.wikimedia.org/r/#/c/356619/ ? Un-pushed lazy jobs are more specifically solved by https://gerrit.wikimedia.org/r/#/c/356120/ (T100085).
  2. What is your value of $wgJobRunRate ?
  3. How can you be sure they are never inserted in the job queue? To test this sort of things, I tend to set $wgJobRunRate to 0 (so that Web does not execute any jobs), wait at least 30 seconds, and run php maintenance/showJobs.php --group (or --list). The 30 seconds are mandatory because JobQueueDB has a cache of 30 seconds (JobQueueDB::CACHE_TTL_SHORT) -- sometimes I edit this constant to (e.g.) 3 to reduce the delays.
Sat, Jun 3, 10:01 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T119330: Templates with parameters in the Index: namespace are dismissed when opening in editing.

If I understand correctly the deployments, the patch https://gerrit.wikimedia.org/r/#/c/328543/ is now live on Wikisource. However I just tested and it does not work: put the following wikitext in the 'Sommaire' of an index page, preview, and you see everything after the "\n|" (included) is removed.

{{Table
| page = {{pli|5}}
| indentation=-1
| titre = I. — Les temps.
}}
Sat, Jun 3, 9:44 AM · Patch-For-Review, ProofreadPage
Seb35 added a comment to T163640: ConfiguredReadOnlyMode has a bad config during testing.

If someone else experience this issue, you must use PHPUnit ≥ 6.0 to solve it.

Sat, Jun 3, 8:45 AM · MediaWiki-Unit-tests

Fri, Jun 2

Seb35 added a comment to T165714: BagOStuff::trackDuplicateKeys causes a "MWCallableUpdate::doUpdate: transaction round ..." during JobRunner::executeJob.

Backported to 1.28, which is very similar to 1.29 in this area -- I was able to reproduce the same behaviour with Translate.

Fri, Jun 2, 7:14 PM · MW-1.29-release, Patch-For-Review, MediaWiki-JobQueue, Performance-Team, MediaWiki-Database
Seb35 added a comment to T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted.

Backported to 1.28, which is very similar to 1.29 in this area -- I was able to reproduce the same behaviour with Translate.

Fri, Jun 2, 7:11 PM · MW-1.30-release-notes (WMF-deploy-2017-06-06_(1.30.0-wmf.4)), MW-1.28-release, Wikimedia-log-errors, Performance-Team, MW-1.27-release, MW-1.29-release, MediaWiki-JobQueue
Seb35 added a watcher for MW-1.29-release: Seb35.
Fri, Jun 2, 5:35 PM
Seb35 added a comment to T166738: Error "Class 'MWTimestamp' not found" when upgrading to MW 1.29.0-rc.0.

I tried with the steps and was not able to reproduce the issue. MediaWiki from REL1_28 (664b1b4) to version 1.29.0-rc.0 (c749bf6) with the specific composer.local.json.

Fri, Jun 2, 4:35 PM · MW-1.29-release, MediaWiki-General-or-Unknown
Seb35 added a comment to T166867: DBUnexpectedError from line 2877 of Database.php: MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)..

Yes, it’s probably the same as T154425. I cannot be absolutely sure since it is a different action (not delete, restore, or move), so it will be better to check once T154425 will be fixed, but there is a high probability it will be fixed also.

Fri, Jun 2, 12:27 PM · MediaWiki-Database, MediaWiki-JobQueue, MW-1.29-release
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

@Choralia the "PHP Deprecated" is probably unrelated to this specific bug, but possibly comes from a specific job from an extension. And it’s very subtle, but this specific bug is related to a specific job type (called deferred updates) which are not executed but deferred updates are not managed by the job queue, the bug about jobs remaining in the job queue is T165714, which is now fixed in the master version of MediaWiki. If you want to test the patch of the other bug, it should be with the master version (1.30.0-alpha) and it should be included also in 1.29.0 (probably in 1.29.0-rc.1).

Fri, Jun 2, 9:13 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted.

Cherry-picked to REL1_29. I guess it should be backported to REL1_27 and REL1_28, but I’m not sure. Will check later, except if someone is quicker.

Fri, Jun 2, 8:50 AM · MW-1.30-release-notes (WMF-deploy-2017-06-06_(1.30.0-wmf.4)), MW-1.28-release, Wikimedia-log-errors, Performance-Team, MW-1.27-release, MW-1.29-release, MediaWiki-JobQueue
Seb35 added a comment to T165714: BagOStuff::trackDuplicateKeys causes a "MWCallableUpdate::doUpdate: transaction round ..." during JobRunner::executeJob.

Cherry-picked to REL1_29. I guess it should be backported to REL1_27 and REL1_28, but I’m not sure. Will check later, except if someone is quicker.

Fri, Jun 2, 8:50 AM · MW-1.29-release, Patch-For-Review, MediaWiki-JobQueue, Performance-Team, MediaWiki-Database
Seb35 added a comment to T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted.

@ all: should be fixed in standard conditions for temperature and pressure in master version of MediaWiki. Could you test/verify if you still see this error? – I’m a bit afraid since Translatewiki has no Web-executed jobs, so no sure the patch will fix all cases.

Fri, Jun 2, 8:20 AM · MW-1.30-release-notes (WMF-deploy-2017-06-06_(1.30.0-wmf.4)), MW-1.28-release, Wikimedia-log-errors, Performance-Team, MW-1.27-release, MW-1.29-release, MediaWiki-JobQueue
Seb35 added a comment to T165714: BagOStuff::trackDuplicateKeys causes a "MWCallableUpdate::doUpdate: transaction round ..." during JobRunner::executeJob.

@mwjames Can you test with master version of MediaWiki? It should be fixed – Be warn: it does not fix (for now) the similar message from T154425.

Fri, Jun 2, 8:15 AM · MW-1.29-release, Patch-For-Review, MediaWiki-JobQueue, Performance-Team, MediaWiki-Database

Thu, Jun 1

Seb35 claimed T157679: Exception thrown with an uncommited database transaction: MWCallableUpdate::doUpdate: Flush failed on server(s).
Thu, Jun 1, 4:39 PM · MW-1.29-release-notes, MW-1.28-release-notes, MW-1.30-release-notes, Patch-For-Review, MediaWiki-Database
Seb35 claimed T154438: Special:MovePage throws MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush, JobQueueDB::doBatchPush).
Thu, Jun 1, 4:08 PM · Patch-For-Review, MediaWiki-JobQueue, MW-1.29-release, MediaWiki-Database
Seb35 claimed T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".
Thu, Jun 1, 4:08 PM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

Well, I’m quite confident in my understanding of this issue. If I’m correct, it happens with some deferred updates, namely EnqueueableDataUpdate – which can be converted to jobs – and it happens with the action "delete", "restore", and "move" because LinksDeletionUpdate and LinksUpdate implement EnqueueableDataUpdate. An other necessary condition is that another deferred updates, *not* an EnqueueableDataUpdate is exectuted at the same time.

Thu, Jun 1, 2:05 PM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database
Seb35 added a comment to T154439: AutoCommitUpdate::doUpdate (Title->invalidateCache) causes Exception thrown with an uncommited database transaction.

In fact I do no more think it is the same as T154438 and T154425 but instead a true duplicate of T165714: I have SMW installed on my test wiki and it does not trigger exceptions (I have the patch https://gerrit.wikimedia.org/r/#/c/356120/ applied) -- I didn’t notice these exception before applying the patch but perhaps I missed these. A difference with the two other tasks is: the two others call DeferredUpdates::doUpdates directly from MediaWiki::restInPeace, but this task call DeferredUpdates::doUpdates after a call from DeferredUpdates::addUpdate from a job, so I’m pretty sure this will be solved with the gerrit patch.

Thu, Jun 1, 12:03 PM · MediaWiki-Database
Seb35 created P5525 Exception in Gerrit#356120/4.
Thu, Jun 1, 3:18 AM
Seb35 created P5524 Exception in Gerrit#356120/4 if no condition on CLI mode.
Thu, Jun 1, 3:12 AM
Seb35 added a comment to T154439: AutoCommitUpdate::doUpdate (Title->invalidateCache) causes Exception thrown with an uncommited database transaction.

Very similar to T154438 and T154425 , should be checked after resolution of the other bug, or closed as a duplicate.

Thu, Jun 1, 12:57 AM · MediaWiki-Database
Seb35 added a comment to T71614: The mysql extension is dead, long live PDO.

Duplicate of T120333?

Thu, Jun 1, 12:44 AM · MediaWiki-Database
Seb35 added a comment to T97693: Expectation (masterConns <= 0) by MediaWiki::main not met when using LCStoreDB .

Perhaps a duplicate of T154424.

Thu, Jun 1, 12:40 AM · MediaWiki-Debug-Logger, MediaWiki-Database

Wed, May 31

Seb35 added a comment to T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted.

And TWN had previously $wgJobRunRate > 0 at the time the error message occured? (if you can remember, could it be correlated?)

Wed, May 31, 10:21 AM · MW-1.30-release-notes (WMF-deploy-2017-06-06_(1.30.0-wmf.4)), MW-1.28-release, Wikimedia-log-errors, Performance-Team, MW-1.27-release, MW-1.29-release, MediaWiki-JobQueue
Seb35 added a comment to T100085: PHP Notice: JobQueueGroup::__destruct: 1 buffered job(s) never inserted.

I’m not sure the root cause of this bug is the same for everybody reporting here, because there two very different cases: $wgJobRunRate = 0 and $wgJobRunRate > 0, and given the situation changed with the Gerrit change 212485.

Wed, May 31, 9:10 AM · MW-1.30-release-notes (WMF-deploy-2017-06-06_(1.30.0-wmf.4)), MW-1.28-release, Wikimedia-log-errors, Performance-Team, MW-1.27-release, MW-1.29-release, MediaWiki-JobQueue

Tue, May 30

Seb35 added a comment to T154425: Delete action throws a DBUnexpectedError with "MWCallableUpdate::doUpdate: Cannot flush snapshot because writes are pending (JobQueueDB::doBatchPush)".

I dived into this/these issues after issues with Translate.

Tue, May 30, 8:24 AM · MW-1.28-release-notes, Patch-For-Review, MW-1.30-release-notes, Performance-Team, MW-1.29-release, MediaWiki-Database

Mon, May 29

Seb35 added a comment to T165714: BagOStuff::trackDuplicateKeys causes a "MWCallableUpdate::doUpdate: transaction round ..." during JobRunner::executeJob.

I experienced this bug this Translate jobs, here is a proposed fix. I don’t really have the time now to explain more my findings, but I will take time later.

Mon, May 29, 11:26 PM · MW-1.29-release, Patch-For-Review, MediaWiki-JobQueue, Performance-Team, MediaWiki-Database
Seb35 added a comment to T165714: BagOStuff::trackDuplicateKeys causes a "MWCallableUpdate::doUpdate: transaction round ..." during JobRunner::executeJob.

I experienced this bug this Translate jobs, here is a proposed fix. I don’t really have the time now to explain more my findings, but I will take time later.

Mon, May 29, 11:26 PM · MW-1.29-release, Patch-For-Review, MediaWiki-JobQueue, Performance-Team, MediaWiki-Database

Fri, May 26

Seb35 added a comment to T149454: 1.28-alpha / Error: 42P01 ERROR: table "unittest_user_groups" does not exist.

Possibly this issue is linked to T155147, or at least the underlying code: initialisation of the database in unit tests is managed by two properties, one static and one non-static, so possibly it creates a disorder in the initialisation state of the database.

Fri, May 26, 10:07 PM · Release-Engineering-Team (Kanban), MW-1.29-release-notes, MW-1.28-release-notes, MW-1.30-release-notes, Patch-For-Review, MW-1.29-release, PostgreSQL, Regression, MediaWiki-Unit-tests, MediaWiki-Database
Seb35 added a comment to T162686: Reorganise tests in MediaWikiFarm to focus on unit tests.

The recent change (-; 6e59c1063fc3 to isolate the configuration in a specific class is one step in this direction (the so-called divide-and-test strategy :-).

Fri, May 26, 8:31 AM · MediaWiki-extensions-MediaWikiFarm

Thu, May 25

Seb35 committed rEMWFd58c70369794: Refactoring: extraction of configuration compilation (authored by Seb35).
Refactoring: extraction of configuration compilation
Thu, May 25, 6:10 PM
Seb35 committed rEMWFbbf2e7d0cca8: Refactoring: extraction of configuration compilation (authored by Seb35).
Refactoring: extraction of configuration compilation
Thu, May 25, 6:02 PM

May 22 2017

Seb35 added a comment to T149579: Array to string conversion from Flow when using scripts against officewiki.

This bug also occurs in MediaWiki 1.28 + Flow branch REL1_28, is it possible to backport also to REL1_28? I prepare the Gerrit patch.

May 22 2017, 10:05 AM · MW-1.29-release (WMF-deploy-2016-11-15_(1.29.0-wmf.3)), Collaboration-Team-Triage (Collab-Team-Q2-Oct-Dec-2016), Patch-For-Review, Flow
Seb35 added a comment to T166017: Disable Flagged Revisions on sq.wikipedia.

(for information) Active users belonging to the "Reviewers" group : https://sq.wikipedia.org/wiki/Speciale:PërdoruesitAktivë?groups[]=reviewer&wpFormIdentifier=specialactiveusers&uselang=en

May 22 2017, 12:59 AM · Community-consensus-needed, Wikimedia-Site-requests

May 21 2017

Seb35 added a comment to T110465: Update SecureSessions to use AuthManager.

I finished the part for Authentication (CountryBinding and Tor), see the gerrit patch 352708.

May 21 2017, 1:29 PM · Patch-For-Review, MediaWiki-extensions-SecureSessions, MediaWiki-Authentication-and-authorization
Seb35 added a comment to P5472 Indefinite call loop between SecureSessions extension and SessionManager.

The lines correspond to MediaWiki 1.30-alpha Git ffcb34b.

May 21 2017, 1:29 PM · MediaWiki-extensions-SecureSessions
Seb35 created P5472 Indefinite call loop between SecureSessions extension and SessionManager.
May 21 2017, 1:26 PM · MediaWiki-extensions-SecureSessions

May 20 2017

Seb35 removed a project from T70638: phpunit: SKIPPED: djvu binaries do not exist or are not executable: ProofreadPage.

Re-executed on a modern Vagrant, and most of the tests are executed, only some remaining tests are skipped because $wgDjvuToXML is not defined. I propose a patch to define it in Vagrant alongside the others.

May 20 2017, 5:35 PM · MediaWiki-Vagrant

May 19 2017

Seb35 added a comment to T142287: Localisation of ProofreadPage namespaces for Tamil (ta) wikisource.

Ok, I tested and, given the pages beginning with "ஆசிரியர்:" are in the main namespace (0) they will disapeared if this namespace is introduced. It seems the maintenance script namespaceDupes.php can do the job to transfer the pages to the right namespace. So probably this should be synchronised with the operations team.

May 19 2017, 8:50 PM · Tamil-Sites, MW-1.29-release (WMF-deploy-2017-01-17_(1.29.0-wmf.8)), Patch-For-Review, ProofreadPage, I18n
Seb35 claimed T142287: Localisation of ProofreadPage namespaces for Tamil (ta) wikisource.
May 19 2017, 4:53 PM · Tamil-Sites, MW-1.29-release (WMF-deploy-2017-01-17_(1.29.0-wmf.8)), Patch-For-Review, ProofreadPage, I18n
Seb35 added a comment to T119330: Templates with parameters in the Index: namespace are dismissed when opening in editing.

The change was integrated in the more general Content Model 'Index' in https://gerrit.wikimedia.org/r/#/c/328543/ (and I tested it specifically for this bug). Hence it is fixed, and should be live on Wikisource when it will be deployed.

May 19 2017, 3:11 PM · Patch-For-Review, ProofreadPage

May 8 2017

Seb35 added a comment to T110465: Update SecureSessions to use AuthManager.

I try to implement this as an exercice to better understand AuthManager. The initial task description is quite useful to get the big picture, thanks. I wrote the page Internals to help understand the current state of the extension. Given this extension has two independant mechanisms, this task can be solved part by part.

May 8 2017, 5:26 PM · Patch-For-Review, MediaWiki-extensions-SecureSessions, MediaWiki-Authentication-and-authorization

May 7 2017

Seb35 edited projects for T134129: SecurePoll defines a new special page, but it doesn't get listed on Special:SpecialPages, added: MediaWiki-extensions-SecurePoll; removed MediaWiki-extensions-SecureSessions.
May 7 2017, 5:24 PM · MediaWiki-extensions-SecurePoll

May 1 2017

Seb35 created T164200: Support $wgDBprefix in CentralAuth.
May 1 2017, 3:48 PM · MediaWiki-extensions-CentralAuth

Apr 24 2017

Seb35 added a comment to T163640: ConfiguredReadOnlyMode has a bad config during testing.

The pull request fixing this was merged by Sebastian Bergmann some hours ago.

Apr 24 2017, 8:58 AM · MediaWiki-Unit-tests

Apr 23 2017

Seb35 committed rEMWF3ed297fca875: Typo (authored by Seb35).
Typo
Apr 23 2017, 6:38 PM
Seb35 committed rEMWF45dc0d4a30e9: Improve cache consistency (authored by Seb35).
Improve cache consistency
Apr 23 2017, 6:27 PM
Seb35 added a comment to T163640: ConfiguredReadOnlyMode has a bad config during testing.

Reported to global-state as issue #10 and associated pull request #11.

Apr 23 2017, 6:24 PM · MediaWiki-Unit-tests
Seb35 closed T163640: ConfiguredReadOnlyMode has a bad config during testing as Invalid.

Well. I investigated further and found. Imho it is an issue with PHPUnit, and more precisely the global-state subprogram, consequently I close this task as invalid.

Apr 23 2017, 3:11 PM · MediaWiki-Unit-tests
Seb35 added a comment to T163640: ConfiguredReadOnlyMode has a bad config during testing.

I tried to investigate, but I don’t understand well the MediaWiki services. Possibly it is related to testing infrastructure specifically.

Apr 23 2017, 11:35 AM · MediaWiki-Unit-tests
Seb35 updated subscribers of T163640: ConfiguredReadOnlyMode has a bad config during testing.

@tstarling This issue appears when you introduced ConfiguredReadOnlyMode in 820f4696.

Apr 23 2017, 11:25 AM · MediaWiki-Unit-tests
Seb35 created T163640: ConfiguredReadOnlyMode has a bad config during testing.
Apr 23 2017, 11:24 AM · MediaWiki-Unit-tests
Seb35 created P5315 Extension TestGlobals.
Apr 23 2017, 11:12 AM
Seb35 committed rEMWF16842a38ddf0: Improve cache consistency (authored by Seb35).
Improve cache consistency
Apr 23 2017, 7:50 AM

Apr 12 2017

Seb35 added a comment to T162686: Reorganise tests in MediaWikiFarm to focus on unit tests.

I wrote https://www.mediawiki.org/wiki/Extension:MediaWikiFarm/Internals#MediaWikiFarm_modes to help reorganizing the tests. See also http://wiki.seb35.fr/MediaWikiFarm_static_analysis (a bit outdated but still useful).

Apr 12 2017, 8:12 AM · MediaWiki-extensions-MediaWikiFarm