Type [XXX] does not have parent mapping


(Wojciech Durczyński) #1

Hello. I use ES 0.18.6 and after creating new type with parent mapping I
always have a problem: Type [offeringsAvailabilityCheck] does not have
parent mapping.
But this type of course has parent mapping:
$ curl
http://localhost:9200/om_fcdfac3b-fe50-4ef0-a85b-46ce8cc7eaf5/offeringsAvailabilityCheck/_mapping
{"offeringsAvailabilityCheck":{"dynamic_templates":[{"multi_field_strings":{"mapping":{"index":"not_analyzed","type":"string"},"match_mapping_type":"string","match":"*"}}],"properties":{"status":{"index":"not_analyzed","type":"string"},"orderId":{"index":"not_analyzed","type":"string"},"addressId":{"index":"not_analyzed","type":"string"}},"dynamic_date_formats":["basic_date_time"],"_parent":{"type":"availableOffering"}}}
I try to do usual search query (not count) on type availableOffering with
has_child filter and facets.
Refreshing or flushing of index doesn't help but restarting of cluster
always helps - problem disappears, so it's probably something with cache or
transaction log.

Whole stack trace:
org.elasticsearch.action.search.SearchPhaseExecutionException: Failed to
execute phase [query_fetch], total failure; shardFailures
{[UMIUM3shTeW3o95Cd-gh_w][om_fcdfac3b-fe50-4ef0-a85b-46ce8cc7eaf5][0]:
RemoteTransportException[[Fer-de-Lance][inet[/10.132.4.68:9300]][search/phase/query+fetch]];
nested: SearchParseException[[om_fcdfac3b-fe50-4ef0-a85b-46ce8cc7eaf5][0]:
from[0],size[1]: Parse Failure [Failed to parse source [na]]]; nested:
QueryParsingException[[om_fcdfac3b-fe50-4ef0-a85b-46ce8cc7eaf5] Type
[offeringsAvailabilityCheck] does not have parent mapping]; }
at
org.elasticsearch.action.search.type.TransportSearchTypeAction$BaseAsyncAction.onFirstPhaseResult(TransportSearchTypeAction.java:258)
at
org.elasticsearch.action.search.type.TransportSearchTypeAction$BaseAsyncAction$3.onFailure(TransportSearchTypeAction.java:211)
at
org.elasticsearch.search.action.SearchServiceTransportAction$5.handleException(SearchServiceTransportAction.java:241)
at
org.elasticsearch.transport.netty.MessageChannelHandler.handleException(MessageChannelHandler.java:278)
at
org.elasticsearch.transport.netty.MessageChannelHandler.handlerResponseError(MessageChannelHandler.java:269)
at
org.elasticsearch.transport.netty.MessageChannelHandler.process(MessageChannelHandler.java:221)
at
org.elasticsearch.transport.netty.MessageChannelHandler.callDecode(MessageChannelHandler.java:147)
at
org.elasticsearch.transport.netty.MessageChannelHandler.messageReceived(MessageChannelHandler.java:103)
at
org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
at
org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
at
org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559)
at
org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:274)
at
org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:261)
at
org.elasticsearch.common.netty.channel.socket.nio.NioWorker.read(NioWorker.java:351)
at
org.elasticsearch.common.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:282)
at
org.elasticsearch.common.netty.channel.socket.nio.NioWorker.run(NioWorker.java:202)
at
org.elasticsearch.common.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
at
org.elasticsearch.common.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:44)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)


(Wojciech Durczyński) #2

My query looks like this:

{
"from" : 0,
"size" : 1,
"query" : {
"filtered" : {
"query" : {
"match_all" : {
}
},
"filter" : {
"and" : {
"filters" : [ {
"not" : {
"filter" : {
"exists" : {
"field" : "details.scope"
}
}
}
}, {
"term" : {
"details.vendor.id" : "836857e2-6a44-423e-b9d5-75607c728d5d"
}
}, {
"term" : {
"details.providedBySalesChannels.id" :
"ff679d72-085a-4430-9979-6fdea980056f"
}
}, {
"or" : {
"filters" : [ {
"term" : {
"availabilityCheckNeeded" : "false"
}
}, {
"has_child" : {
"query" : {
"filtered" : {
"query" : {
"match_all" : {
}
},
"filter" : {
"and" : {
"filters" : [ {
"term" : {
"orderId" :
"5920f32a-2c74-41e7-8173-54dc71c3aca4"
}
}, {
"term" : {
"addressId" : "100"
}
}, {
"terms" : {
"status" : [ "Available",
"PotentiallyAvailable" ]
}
} ]
}
}
}
},
"type" : "offeringsAvailabilityCheck"
}
} ]
}
} ]
}
}
}
},
"explain" : false
}


(Shay Banon) #3

Can you gist a full recreation? (http://www.elasticsearch.org/help).

On Monday, February 13, 2012 at 1:13 PM, Wojciech Durczyński wrote:

My query looks like this:

{
"from" : 0,
"size" : 1,
"query" : {
"filtered" : {
"query" : {
"match_all" : {
}
},
"filter" : {
"and" : {
"filters" : [ {
"not" : {
"filter" : {
"exists" : {
"field" : "details.scope"
}
}
}
}, {
"term" : {
"details.vendor.id" : "836857e2-6a44-423e-b9d5-75607c728d5d"
}
}, {
"term" : {
"details.providedBySalesChannels.id" : "ff679d72-085a-4430-9979-6fdea980056f"
}
}, {
"or" : {
"filters" : [ {
"term" : {
"availabilityCheckNeeded" : "false"
}
}, {
"has_child" : {
"query" : {
"filtered" : {
"query" : {
"match_all" : {
}
},
"filter" : {
"and" : {
"filters" : [ {
"term" : {
"orderId" : "5920f32a-2c74-41e7-8173-54dc71c3aca4"
}
}, {
"term" : {
"addressId" : "100"
}
}, {
"terms" : {
"status" : [ "Available", "PotentiallyAvailable" ]
}
} ]
}
}
}
},
"type" : "offeringsAvailabilityCheck"
}
} ]
}
} ]
}
}
}
},
"explain" : false
}


(system) #4