Page MenuHomePhabricator

Unbreak elastic search tests
Closed, ResolvedPublic

Description

Sometime this week elastic search tests started failing, seems like something to do with upgrading ruflin.

https://github.com/wmde/wikibase-release-pipeline/pull/78/checks?check_run_id=2020942809

[0-0] executing: docker exec  test_wikibase_1 php extensions/CirrusSearch/maintenance/UpdateSearchIndexConfig.php --startOver
[0-0] Error: Command failed: docker exec  test_wikibase_1 php extensions/CirrusSearch/maintenance/UpdateSearchIndexConfig.php --startOver
[3e8bfb9228c410ca976223cf] [no req]   Error from line 451 of /var/www/html/vendor/ruflin/elastica/lib/Elastica/Index.php: Class 'Elasticsearch\Endpoints\Indices\Aliases\Update' not found
Backtrace:
#0 /var/www/html/extensions/CirrusSearch/includes/Maintenance/Validators/SpecificAliasValidator.php(137): Elastica\Index->addAlias(string, boolean)
#1 /var/www/html/extensions/CirrusSearch/includes/Maintenance/Validators/SpecificAliasValidator.php(79): CirrusSearch\Maintenance\Validators\SpecificAliasValidator->updateFreeIndices(array)
#2 /var/www/html/extensions/CirrusSearch/includes/Maintenance/Validators/IndexAliasValidator.php(98): CirrusSearch\Maintenance\Validators\SpecificAliasValidator->updateIndices(array, array)
#3 /var/www/html/extensions/CirrusSearch/maintenance/UpdateOneSearchIndexConfig.php(458): CirrusSearch\Maintenance\Validators\IndexAliasValidator->validate()
#4 /var/www/html/extensions/CirrusSearch/maintenance/UpdateOneSearchIndexConfig.php(411): CirrusSearch\Maintenance\UpdateOneSearchIndexConfig->validateSpecificAlias()
#5 /var/www/html/extensions/CirrusSearch/maintenance/UpdateOneSearchIndexConfig.php(269): CirrusSearch\Maintenance\UpdateOneSearchIndexConfig->validateAlias()
#6 /var/www/html/extensions/CirrusSearch/maintenance/UpdateSearchIndexConfig.php(61): CirrusSearch\Maintenance\UpdateOneSearchIndexConfig->execute()
#7 /var/www/html/maintenance/doMaintenance.php(107): CirrusSearch\Maintenance\UpdateSearchIndexConfig->execute()
#8 /var/www/html/extensions/CirrusSearch/maintenance/UpdateSearchIndexConfig.php(70): require_once(string)
#9 {main}

    at ChildProcess.exithandler (child_process.js:308:12)
    at ChildProcess.emit (events.js:314:20)
    at ChildProcess.EventEmitter.emit (domain.js:483:12)
    at maybeClose (internal/child_process.js:1022:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:287:5) {
  killed: false,
  code: 255,
  signal: null,
  cmd: 'docker exec  test_wikibase_1 php extensions/CirrusSearch/maintenance/UpdateSearchIndexConfig.php --startOver'
}
[0-0] Assertion failed
Assertion failed

Event Timeline

Seems like that did not solve the original problem.

composer installing on REL1_35 of cirrussearch gives us the wrong elasticsearch/elasticsearch version.

Seems to only happen using php 7.3

image.png (1,904×711 px, 920 KB)

Change 668693 had a related patch set uploaded (by Tobias Andersson; owner: Tobias Andersson):
[mediawiki/extensions/CirrusSearch@REL1_35] Set dependency

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

Change 668691 had a related patch set uploaded (by Tobias Andersson; owner: Tobias Andersson):
[mediawiki/extensions/Elastica@REL1_35] Set elasticsearch/elasticsearch dependency

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

I would also suggest reporting this Upstream at https://github.com/ruflin/Elastica/issues

Because their constraints and apparently aren't compatible with what their upstream have done...

Change 669796 had a related patch set uploaded (by Reedy; owner: Tobias Andersson):
[mediawiki/extensions/Elastica@master] Explicitly set elasticsearch/elasticsearch dependency

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

Change 668691 merged by jenkins-bot:
[mediawiki/extensions/Elastica@REL1_35] Explicitly set elasticsearch/elasticsearch dependency

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

Change 668379 had a related patch set uploaded (by Reedy; owner: Tobias Andersson):
[mediawiki/extensions/CirrusSearch@master] Add test for SpecificAliasValidator

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

Change 669796 merged by jenkins-bot:
[mediawiki/extensions/Elastica@master] Explicitly set elasticsearch/elasticsearch dependency

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

Change 668379 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@master] Add test for SpecificAliasValidator

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

Change 668693 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@REL1_35] Add test for SpecificAliasValidator

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