当我尝试重建django的索引时,Solr超时

时间:2013-09-10 07:01:03

标签: solr

我正在尝试使用./manage.py rebuild_index首次在ubuntu上为Django构建我的solr索引,我收到以下错误:

Removing all documents from your index because you said so.
Failed to clear Solr index: Connection to server 'http://localhost:8983/solr/update/?commit=true'                timed out: HTTPConnectionPool(host='localhost', port=8983): Request timed out. (timeout=10)
All documents removed.
Indexing 4 dishess
Failed to add documents to Solr: Connection to server 'http://localhost:8983/solr/update/?commit=true' timed out: HTTPConnectionPool(host='localhost', port=8983): Request timed out. (timeout=10)

我可以通过我的网络浏览器访问localhost:8983 / solr /和localhost:8983 / solr / admin

2 个答案:

答案 0 :(得分:3)

您可以提升TIMEOUT中的settings.py

例如

HAYSTACK_CONNECTIONS = {
    'default': {
        'ENGINE': 'haystack.backends.solr_backend.SolrEngine',
        'URL': 'http://127.0.0.1:8080/solr/default',
        'INCLUDE_SPELLING': True,
        'TIMEOUT': 60 * 5,
    },
}

答案 1 :(得分:0)

重要的是,你不应该增加默认超时,因为它可能会阻止你的所有工人,因为haystack同步工作。 避免这种情况的最佳方法是为具有不同超时和定义的读写定义多个连接。

http://django-haystack.readthedocs.org/en/latest/settings.html#haystack-connections

使用路由器进行读写分离http://django-haystack.readthedocs.org/en/v2.4.0/multiple_index.html#automatic-routing