Discovered in T388538#10851450.
I suspect that what happened is that nupwiki was created (T390384) while codfw was completely depooled and its content and general indices were never created.
Then subsequent runs of the UpdateSuggesterIndex failed in a weird way leaving stale empty completion indices.
⏳ Starting extensions/CirrusSearch/maintenance/UpdateSuggesterIndex on Kubernetes as job mw-script.eqiad.8c03uneg ...
⏳ Waiting for the container to start...
🚀 Job is running.
📜 Streaming logs:
Scanning available plugins...
analysis-hebrew, analysis-icu, analysis-nori, analysis-smartcn, analysis-stempel
analysis-sudachi, analysis-ukrainian, cirrus-highlighter, ltr, opensearch-analysis-stconvert
opensearch-extra, opensearch-extra-analysis-esperanto, opensearch-extra-analysis-homoglyph, opensearch-extra-analysis-khmer, opensearch-extra-analysis-serbian
opensearch-extra-analysis-slovak, opensearch-extra-analysis-textify, opensearch-extra-analysis-turkish, opensearch-extra-analysis-ukrainian, opensearch-knn
repository-s3
Picking analyzer...default
Fetching server version...opensearch 1.3.20...ok
Inferring index identifier...nupwiki_titlesuggest_first
Index does not exist yet cannot recycle.
Inferring index identifier...nupwiki_titlesuggest_first
Setting index identifier...nupwiki_titlesuggest_1747990462
2025-05-23 09:54:23 Waiting for the index to go green...
Green!
Elasticsearch failed in an unexpected way. This is always a bug in CirrusSearch.
Error type: Elastica\Exception\ResponseException
Message: index_not_found_exception: no such index [nupwiki_content]
Trace:
2025-05-23 10:04:31
Unexpected Elasticsearch failure.
#0 /srv/mediawiki/php-1.45.0-wmf.2/vendor/ruflin/elastica/src/Request.php(183): Elastica\Transport\Http->exec(Object(Elastica\Request), Array)
#1 /srv/mediawiki/php-1.45.0-wmf.2/vendor/ruflin/elastica/src/Client.php(545): Elastica\Request->send()
#2 /srv/mediawiki/php-1.45.0-wmf.2/vendor/ruflin/elastica/src/Search.php(352): Elastica\Client->request('nupwiki_content...', 'POST', Array, Array)
#3 /srv/mediawiki/php-1.45.0-wmf.2/extensions/CirrusSearch/includes/Elastica/SearchAfter.php(96): Elastica\Search->search()
#4 /srv/mediawiki/php-1.45.0-wmf.2/extensions/CirrusSearch/includes/Elastica/SearchAfter.php(72): CirrusSearch\Elastica\SearchAfter->runSearch()
#5 /srv/mediawiki/php-1.45.0-wmf.2/extensions/CirrusSearch/includes/Elastica/SearchAfter.php(109): CirrusSearch\Elastica\SearchAfter->next()
#6 /srv/mediawiki/php-1.45.0-wmf.2/extensions/CirrusSearch/maintenance/UpdateSuggesterIndex.php(553): CirrusSearch\Elastica\SearchAfter->rewind()
#7 /srv/mediawiki/php-1.45.0-wmf.2/extensions/CirrusSearch/maintenance/UpdateSuggesterIndex.php(289): CirrusSearch\Maintenance\UpdateSuggesterIndex->indexData()
#8 /srv/mediawiki/php-1.45.0-wmf.2/extensions/CirrusSearch/maintenance/UpdateSuggesterIndex.php(218): CirrusSearch\Maintenance\UpdateSuggesterIndex->rebuild()
#9 /srv/mediawiki/php-1.45.0-wmf.2/maintenance/includes/MaintenanceRunner.php(691): CirrusSearch\Maintenance\UpdateSuggesterIndex->execute()
#10 /srv/mediawiki/php-1.45.0-wmf.2/maintenance/run.php(51): MediaWiki\Maintenance\MaintenanceRunner->run()
#11 /srv/mediawiki/multiversion/MWScript.php(221): require_once('/srv/mediawiki/...')
#12 {main}AC:
- the completion index should fail early & not be created if the main indices are missing