Routing value doesn't match with search result

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Routing value doesn't match with search result

Shairon Toledo
Hi,
We're indexing and searching using account_id as routing, in a cluster with 3 nodes, things are working since 2 months ago, however now the routing defined on url
is not matching with search result. This is the mapping for document type https://gist.github.com/9b5dd371bbf0715393ad

When I search by 

{
  "query": {
    "bool": {
      "must": [
        {
          "term": {
            "type": "pdf"
          }
        }
      ]
    }
  }
}
'

The result is https://gist.github.com/b544c15b8a92e19d7413 as you can see for 5 documents _routing and account_d match with routing in the url(427), 
5 others docs don't make part of the routing.

Worth mention that this began happen few days ago, I don't see anything in the ES log.

We're running 0.19.3, do you have any idea how can I fix that?

--











Shairon Toledo
http://hashcode.me
Reply | Threaded
Open this post in threaded view
|

Re: Routing value doesn't match with search result

Rafał Kuć-3
Re: Routing value doesn't match with search result Hello Shairon!

If you only want to have documents only for a particular account_id, you should add a filter for that account_id value apart from the routing value. The reason for the behavior you are seeing is that multiple routing values can point to the same shard. So if you want to narrow your search result you should use routing and filtering for account_id.

-- 
Regards,
 Rafał Kuć
 Sematext :: 
http://sematext.com/ :: Solr - Lucene - Nutch - ElasticSearch


Hi,
We're indexing and searching using account_id as routing, in a cluster with 3 nodes, things are working since 2 months ago, however now the routing defined on url
is not matching with search result. This is the mapping for document type 
https://gist.github.com/9b5dd371bbf0715393ad

When I search by 

curl -XGET '
http://server:9200/prod/document/_search?routing=427&fields=account_id,_routing&size=10&pretty=true' -d '
{
  "query": {
    "bool": {
      "must": [
        {
          "term": {
            "type": "pdf"
          }
        }
      ]
    }
  }
}
'

The result is 
https://gist.github.com/b544c15b8a92e19d7413 as you can see for 5 documents _routing and account_d match with routing in the url(427), 
5 others docs don't make part of the routing.

Worth mention that this began happen few days ago, I don't see anything in the ES log.

We're running 0.19.3, do you have any idea how can I fix that?

-- 











Shairon Toledo
http://hashcode.me
Reply | Threaded
Open this post in threaded view
|

Re: Routing value doesn't match with search result

Shairon Toledo
Hi Rafal,

Yeap I did this hotfix yesterday, however I thought that routing is also I kind of filter scoping by document field level.

Thank you,


On Thu, Jun 21, 2012 at 8:14 AM, Rafał Kuć <[hidden email]> wrote:
Hello Shairon!

If you only want to have documents only for a particular account_id, you should add a filter for that account_id value apart from the routing value. The reason for the behavior you are seeing is that multiple routing values can point to the same shard. So if you want to narrow your search result you should use routing and filtering for account_id.

-- 
Regards,
 Rafał Kuć
 Sematext :: 
http://sematext.com/ :: Solr - Lucene - Nutch - ElasticSearch


Hi,
We're indexing and searching using account_id as routing, in a cluster with 3 nodes, things are working since 2 months ago, however now the routing defined on url
is not matching with search result. This is the mapping for document type 
https://gist.github.com/9b5dd371bbf0715393ad

When I search by 

curl -XGET '
http://server:9200/prod/document/_search?routing=427&fields=account_id,_routing&size=10&pretty=true' -d '
{
  "query": {
    "bool": {
      "must": [
        {
          "term": {
            "type": "pdf"
          }
        }
      ]
    }
  }
}
'

The result is 
https://gist.github.com/b544c15b8a92e19d7413 as you can see for 5 documents _routing and account_d match with routing in the url(427), 
5 others docs don't make part of the routing.

Worth mention that this began happen few days ago, I don't see anything in the ES log.

We're running 0.19.3, do you have any idea how can I fix that?

-- 











Shairon Toledo
http://hashcode.me



--











Shairon Toledo
http://hashcode.me
Reply | Threaded
Open this post in threaded view
|

Re: Routing value doesn't match with search result

Rafał Kuć-3
Re: Routing value doesn't match with search result Hello!

No, it only routes the indexing and querying to a single shard, which can also have documents with other routing values. 

-- 
Regards,
 Rafał Kuć
 Sematext :: 
http://sematext.com/ :: Solr - Lucene - Nutch - ElasticSearch


Hi Rafal,

Yeap I did this hotfix yesterday, however I thought that routing is also I kind of filter scoping by document field level.

Thank you,


On Thu, Jun 21, 2012 at 8:14 AM, Rafał Kuć <
[hidden email]> wrote:
Hello Shairon!

If you only want to have documents only for a particular account_id, you should add a filter for that account_id value apart from the routing value. The reason for the behavior you are seeing is that multiple routing values can point to the same shard. So if you want to narrow your search result you should use routing and filtering for account_id.

-- 
Regards,
 Rafał Kuć
 Sematext :: 
http://sematext.com/ :: Solr - Lucene - Nutch - ElasticSearch


Hi,
We're indexing and searching using account_id as routing, in a cluster with 3 nodes, things are working since 2 months ago, however now the routing defined on url
is not matching with search result. This is the mapping for document type 
https://gist.github.com/9b5dd371bbf0715393ad

When I search by 

curl -XGET '
http://server:9200/prod/document/_search?routing=427&fields=account_id,_routing&size=10&pretty=true' -d '
{
  "query": {
    "bool": {
      "must": [
        {
          "term": {
            "type": "pdf"
          }
        }
      ]
    }
  }
}
'

The result is 
https://gist.github.com/b544c15b8a92e19d7413 as you can see for 5 documents _routing and account_d match with routing in the url(427), 
5 others docs don't make part of the routing.

Worth mention that this began happen few days ago, I don't see anything in the ES log.

We're running 0.19.3, do you have any idea how can I fix that?

-- 











Shairon Toledo
http://hashcode.me




-- 











Shairon Toledo
http://hashcode.me