Confluence site search or index returns ElasticSearch error

Still need help?

The Atlassian Community is here for you.

Ask the community

Platform Notice: Server and Data Center Only - This article only applies to Atlassian products on the server and data center platforms.

Problem

Search is broken in Confluence. When trying to search for any text in the top search field, sometimes you can see quicksearch results, but after entering the search keyword there is a stack trace.

When making the following actions...

  • Type in 'test' in the top right search bar
  • Hit Enter
  • The following appears in the atlassian-confluence.log and in the page
2017-01-30 19:21:58,966 WARN [Caesium-1-4] [confluence.search.elasticsearch.ESIndexQueueFlusher] lambda$null$0 Failed to process index task ESIndexChangeTask[journalEntryId=157286,handle=com.atlassian.confluence.pages.Page-64131004]
NoNodeAvailableException[None of the configured nodes are available: []]
	at org.elasticsearch.client.transport.TransportClientNodesService.ensureNodesAreAvailable(TransportClientNodesService.java:280)
	at org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:197)
	at org.elasticsearch.client.transport.support.TransportProxyClient.execute(TransportProxyClient.java:55)
	at org.elasticsearch.client.transport.TransportClient.doExecute(TransportClient.java:272)
	at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:347)
	at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:336)
	at org.elasticsearch.client.support.AbstractClient.index(AbstractClient.java:354)
	at com.atlassian.confluence.search.elasticsearch.ESTenantClient.index(ESTenantClient.java:140)
	at com.atlassian.confluence.search.elasticsearch.tasks.SynchronousESIndexRequestProcessor.accept(SynchronousESIndexRequestProcessor.java:41)
	at com.atlassian.confluence.search.elasticsearch.tasks.RefreshPropertyEnablingRequestProcessor.accept(RefreshPropertyEnablingRequestProcessor.java:29)
	at com.atlassian.confluence.search.elasticsearch.tasks.ESIndexChangeTask.innerPerform(ESIndexChangeTask.java:64)
	at com.atlassian.confluence.search.elasticsearch.tasks.AbstractESTask.perform(AbstractESTask.java:70)
	at com.atlassian.confluence.search.elasticsearch.ESIndexQueueFlusher$1.doInTransactionWithoutResult(ESIndexQueueFlusher.java:81)

Diagnosis

Environment

  • Confluence 6 and below

Diagnostic Steps

  • Go to -> General configuration -> Content indexing
  • Click on 'Rebuild' and check if it completes
  • Clear browser cache and clear plugin cache

Cause

ElasticSearch is enabled in Confluence, although this is an experimental feature and not supported as of Confluence 6. There is no ElasticSearch service for Confluence to communicate with, this will not work to either index or search Confluence.

Resolution

This is enabled through a dark feature. This should be removed:

  1. Log in as an administrator user in Confluence
  2. Then go to the following URL: https://your_base_url/admin/darkfeatures.action
  3. Under User Dark Features, look for any of the following:
    es.site.search
    es.site.search.shadow.disabled
    es.site.search.odd
    es.reindex
    ...
    

Any feature that is enabled that starts with "es." should be removed, as these belong to the ElasticSearch experimental classes. You can then restart Confluence and rebuild the indexes from scratch, then check to see if search is working. If you continue to see an issue, open a ticket with our support teams at https://support.atlassian.com/contact.

 

Last modified on Nov 2, 2018

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.