CirrusSearch
Elasticsearch-powered search for MediaWiki
|
Checks if a WikiPage's representation in search index is sane. More...
Public Member Functions | |
__construct (SearchConfig $config, Connection $connection, Remediator $remediator, Searcher $searcher, StatsFactory $statsFactory, $logSane, $fastRedirectCheck, ?ArrayObject $pageCache=null, ?callable $isOldFn=null) | |
Build the checker. | |
check (array $pageIds) | |
Check if a title is insane. | |
Static Public Member Functions | |
static | makeIsOldClosure ( $loopId, $numCycles) |
Decide if a document should be reindexed based on time since last reindex. | |
Checks if a WikiPage's representation in search index is sane.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. http://www.gnu.org/copyleft/gpl.html
CirrusSearch\Sanity\Checker::__construct | ( | SearchConfig | $config, |
Connection | $connection, | ||
Remediator | $remediator, | ||
Searcher | $searcher, | ||
StatsFactory | $statsFactory, | ||
$logSane, | |||
$fastRedirectCheck, | |||
?ArrayObject | $pageCache = null, | ||
?callable | $isOldFn = null ) |
Build the checker.
SearchConfig | $config | |
Connection | $connection | |
Remediator | $remediator | the remediator to which to send titles that are insane |
Searcher | $searcher | searcher to use for fetches |
StatsFactory | $statsFactory | to use for recording metrics |
bool | $logSane | should we log sane ids |
bool | $fastRedirectCheck | fast but inconsistent redirect check |
ArrayObject | null | $pageCache | cache for WikiPage loaded from db |
callable | null | $isOldFn | Accepts a WikiPage argument and returns boolean true if the page should be reindexed based on time since last reindex. |
CirrusSearch\Sanity\Checker::check | ( | array | $pageIds | ) |
Check if a title is insane.
int[] | $pageIds | page to check |
CheckerException |
|
static |
Decide if a document should be reindexed based on time since last reindex.
Consider a page as old every $numCycles times the saneitizer loops over the same document. This ensures documents have been reindexed within the last $numCycles * actual_loop_duration
(note that the configured duration is min_loop_duration, but in practice configuration ensures min and actual are typically the same).
int | $loopId | The number of times the checker has looped over the document set. |
int | $numCycles | The number of loops after which a document is considered old. |