Django/Haystack error: elasticsearch.exceptions.RequestError: TransportError(400, 'parsing_exception',...)
<p>I am using elasticsearch as backend for haystack in my Django project. I created everything required for a search as mentioned <a href="http://krzysztofzuraw.com/blog/2016/haystack-elasticsearch-part-two.html" rel="noreferrer">here</a>. But when i search i throws a traceback error with TransportError(400, 'parsing_exception', 'no [query] registered for [filtered]'). </p>

<p>I have googled for this issue. But don't get any solution. I would appreciate helping me solve this.</p>

<p>My traceback:</p>

<pre><code>Traceback (most recent call last):
  File "c:\python34\lib\site- packages\haystack\backends\elasticsearch_backend.py", line 524, in search
_source=True)
  File "c:\python34\lib\site-packages\elasticsearch\client\utils.py", line 71, in _wrapped
    return func(*args, params=params, **kwargs)
  File "c:\python34\lib\site-packages\elasticsearch\client\__init__.py", line 569, in search
    doc_type, '_search'), params=params, body=body)
 File "c:\python34\lib\site-packages\elasticsearch\transport.py", line 327, in perform_request
   status, headers, data = connection.perform_request(method, url, params, body, ignore=ignore, timeout=timeout)
  File "c:\python34\lib\site-packages\elasticsearch\connection\http_urllib3.py", line 124, in perform_request
    self._raise_error(response.status, raw_data)
  File "c:\python34\lib\site-packages\elasticsearch\connection\base.py", line 122, in _raise_error
    raise HTTP_EXCEPTIONS.get(status_code, TransportError)(status_code, error_message, additional_info)
elasticsearch.exceptions.RequestError: TransportError(400,  'parsing_exception', 'no [query] registered for [filtered]')
[28/Dec/2016 17:06:58]"GET /search/?q=code HTTP/1.1" 200 395
</code></pre>

<p>Update-1 : TraceBack after downgraded to elasticsearch==1.7.0</p>

<pre><code>GET /haystack/modelresult/_search?_source=true [status:400 request:0.001s]
Failed to query Elasticsearch using '(code)': TransportError(400, 'parsing_exception')
Traceback (most recent call last):
  File "c:\python34\lib\site-packages\haystack\backends\elasticsearch_backend.py", line 524, in search
_source=True)
  File "c:\python34\lib\site-packages\elasticsearch\client\utils.py", line 69, in _wrapped
    return func(*args, params=params, **kwargs)
  File "c:\python34\lib\site-packages\elasticsearch\client\__init__.py", line 527, in search
    doc_type, '_search'), params=params, body=body)
  File "c:\python34\lib\site-packages\elasticsearch\transport.py", line 307, in perform_request
    status, headers, data = connection.perform_request(method, url, params, body, ignore=ignore, timeout=timeout)
  File "c:\python34\lib\site-packages\elasticsearch\connection\http_urllib3.py", line 93, in perform_request
    self._raise_error(response.status, raw_data)
  File "c:\python34\lib\site-packages\elasticsearch\connection\base.py", line 105, in _raise_error
    raise HTTP_EXCEPTIONS.get(status_code, TransportError)(status_code, error_message, additional_info)
elasticsearch.exceptions.RequestError: TransportError(400, 'parsing_exception')
[28/Dec/2016 17:58:50]"GET /search/?q=code HTTP/1.1" 200 395
</code></pre>