When indexing content, you might run into this error:
Solr endpoint http://useast1-c26.acquia-search.com:80/solr/ABCD-123456.env.default/: Solr HTTP error: HTTP request failed, cURL error 28: Operation timed out after 10001 milliseconds with 0 bytes received (see https://curl.haxx.se/libcurl/c/libcurl-errors.html). in Drupal\search_api_solr\Plugin\search_api\backend\SearchApiSolrBackend->indexItems() (line 719 of /mnt/www/html/application.env/docroot/modules/contrib/search_api_solr/src/Plugin/search_api/backend/SearchApiSolrBackend.php
This happens when you send a request that the backend (Solr) cannot process and respond to in less than 10 seconds which is the default timeout value. This usually means that some piece(s) of content contain a lot of data comparably, which leads to bigger payloads and slower processing time on the backend. The timeout value is configurable by this variable (where
acquia_search_server is the machine name of your search_api server):
While you can increase the timeout via the variable above, we would advise you to inspect your content and check if all selected fields are required for indexing, as you might be sending a lot of unwanted data to Solr. If that is not the case, an alternative solution to increasing the timeout would be to reduce your batch size when index. For example if you are running into this error at some specific point in your indexing process with the default 50 item batch size, you can try reducing it to 20 or lower:
drush sapi-i --batch-size=20 > [notice] Successfully indexed 20 items. > [notice] Successfully indexed 40 items. > [notice] Successfully indexed 60 items. > [notice] Successfully indexed 80 items. > [notice] Successfully indexed 100 items.