bagui  
                (bagui)
               
                 
              
                  
                    March 14, 2014,  1:55pm
                   
                   
              1 
               
             
            
              Hi,
I'm trying to run the below bool query with filter range to fetch all the 
node data with CLOUD_TYPE="AWS-EC2"" and NODE_STATUS="ACTIVE". 
But I'm getting SearchPhaseExecutionException from elasticsearch. Please 
let me know the correct way to do this.
curl -XPOST "http://10.203.251.142:9200/aricloud/_search " -d 
'{ 
"filtered": { 
"query": { 
"bool": { 
"must": [ 
{ 
"term": { 
"CLOUD_TYPE": "AWS-EC2" 
} 
}, 
{ 
"term": { 
"NODE_STATUS": "ACTIVE" 
} 
} 
] 
} 
}, 
"filter": { 
"range": { 
"NODE_CREATE_TIME": { 
"to": "2014-03-14 18:43:55", 
"from": "2014-03-14 16:22:32" 
} 
} 
} 
}, 
"sort": { 
"NODE_ID": "desc" 
}, 
"from": 0, 
"size": 3 
}'
-- 
You received this message because you are subscribed to the Google Groups "elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/4e53acd6-d68a-43fe-8340-72ae695e0060%40googlegroups.com . 
For more options, visit https://groups.google.com/d/optout .
             
            
               
               
               
            
            
           
          
            
            
              You need to pass the search request a "query", so just change the above to:
GET /_search 
{ "query": { "filtered": .... }, from: 0, size: 3 ...}
On 14 March 2014 14:55, Subhadip Bagui i.bagui@gmail.com  wrote:
Hi,
I'm trying to run the below bool query with filter range to fetch all the 
node data with CLOUD_TYPE="AWS-EC2"" and NODE_STATUS="ACTIVE". 
But I'm getting SearchPhaseExecutionException from elasticsearch. Please 
let me know the correct way to do this.
curl -XPOST "http://10.203.251.142:9200/aricloud/_search " -d 
'{ 
"filtered": { 
"query": { 
"bool": { 
"must": [ 
{ 
"term": { 
"CLOUD_TYPE": "AWS-EC2" 
} 
}, 
{ 
"term": { 
"NODE_STATUS": "ACTIVE" 
} 
} 
] 
} 
}, 
"filter": { 
"range": { 
"NODE_CREATE_TIME": { 
"to": "2014-03-14 18:43:55", 
"from": "2014-03-14 16:22:32" 
} 
} 
} 
}, 
"sort": { 
"NODE_ID": "desc" 
}, 
"from": 0, 
"size": 3 
}'
-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an 
email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/4e53acd6-d68a-43fe-8340-72ae695e0060%40googlegroups.com https://groups.google.com/d/msgid/elasticsearch/4e53acd6-d68a-43fe-8340-72ae695e0060%40googlegroups.com?utm_medium=email&utm_source=footer  
. 
For more options, visit https://groups.google.com/d/optout .
 
-- 
You received this message because you are subscribed to the Google Groups "elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAPt3XKSTtR1ppgD_VopKPwXGZX3j3B_aQUMtHpeJxgA%3DX0qP3A%40mail.gmail.com . 
For more options, visit https://groups.google.com/d/optout .
             
            
               
               
               
            
            
           
          
            
              
                bagui  
                (bagui)
               
              
                  
                    March 17, 2014,  8:01am
                   
                   
              3 
               
             
            
              Hi Clinton,
Thanks for your reply. I tried as suggested and the same is working now  
One question though, I have to pass the text field in lower case always as 
the same is getting analyzed by standard analyzer I guess. Is there any way 
to pass multiple match in bool for text search so that I can search with 
part of the exact text entered, like "CLOUD" instead of "cloud"
I tried below as given in link 
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-multi-match-query.html  
but it's giving error as 'Duplicate key "match" - syntax error'
POST /aricloud/_search 
{ 
"query": { 
"filtered": { 
"query": { 
"bool": { 
"must": [ 
{"term": { 
"CLOUD_TYPE": { 
"value": "cloudstack" 
} 
} 
} 
] , 
"must_not": [ 
{ 
"term": { 
"NODE_ID": { 
"value": "12235" 
} 
} 
} 
], 
"should": [ 
{ 
"match": { 
"NODE_HOSTNAME": "cloudserver.aricent.com " 
}, 
"match": { 
"NODE_GROUP_NAME": "MYSQL" 
} 
} 
] 
} 
}, 
"filter": { 
"range": { 
"NODE_CREATE_TIME": { 
"from": "2014-03-14 16:32:35", 
"to": "2014-03-14 18:43:55" 
} 
} 
} 
} 
}, 
"sort": [ 
{ 
"NODE_ID": { 
"order": "desc" 
} 
} 
] 
}
-- 
You received this message because you are subscribed to the Google Groups "elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/8aac212b-018c-4f51-8222-9bb00a09377d%40googlegroups.com . 
For more options, visit https://groups.google.com/d/optout .
             
            
               
               
               
            
            
           
          
            
            
              This this instead:
{ 
"query": { 
"filtered": { 
"query": { 
"bool": { 
"should": [ 
{ 
"match": { 
"NODE_HOSTNAME": "cloudserver.aricent.com " 
} 
}, 
{ 
"match": { 
"NODE_GROUP_NAME": "MYSQL" 
} 
} 
] 
} 
}, 
"filter": { 
"bool": { 
"must": [ 
{ 
"range": { 
"NODE_CREATE_TIME": { 
"from": "2014-03-14 16:32:35", 
"to": "2014-03-14 18:43:55" 
} 
} 
}, 
{ 
"term": { 
"CLOUD_TYPE": { 
"value": "cloudstack" 
} 
} 
} 
], 
"must_not": { 
"term": { 
"NODE_ID": { 
"value": "12235" 
} 
} 
} 
} 
} 
} 
}, 
"sort": [ 
{ 
"NODE_ID": { 
"order": "desc" 
} 
} 
] 
}
Note: Your query says to match anything that contains MYSQL or 
cloudserver.....  Not sure if that is your intention or not
-- 
You received this message because you are subscribed to the Google Groups "elasticsearch" group. 
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com . 
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAPt3XKSTnF7OZGpEf0ZqJ05ZmBgOY_pCy7JjEZEk5b_%3DCR21ow%40mail.gmail.com . 
For more options, visit https://groups.google.com/d/optout .