My elasticsearch doesn't yield any result at all

Nextcloud 13.0.4 with 3 Full Text Search apps (all 0.7.2). I indexed the files properly. The size of nodes directory is more than 10G. During indexing, all files were processed as successful.

Still, I cannot get “any” result when I wrote any search term on the magnifier icon of Full Text Search. I deleted and reinstalled Full Text Search - Files app to no avail. Here is my config page:

I would appreciate any help. Thanks.

What if you try a manual search?

Thank you, @Sanook for the reply.

I tried,

curl ‘http://10.0.0.14:9205/hme_index/standard/_search?size=1&from=0’ --data ‘{ “query” : { “match” : { “content” : “any-search-string” } } }’

And I got this:

{“error”:“Content-Type header [application/x-www-form-urlencoded] is not supported”,“status”:406}

This problem was talked about last year:

And my ES version is:

{
“name” : “aluv3db”,
“cluster_name” : “docker-cluster”,
“cluster_uuid” : “6iD6alddRc6MwSNv-SSnkg”,
“version” : {
“number” : “6.2.4”,
“build_hash” : “ccec39f”,
“build_date” : “2018-04-12T20:37:28.497551Z”,
“build_snapshot” : false,
“lucene_version” : “7.2.1”,
“minimum_wire_compatibility_version” : “5.6.0”,
“minimum_index_compatibility_version” : “5.0.0”
},
“tagline” : “You Know, for Search”
}

I uninstalled 3 plugins, re-indexed to no avail.

I would appreciate any help.

What if you try localhost:9205 instead of 10.0.0.14?

Elastic search and nextcloud are two different dockers. 10.0.0.14 is the host IP. http://10.0.0.14:9205 is defined in Full Text Search settings of Nextcloud. And as indexing commands work within nextcloud, I presume ES is accessible using http://10.0.0.14:9205 within nextcloud docker.

I tried localhost:9205 anyway. The result is “curl: (7) Failed to connect to localhost port 9205: Connection refused” as expected.

Thank you.

Dear @Cult and @Sanook,

I have come across this web page from Elastic Search: https://www.elastic.co/blog/strict-content-type-checking-for-elasticsearch-rest-requests

It seems they have changed something in version 6. And my version happens to be 6.2.4.

If I add, -H “Content-Type: application/json” , to the command, it works.

The working manual command becomes:

curl -H “Content-Type: application/json” ‘http://10.0.0.14:9205/hme_index/standard/_search?size=1&from=0’ --data ‘{ “query” : { “match” : { “content” : “search-string” } } }’

It looks like my Full Text Search plugins don’t send “Content-Type” to ES instance.

Could you please have a look at this issue?

Thank you.

I also have 6.2.4 installed, but i don’t use docker for that purpose.