HomePhabricator

Updated mediawiki/core Project: mediawiki/extensions/Flow…

This commit no longer exists in the repository. It may have been part of a branch which was deleted.This commit has been deleted in the repository: it is no longer reachable from any branch, tag, or ref.

Description

Updated mediawiki/core Project: mediawiki/extensions/Flow a4bdad4b66a8d01b756a8fd7466cac133aca0c86

Eliminate some memory leaks affecting LQT->Flow:

  • LocalBufferedBagOStuff does not clear its in-process cache after commit, so have the importer use BufferedBagOStuff instead.

    The only downside is that it won't have reads cached in-process at all, but for the importer's usage pattern this downside seems unlikely to come up much.

    Also rename in container.php for clarity.
  • Call ManagerGroup->clear(), which clears all the ObjectManager-s, their mappers, and triggers onAfterClear.

    This requires being very careful to avoid inserting an object that is already in the database. See clearManagerGroup.
  • Change UserNameBatch to use MapCacheLRU and limit to 250 per wiki. This may not be strictly required for the importer's use case, since UserNameListener has a onAfterClear listener (which is triggered by ObjectManager->clear). However, there are other uses of UserNameBatch, and this adds an extra layer of protection.
  • Add some notes about other possible improvements that apparently wouldn't impact the importer, but might impact other code.
  • Some comment updates I noticed along the way.

Bug: T106614
Bug: T108601
Change-Id: I988dff81de9e32da1470a89cc7cc5dfc07ef82e8
(cherry picked from commit d9e250d1339afb064d9b4c92031559067ac65eaf)

Details

Provenance
Mattflaschen-WMFAuthored on
Gerrit Code Review <gerrit@wikimedia.org>Committed on Aug 11 2015, 11:13 PM
ChangeId
I988dff81de9e32da1470a89cc7cc5dfc07ef82e8

Commit No Longer Exists

This commit no longer exists in the repository.