Page MenuHomePhabricator

Catchable fatal error: Argument 1 passed to CirrusSearch\DataSender::reportUpdateMetrics() must be an instance of Elastica\Bulk\ResponseSet, null given
Closed, ResolvedPublic

Description

I am getting lot of this error from the JobQueue:

2017-11-12 10:48:41 cirrusSearchElasticaWrite Nimitys:umpirauhanen method=sendData arguments=["general",[{}]] cluster=default createdAt=1510296812 errorCount=2 retryCount=0 requestId=WgMn-TXYt-QiQrUqZmUcyAAAAAE (id=94851619,timestamp=20171112104815) STARTING
2017-11-12 10:48:42 cirrusSearchElasticaWrite Nimitys:umpirauhanen method=sendData arguments=["general",[{}]] cluster=default createdAt=1510296812 errorCount=2 retryCount=0 requestId=WgMn-TXYt-QiQrUqZmUcyAAAAAE (id=94851619,timestamp=20171112104815) t=687 good
2017-11-12 10:48:42 cirrusSearchElasticaWrite Nimitys:tuuliviirin_varsi method=sendData arguments=["general",[{}]] cluster=default createdAt=1510323872 errorCount=1 retryCount=0 requestId=WgMn-TXYt-QiQrUqZmUcyAAAAAE (id=94615369,timestamp=20171110142432) STARTING
Catchable fatal error: Argument 1 passed to CirrusSearch\DataSender::reportUpdateMetrics() must be an instance of Elastica\Bulk\ResponseSet, null given in /srv/mediawiki/tags/2017-11-12_10:40:00/extensions/CirrusSearch/includes/DataSender.php on line 264
Warning: Destructor threw an object exception: exception 'Wikimedia\Rdbms\DBTransactionError' with message 'Wikimedia\Rdbms\LBFactory::shutdown: transaction round 'CirrusSearch\Job\ElasticaWrite::run' still running.' in /srv/mediawiki/tags/2017-11-12_10:40:00/includes/libs/rdbms/lbfactory/LBFactory.php:215
Stack trace:
#0 /srv/mediawiki/tags/2017-11-12_10:40:00/includes/libs/rdbms/lbfactory/LBFactory.php(143): Wikimedia\Rdbms\LBFactory->commitMasterChanges()
#1 /srv/mediawiki/tags/2017-11-12_10:40:00/includes/libs/rdbms/lbfactory/LBFactory.php(129): Wikimedia\Rdbms\LBFactory->shutdown()
#2 /srv/mediawiki/tags/2017-11-12_10:40:00/includes/libs/rdbms/lbfactory/LBFactory.php(581): Wikimedia\Rdbms\LBFactory->destroy()
#3 (): Wikimedia\Rdbms\LBFactory->__destruct()
#4 {main}

Versions:

  • MediaWiki 1.31.0-alpha
  • HHVM 3.15.0 (srv)
  • MariaDB 5.5.52-MariaDB
  • ICU 50.1.2
  • Elasticsearch 5.5.1

MediaWiki, Elastica and CirrusSearch from git master.

Is this a configuration error, version mismatch or a bug?

Event Timeline

Restricted Application added projects: Discovery, Discovery-Search. · View Herald TranscriptNov 12 2017, 10:59 AM
Restricted Application added a subscriber: Aklapper. · View Herald Transcript

It's a bug but the only explanation I have to explain why this error is frequent is that your index may have run out of date. Reading the code I understand that this error could only happen when trying to update some metadata in elasticsearch concerning a document that is not indexed.

Change 390990 had a related patch set uploaded (by DCausse; owner: DCausse):
[mediawiki/extensions/CirrusSearch@master] Don't try to report update metrics if the response is not valid

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

dcausse claimed this task.Nov 13 2017, 1:17 PM
dcausse triaged this task as Normal priority.
dcausse moved this task from needs triage to This Quarter on the Discovery-Search board.
dcausse moved this task from This Quarter to Current work on the Discovery-Search board.
dcausse moved this task from in progress to Needs review on the Discovery-Search (Current work) board.

Change 390990 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@master] Don't try to report update metrics if the response is not valid

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

Change 392001 had a related patch set uploaded (by DCausse; owner: DCausse):
[mediawiki/extensions/CirrusSearch@REL1_30] Don't try to report update metrics if the response is not valid

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

Change 392002 had a related patch set uploaded (by DCausse; owner: DCausse):
[mediawiki/extensions/CirrusSearch@REL1_29] Don't try to report update metrics if the response is not valid

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

Change 392001 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@REL1_30] Don't try to report update metrics if the response is not valid

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

debt closed this task as Resolved.Dec 1 2017, 4:49 PM

Change 392002 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@REL1_29] Don't try to report update metrics if the response is not valid

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