ElasticSearch NotFound после очистки коллекции
У меня есть среда "live-test" для моего приложения rails, которая позволяет нам тестировать наше приложение с практически реальными настройками производства (электронная почта отправляется по-настоящему и т. Д.)
Я добавил несколько кнопок на этот веб-сайт "живого теста", который позволяет нам быстро очистить коллекцию (т.е. удалить все документы из коллекции MongoDB)
def purge
if Rails.env.production?
should_not_happen(severity: :armageddon)
else
Company.unscoped do
Company.all.each(&:destroy)
end
Utility.seed
flashy(:info, 'company XXX restored')
redirect_back
end
end
Проблема возникает с ElasticSearch. При первом вызове этого метода очистки, он работает нормально, у меня ошибка
Elasticsearch::Transport::Transport::Errors::NotFound in MyController#purge
Если в браузере нажать несколько раз кнопку "Обновить", то через 2-3 раза запрос будет окончательно принят, но затем снова возникнет та же проблема:
# 1st time executing purge action : Works
# 2nd time : [404] {"found":false,"_index":"professionals-test","_type":"employee","_id":"57221655f5ae457700b464a2","_version":4}
# 3rd time : [404] {"found":false,"_index":"professionals-test","_type":"employee","_id":"57221655f5ae457700b464a5","_version":6}
# 4th time : [404] {"found":false,"_index":"professionals-test","_type":"employee","_id":"57221655f5ae457700b464a7","_version":4}
# 5th Time : Works
# 6th refresh : Again errors....
Я использую сервис AWS ElasticSearch с классическими драгоценными камнями эластичного поиска.