this is my mapping :
{
   
   - "matrix":{
      - "mappings":{
         - "group":{
            - "properties":{
               - "address":{
                  - "type":"string",
                  - "store":true,
                  - "analyzer":"ik"
               },
               - "geo":{
                  - "type":"geo_point",
                  - "store":true
               },
               - "intra":{
                  - "type":"string",
                  - "store":true,
                  - "analyzer":"ik"
               },
               - "name":{
                  - "type":"string",
                  - "store":true,
                  - "analyzer":"ik"
               },
               - "region":{
                  - "type":"string",
                  - "store":true,
                  - "analyzer":"ik"
               },
               - "tags":{
                  - "type":"string",
                  - "store":true,
                  - "analyzer":"ik"
               }
            }
         }
      }
   }

}


在 2014年7月23日星期三UTC+8下午1时44分09秒,Ivan Brusic写道:
>
> Your mapping does not seem correct. Can you post the output of the get 
> mapping API instead? It appears that the region field might be a geo type 
> instead. Analyzed fields should have position data enabled by default.
>
> -- 
> Ivan
>
>
> On Tue, Jul 22, 2014 at 8:46 PM, xu piao <[email protected] <javascript:>> 
> wrote:
>
>> i have an exception when i use 'query_string' to search with 
>> 'multi_field' . 
>>
>> my docs is indexed by json 
>> ,like:{"region":"北京北京市海淀区","name":"群下子群|成员测试-82282","intra":"taipeng","geo":{"lon":116.3092,"lat":39.98364},"address":"泰鹏大厦"}
>>
>> the field not all my docs have
>>
>> my search request : 
>> {
>>   "bool" : {
>>     "must" : {
>>       "query_string" : {
>>         "query" : "北京西路",
>>         "fields" : [ "region"]
>>       }
>>     },
>>     "minimum_should_match" : "1"
>>   }
>> }
>>
>> my mappings : 
>>
>> matrix: {
>>    
>>    - mappings: {
>>       - group: {
>>          - properties: {
>>          - region: {
>>             - type: string
>>             - store: true
>>             - analyzer: ik 
>>          }
>>       - }
>>       - }
>>    
>> }
>>
>>    
>> }
>>
>> exception :org.elasticsearch.action.search.SearchPhaseExecutionException: 
>> Failed to execute phase [query], all shards failed; shardFailures 
>> {[C_c2mxBJS7KVuP2tcb1aIw][matrix][0]: 
>> RemoteTransportException[[Auric][inet[/10.0.8.102:19300]][search/phase/query]];
>>  
>> nested: QueryPhaseExecutionException[[matrix][0]: 
>> query[filtered((region:"北京 
>> 西路"))->cache(_type:group)],from[0],size[20],sort[<custom:"geo": 
>> org.elasticsearch.index.fielddata.fieldcomparator.GeoDistanceComparatorSource@6f26b9e7>]:
>>  
>> Query Failed [Failed to execute main query]]; nested: 
>> IllegalStateException[field "region" was indexed without position data; 
>> cannot run PhraseQuery (term=北京)]; }{[jwf1krq1QY27yqNt1_2vVQ][matrix][4]: 
>> QueryPhaseExecutionException[[matrix][4]: query[filtered((region:"北京 
>> 西路"))->cache(_type:group)],from[0],size[20],sort[<custom:"geo": 
>> org.elasticsearch.index.fielddata.fieldcomparator.GeoDistanceComparatorSource@43ececca>]:
>>  
>> Query Failed [Failed to execute main query]]; nested: 
>> IllegalStateException[field "region" was indexed without position data; 
>> cannot run PhraseQuery (term=北京)]; }{[jwf1krq1QY27yqNt1_2vVQ][matrix][3]: 
>> QueryPhaseExecutionException[[matrix][3]: query[filtered((region:"北京 
>> 西路"))->cache(_type:group)],from[0],size[20],sort[<custom:"geo": 
>> org.elasticsearch.index.fielddata.fieldcomparator.GeoDistanceComparatorSource@70e10093>]:
>>  
>> Query Failed [Failed to execute main query]]; nested: 
>> IllegalStateException[field "region" was indexed without position data; 
>> cannot run PhraseQuery (term=北京)]; }{[C_c2mxBJS7KVuP2tcb1aIw][matrix][2]: 
>> RemoteTransportException[[Auric][inet[/10.0.8.102:19300]][search/phase/query]];
>>  
>> nested: QueryPhaseExecutionException[[matrix][2]: 
>> query[filtered((region:"北京 
>> 西路"))->cache(_type:group)],from[0],size[20],sort[<custom:"geo": 
>> org.elasticsearch.index.fielddata.fieldcomparator.GeoDistanceComparatorSource@577725b3>]:
>>  
>> Query Failed [Failed to execute main query]]; nested: 
>> IllegalStateException[field "region" was indexed without position data; 
>> cannot run PhraseQuery (term=北京)]; }{[jwf1krq1QY27yqNt1_2vVQ][matrix][1]: 
>> QueryPhaseExecutionException[[matrix][1]: query[filtered((region:"北京 
>> 西路"))->cache(_type:group)],from[0],size[20],sort[<custom:"geo": 
>> org.elasticsearch.index.fielddata.fieldcomparator.GeoDistanceComparatorSource@5fd068b>]:
>>  
>> Query Failed [Failed to execute main query]]; nested: 
>> IllegalStateException[field "region" was indexed without position data; 
>> cannot run PhraseQuery (term=北京)]; }
>>         at 
>> org.elasticsearch.action.search.type.TransportSearchTypeAction$BaseAsyncAction.onFirstPhaseResult(TransportSearchTypeAction.java:276)
>>         at 
>> org.elasticsearch.action.search.type.TransportSearchTypeAction$BaseAsyncAction$3.onFailure(TransportSearchTypeAction.java:224)
>>         at 
>> org.elasticsearch.search.action.SearchServiceTransportAction.sendExecuteQuery(SearchServiceTransportAction.java:205)
>>         at 
>> org.elasticsearch.action.search.type.TransportSearchQueryThenFetchAction$AsyncAction.sendExecuteFirstPhase(TransportSearchQueryThenFetchAction.java:80)
>>         at 
>> org.elasticsearch.action.search.type.TransportSearchTypeAction$BaseAsyncAction.performFirstPhase(TransportSearchTypeAction.java:216)
>>         at 
>> org.elasticsearch.action.search.type.TransportSearchTypeAction$BaseAsyncAction$4.run(TransportSearchTypeAction.java:296)
>>         at 
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>>         at 
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>>         at java.lang.Thread.run(Thread.java:722)
>>
>>
>>    - 
>>       
>>  -- 
>> 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 [email protected] <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/elasticsearch/1c21f47a-3a42-4ad1-90b6-94ffbd6b269a%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/elasticsearch/1c21f47a-3a42-4ad1-90b6-94ffbd6b269a%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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/8d083186-1d41-4d52-b22b-313944ee4bb9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to