我使用php elastica客户端(https://github.com/ruflin/Elastica)在elasticsearch索引中添加文档。
当我第一次尝试添加文档时,会出现此错误:
带有消息
的'Elastica \ Exception \ ResponseException' 'NoShardAvailableActionException [[index] [0] null]; 嵌套:IllegalIndexShardStateException [[index] [0] CurrentState [RECOVERING]操作仅在允许时允许 开始/重新定位
文档不会添加到索引中,但会创建其映射。
在此之后,它工作正常,文档被添加到索引中。 也许(相当肯定)我做错了什么。请帮我解决这个问题。
这是我的yaml配置:
indexes:
myIndex:
client: default
types:
myType:
mappings:
id: {type: integer, index: not_analyzed}
name: {type: string, index: not_analyzed}
location: {type: geo_point}
以下是我添加文档的方式:
$doc = new \Elastica\Document();
$doc->setData($arrDoc);
$doc->setId($id);
$objType->addDocument($doc); //object of \Elastica\Type