seafile 不支持 elasticsearch 7.9.1问题


#1

因为自带的5.6.x版本一直报java版本不是1.8.x错误,环境变量和java版本均已经是1.8.x版本,且均已生效重启,一直报错,无奈之下自己安装最新版elasticsearch 7.9.1
安装成功后,使用pyhton脚本工具清除索引没报错,重建索引报错,如下

./pro.py search --update

Updating search index, this may take a while…

09/18/2020 17:40:15 [INFO] seafes:208 main: storage: using filesystem storage backend
09/18/2020 17:40:15 [INFO] seafes:210 main: index office pdf: True
09/18/2020 17:40:15 [ERROR] seafes:158 start_index_local: Index process init error: TransportError(400, ‘illegal_argument_exception’, ‘Types cannot be provided in put mapping requests, unless the include_type_name parameter is set to true.’)

得知是新版Elasticsearch不兼容多type,脚本的代码写法不兼容新版造成的,官方有一个参数可以提供向后兼容,即 include_type_name设置为true,本人不会python,哪位大佬教一下该怎么改,传入这个参数让脚本正常工作: include_type_name=true


#2

不建议升级es版本,es改api改得非常勤,就算这个点改掉了,不保证没有其他问题了。es7是自带java vm的,之前版本不是的吗?


#3

目前应该仅支持es 5.6 以下吧