我将 django-haystack 与 elasticsearch 一起使用,但索引存在问题。重建我的索引时
python manage.py rebuild_index引发以下错误:
回溯(最近一次通话最后): 文件“/home/palo/.virtualenvs/toro/local/lib/python2.7/site-packages/haystack/management/commands/update_index.py”,第 210 行,在 handle_label self.update_backend(标签,使用) 文件“/home/palo/.virtualenvs/toro/local/lib/python2.7/site-packages/haystack/management/commands/update_index.py”,第 256 行,在 update_backend do_update(后端,索引,qs,开始,结束,总计,self.verbosity) 文件“/home/palo/.virtualenvs/toro/local/lib/python2.7/site-packages/haystack/management/commands/update_index.py”,第 78 行,在 do_update 后端.更新(索引,current_qs) 文件“/home/palo/.virtualenvs/toro/local/lib/python2.7/site-packages/haystack/backends/elasticsearch_backend.py”,第 177 行,更新中 self.conn.bulk_index(self.index_name, 'modelresult', prepped_docs, id_field=ID) 文件“/home/palo/.virtualenvs/toro/src/pyelasticsearch/pyelasticsearch/client.py”,第 95 行,在装饰中 返回函数(*args,query_params=query_params,**kwargs) 文件“/home/palo/.virtualenvs/toro/src/pyelasticsearch/pyelasticsearch/client.py”,第 366 行,在 bulk_index 查询参数=查询参数) 文件“/home/palo/.virtualenvs/toro/src/pyelasticsearch/pyelasticsearch/client.py”,第 221 行,在 send_request **({'data': request_body} if body else {})) 文件“/home/palo/.virtualenvs/toro/src/requests/requests/sessions.py”,第 387 行,在帖子中 return self.request('POST', url, data=data, **kwargs) 文件“/home/palo/.virtualenvs/toro/src/requests/requests/sessions.py”,第 345 行,在请求中 resp = self.send(prep, **send_kwargs) 发送中的文件“/home/palo/.virtualenvs/toro/src/requests/requests/sessions.py”,第 448 行 r = adapter.send(request, **kwargs) 文件“/home/palo/.virtualenvs/toro/src/requests/requests/adapters.py”,第 324 行,在发送中 提高超时(e) 超时:HTTPConnectionPool(host='127.0.0.1', port=9200):请求超时。(超时=10) 超时:HTTPConnectionPool(host='127.0.0.1', port=9200):请求超时。(超时=10)
我使用了 django-haystack - 2.0.0-beta,pyelasticsearch - 0.5,elasticsearch 0.20.6,java 版本“1.6.0_24”
干草堆设置
HAYSTACK_CONNECTIONS = { '默认': { '引擎': 'haystack.backends.elasticsearch_backend.ElasticsearchSearchEngine', '网址': 'http://127.0.0.1:9200/', 'INDEX_NAME': '干草堆', }, }
而且我确定我的弹性搜索服务正在运行。