[MediaWiki-commits] [Gerrit] mediawiki/core[master]: Reduce contention during view-based category count refreshes

2017-04-05 Thread jenkins-bot (Code Review)
jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/346672 )

Change subject: Reduce contention during view-based category count refreshes
..


Reduce contention during view-based category count refreshes

Bug: T162121
Change-Id: I05b539922508d5e73979ccc8ea1c148b16dd13db
---
M includes/CategoryViewer.php
1 file changed, 7 insertions(+), 1 deletion(-)

Approvals:
  Krinkle: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/includes/CategoryViewer.php b/includes/CategoryViewer.php
index 31369b0..0205d70 100644
--- a/includes/CategoryViewer.php
+++ b/includes/CategoryViewer.php
@@ -742,7 +742,13 @@
$totalcnt = $rescnt;
$category = $this->cat;
DeferredUpdates::addCallableUpdate( function () use ( 
$category ) {
-   $category->refreshCounts();
+   # Avoid excess contention on the same category 
(T162121)
+   $dbw = wfGetDB( DB_MASTER );
+   $name = __METHOD__ . ':' . md5( $this->mName );
+   $scopedLock = $dbw->getScopedLockAndFlush( 
$name, __METHOD__, 1 );
+   if ( $scopedLock ) {
+   $category->refreshCounts();
+   }
} );
} else {
// Case 3: hopeless.  Don't give a total count at all.

-- 
To view, visit https://gerrit.wikimedia.org/r/346672
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I05b539922508d5e73979ccc8ea1c148b16dd13db
Gerrit-PatchSet: 2
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Aaron Schulz 
Gerrit-Reviewer: Krinkle 
Gerrit-Reviewer: jenkins-bot <>

___
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits


[MediaWiki-commits] [Gerrit] mediawiki/core[master]: Reduce contention during view-based category count refreshes

2017-04-05 Thread Aaron Schulz (Code Review)
Aaron Schulz has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/346672 )

Change subject: Reduce contention during view-based category count refreshes
..

Reduce contention during view-based category count refreshes

Bug: T162121
Change-Id: I05b539922508d5e73979ccc8ea1c148b16dd13db
---
M includes/CategoryViewer.php
1 file changed, 6 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/72/346672/1

diff --git a/includes/CategoryViewer.php b/includes/CategoryViewer.php
index 31369b0..f624f25 100644
--- a/includes/CategoryViewer.php
+++ b/includes/CategoryViewer.php
@@ -742,7 +742,12 @@
$totalcnt = $rescnt;
$category = $this->cat;
DeferredUpdates::addCallableUpdate( function () use ( 
$category ) {
-   $category->refreshCounts();
+   # Avoid excess contention on the same category 
(T162121)
+   $name = __METHOD__ . ':' . md5( $this->mName );
+   $scopedLock = wfGetDB( DB_MASTER 
)->getScopedLockAndFlush( $name );
+   if ( $scopedLock ) {
+   $category->refreshCounts();
+   }
} );
} else {
// Case 3: hopeless.  Don't give a total count at all.

-- 
To view, visit https://gerrit.wikimedia.org/r/346672
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I05b539922508d5e73979ccc8ea1c148b16dd13db
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Aaron Schulz 

___
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits