一般碰到报错:”Types cannot be provided in put mapping requests, unless the include_type_name parameter is set to true”,都是因为ElasticSearch从低版本升级到高版本造成的。
新的ElasticSearch 7.x,做了调整,要求mapping时不需要提交type,为了确保旧代码的兼容性,加入了一个include_type_name的参数。

如何使用这个参数让旧代码的映射逻辑依然可以正常工作呢?示例代码如下:

$paramsIndex['body']['brand']     = $brandMapping;
$paramsIndex['include_type_name'] = true;
$message = $client->indices()->putMapping($paramsIndex);

Related Posts: unless the include_type_name parameter is set to true-elasticsearch-php解决办法 :

avatar