Bug: _mlt on a document does not route properly on node clients

I think I've found a bug with ElasticSearch with _mlt and node clients.

We're running 0.19.8.

We have two data nodes and each app server has its own ES instance running
in node client mode. Searches and normal document GETs work fine, however
when running _mlt on a client node, I get an IndexMissingException. The
exact same query works fine on the data node. I suspect _mlt is only
checking the local _mlt

To sum it up:

On data node:
$ curl http://localhost:9200/foo/bar/1 # Works
$ curl http://localhost:9200/foo/bar/1/_mlt # Works

On client node:
$ curl http://localhost:9200/foo/bar/1 # Works
$ curl http://localhost:9200/foo/bar/1/_mlt # Fails with
IndexMissingException

--

So just to clarify, the client nodes are joined correctly in the cluster,
so search works perfectly fine as well.

On Wednesday, 22 August 2012 16:40:02 UTC+10, Jack Chen wrote:

I think I've found a bug with Elasticsearch with _mlt and node clients.

We're running 0.19.8.

We have two data nodes and each app server has its own ES instance running
in node client mode. Searches and normal document GETs work fine, however
when running _mlt on a client node, I get an IndexMissingException. The
exact same query works fine on the data node. I suspect _mlt is only
checking the local _mlt

To sum it up:

On data node:
$ curl http://localhost:9200/foo/bar/1 # Works
$ curl http://localhost:9200/foo/bar/1/_mlt # Works

On client node:
$ curl http://localhost:9200/foo/bar/1 # Works
$ curl http://localhost:9200/foo/bar/1/_mlt # Fails with
IndexMissingException

--

Can you open an issue with a gist recreation, we will have a look at it.

On Wednesday, August 22, 2012 8:47:21 AM UTC+2, Jack Chen wrote:

So just to clarify, the client nodes are joined correctly in the cluster,
so search works perfectly fine as well.

On Wednesday, 22 August 2012 16:40:02 UTC+10, Jack Chen wrote:

I think I've found a bug with Elasticsearch with _mlt and node clients.

We're running 0.19.8.

We have two data nodes and each app server has its own ES instance
running in node client mode. Searches and normal document GETs work fine,
however when running _mlt on a client node, I get an IndexMissingException.
The exact same query works fine on the data node. I suspect _mlt is only
checking the local _mlt

To sum it up:

On data node:
$ curl http://localhost:9200/foo/bar/1 # Works
$ curl http://localhost:9200/foo/bar/1/_mlt # Works

On client node:
$ curl http://localhost:9200/foo/bar/1 # Works
$ curl http://localhost:9200/foo/bar/1/_mlt # Fails with
IndexMissingException

--

My colleague has raised an
issue: IndexMissingException when calling _mlt on client node · Issue #2197 · elastic/elasticsearch · GitHub

On Wednesday, 22 August 2012 20:43:32 UTC+10, kimchy wrote:

Can you open an issue with a gist recreation, we will have a look at it.

On Wednesday, August 22, 2012 8:47:21 AM UTC+2, Jack Chen wrote:

So just to clarify, the client nodes are joined correctly in the cluster,
so search works perfectly fine as well.

On Wednesday, 22 August 2012 16:40:02 UTC+10, Jack Chen wrote:

I think I've found a bug with Elasticsearch with _mlt and node clients.

We're running 0.19.8.

We have two data nodes and each app server has its own ES instance
running in node client mode. Searches and normal document GETs work fine,
however when running _mlt on a client node, I get an IndexMissingException.
The exact same query works fine on the data node. I suspect _mlt is only
checking the local _mlt

To sum it up:

On data node:
$ curl http://localhost:9200/foo/bar/1 # Works
$ curl http://localhost:9200/foo/bar/1/_mlt # Works

On client node:
$ curl http://localhost:9200/foo/bar/1 # Works
$ curl http://localhost:9200/foo/bar/1/_mlt # Fails with
IndexMissingException

--