Sto cercando di impostazione con ricerca pagliaio con elasticsearch backend Sto ricevendo il seguente errore:IndexMissingException - Django pagliaio con elasticsearch
./manage.py rebuild_index
...
Failed to clear Elasticsearch index: (404, u'IndexMissingException[[haystack] missing]')
Tuttavia, le seguenti opere di comando:
curl -XPUT http://33.33.33.1:9200/haystack
{"ok":true,"acknowledged":true}
curl -XGET http://33.33.33.1:9200/haystack/test/something
{"_index":"haystack","_type":"test","_id":"something","exists":false}
Ora, dopo aver aperto
./manage.py rebuild_index
...
Failed to clear Elasticsearch index: (404, u'IndexMissingException[[haystack] missing]')
di nuovo, improvvisamente t ha il comando che ha funzionato come previsto ora dà il seguente errore:
curl -XGET http://33.33.33.1:9200/haystack/test/something
{"error":"IndexMissingException[[haystack] missing]","status":404}
Come suggerito in altri posti che ho provato anche:
from django.core import management
from haystack import connections
backend = connections['default'].get_backend()
backend.setup_complete = False
backend.existing_mapping = None
management.call_command('rebuild_index', interactive=False, verbosity=0)
con lo stesso risultato:
{"error":"IndexMissingException[[haystack] missing]","status":404}
Sono in esecuzione Django 1.4.2, django-haystack HEAD da github e pyelasticsearch HEAD da github
config :
HAYSTACK_CONNECTIONS = {
'default': {
'ENGINE': 'haystack.backends.elasticsearch_backend.ElasticsearchSearchEngine',
'URL': 'http://33.33.33.1:9200/',
'INDEX_NAME': 'haystack',
},
}
Qualcuno può aiutarmi?
Il motivo dell'errore è che il backend Haystack per ElasticSearch sta tentando di aggiornare l'indice dopo aver eliminato l'indice. Vedi https://github.com/toastdriven/django-haystack/pull/647. – hekevintran