2013-10-05 35 views
0

我嵌套的文件,一切都在dev的罚款,因为我只有一个碎片,但它在生产失败,出现以下消息:问题与多个碎片和父/子

{"error"=>"RoutingMissingException[routing is required for [users]/[timeline_post]/[1]]", "status"=>500} 

记录的查询是:

curl -X POST "http://foo.qbox.io/users/timeline_post/1?parent=23" -d '{"id":1,"body":"foo"}' 

我认为没有必要指定路由,如果父母提供。

任何想法这里有什么问题吗?

仅供参考,我给了​​。

+0

从我的弹性搜索提供程序是一个问题,它修复后的错误报告 – apneadiving

回答

1

我的猜测是你在映射中设置了routing.required = true。设置父文档将仅使用父文档名称进行默​​认路由(请注意,它仅使用文档名称,并且根本不查找文档所在的分片)。当您进行自定义路由时,您还需要在父母的文档中包含路由,并确保您自己的每个文档都以与其父路由相同的方式路由。