Topic on Extension talk:CirrusSearch

Class 'Elastica\Client' not found

4
Summary by Lemonlvor

Had to run composer on Elastica directory even though I didn't install from git

Lemonlvor (talkcontribs)

Here's what I'm running:

MediaWiki 1.33.0

PHP 7.2.19-0ubuntu0.18.04.2 (apache2handler)

MySQL 5.7.27-0ubuntu0.18.04.1


I have followed the steps on the extension page:

- Installed Elasticsearch 6.5.4 per the instructions for MediaWiki 1.33.0.

- Installed Elastica, shows up on Special:Version

- Installed CirrusSearch, causes Special:Version to not load after inserting require_once "$IP/extensions/CirrusSearch/CirrusSearch.php"; in LocalSettings.php


The following error is displayed on Special:Version:

[6615ca91ab54427a72fcf3c5] 2019-08-20 14:52:28: Fatal exception of type "Error"


When I attempt to run the first step of the CirrusSearch instructions, this happens:

hincb@cbwiki2:/var/www/html/mediawiki$ php extensions/CirrusSearch/maintenance/updateSearchIndexConfig.php

indexing namespaces...

[c8fe2a117d6f3ed5dab3e395] [no req]   Error from line 90 of /var/www/html/mediawiki/extensions/Elastica/includes/ElasticaConnection.php: Class 'Elastica\Client' not found

Backtrace:

#0 /var/www/html/mediawiki/extensions/Elastica/includes/ElasticaConnection.php(62): ElasticaConnection->getClient()

#1 /var/www/html/mediawiki/extensions/CirrusSearch/includes/Connection.php(133): ElasticaConnection->setConnectTimeout(integer)

#2 /var/www/html/mediawiki/extensions/CirrusSearch/includes/Connection.php(113): CirrusSearch\Connection->__construct(CirrusSearch\SearchConfig, string)

#3 /var/www/html/mediawiki/extensions/CirrusSearch/includes/Maintenance/Maintenance.php(115): CirrusSearch\Connection::getPool(CirrusSearch\SearchConfig, string)

#4 /var/www/html/mediawiki/extensions/CirrusSearch/includes/Maintenance/Maintenance.php(224): CirrusSearch\Maintenance\Maintenance->getConnection()

#5 /var/www/html/mediawiki/extensions/CirrusSearch/maintenance/indexNamespaces.php(35): CirrusSearch\Maintenance\Maintenance->maybeCreateMetastore()

#6 /var/www/html/mediawiki/extensions/CirrusSearch/maintenance/updateSearchIndexConfig.php(54): CirrusSearch\Maintenance\IndexNamespaces->execute()

#7 /var/www/html/mediawiki/maintenance/doMaintenance.php(96): CirrusSearch\Maintenance\UpdateSearchIndexConfig->execute()

#8 /var/www/html/mediawiki/extensions/CirrusSearch/maintenance/updateSearchIndexConfig.php(70): require_once(string)

#9 {main}


Here's verification of my ElasticSearch version:

hincb@cbwiki2:/var/www/html/mediawiki$ curl -X GET "localhost:9200/?pretty"

{

  "name" : "Og7QKNt",

  "cluster_name" : "elasticsearch",

  "cluster_uuid" : "geDUNZn5Tk63F6wjWs8Smg",

  "version" : {

    "number" : "6.5.4",

    "build_flavor" : "default",

    "build_type" : "deb",

    "build_hash" : "d2ef93d",

    "build_date" : "2018-12-17T21:17:40.758843Z",

    "build_snapshot" : false,

    "lucene_version" : "7.5.0",

    "minimum_wire_compatibility_version" : "5.6.0",

    "minimum_index_compatibility_version" : "5.0.0"

  },

  "tagline" : "You Know, for Search"

}


Any ideas why this isn't working? I appear to have the correct versions of everything installed. I've previously configured ElasticSearch 5.4.3 on MediaWiki 1.30.0 and didn't have any issues at all so I generally know what I'm doing until I start getting errors like this. Thanks.

Ciencia Al Poder (talkcontribs)

Maybe you need to run composer for those dependencies to install correctly, even if installation instructions tell that's only necessary when installing from git

Lemonlvor (talkcontribs)

I'll try it.