search_api 8.x-1.9
elasticsearch_connector 8.x-5.0-alpha2

Both modules are cleanly installed not updated.

When trying to create my search_api index these are the options I selected:

Data sources: Content
Tracker: Default (only option available)
Server: Only option is the elasticsearch_connector based one I created

When I click save or save and add fields I get the following error.

The website encountered an unexpected error. Please try again later.</br></br><em class="placeholder">Drupal\search_api\SearchApiException</em>: Unknown tracker plugin with ID &#039;&#039; in <em class="placeholder">Drupal\search_api\Utility\PluginHelper-&gt;createIndexPlugin()</em> (line <em class="placeholder">81</em> of <em class="placeholder">modules/contrib/search_api/src/Utility/PluginHelper.php</em>).

Comments

realityloop created an issue. See original summary.

realityloop’s picture

It may also be relevant that the tracket field is showing two info icons but only one option?

Tracker

realityloop’s picture

StatusFileSize
new82.31 KB

Attached is the debug_backtrace output (it is html with renamed extension due to d.o upload limits)

drunken monkey’s picture

If there is only one tracker plugin, the “Tracker” option should be hidden. Apparently, you have a buggy tracker plugin definition in your system. Try looking at the return value of \Drupal::getContainer()->get('plugin.manager.search_api.tracker')->getDefinitions(); to maybe get an idea of where it's coming from.

realityloop’s picture

@drunken monkey

Spitting the result of that out on the Add index page this is what it contains:

[arguments:protected] => Array ( ) ) [description] => Drupal\Core\StringTranslation\TranslatableMarkup Object ( [translatedMarkup:protected] => [options:protected] => Array ( ) [stringTranslation:protected] => [string:protected] => Default index tracker which uses a simple database table for tracking items. [arguments:protected] => Array ( ) ) [class] => Drupal\search_api\Plugin\search_api\tracker\Basic [provider] => search_api ) )
drunken monkey’s picture

Status: Active » Postponed (maintainer needs more info)

That's definitely not the complete output, it beings half-way through a TranslatableMarkup object.
Also, this is not a particularly helpful way to post this information. Could you maybe at least include line breaks?

realityloop’s picture

Status: Postponed (maintainer needs more info) » Closed (works as designed)

@drunken monkey

Not really sure how but the cause of this was missing default config for search_api.

varshith’s picture

Had similar issue. In my case the problem was due to missing search_api.settings.yml.
This was provided within the module and was not taken when search_api was installed via config sync to higher envs. Copying search_api.settings.yml to config sync dir fixes the issue.

fonant’s picture

Same issue here, copying search_api.settings.yml into the configuration sync directory fixed the issue.

mmrtnt’s picture

@realityloop @varshith @fonant

Thanks!

My problem was probably caused by implementing Config Split and not having the file in the "local" config directory.

cp web/modules/contrib/search_api/config/install/search_api.settings.yml config/local/