1
当我用Python Elasticsearch API查询Elasticsearch时,我得到了大约5000个结果。在搜索查询中设置“大小”参数为较大的值不是结果的数量导致下面的Java OOM错误:Elasticsearch批量获取搜索结果?
File "MGDFinder.py", line 114, in <module>
res = es.search(index="_all", body=queryMaker(state))
File "/usr/local/lib/python2.7/dist-packages/elasticsearch/client/utils.py", line 68, in _wrapped
return func(*args, params=params, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/elasticsearch/client/__init__.py", line 440, in search
params=params, body=body)
File "/usr/local/lib/python2.7/dist-packages/elasticsearch/transport.py", line 276, in perform_request
status, headers, data = connection.perform_request(method, url, params, body, ignore=ignore, timeout=timeout)
File "/usr/local/lib/python2.7/dist-packages/elasticsearch/connection/http_urllib3.py", line 55, in perform_request
self._raise_error(response.status, raw_data)
File "/usr/local/lib/python2.7/dist-packages/elasticsearch/connection/base.py", line 97, in _raise_error
raise HTTP_EXCEPTIONS.get(status_code, TransportError)(status_code, error_message, additional_info)
elasticsearch.exceptions.TransportError: TransportError(500, u'OutOfMemoryError[Java heap space]')
我注意到,这种情况发生时,大小设置为甚至只是700我不想增加我的Java堆大小。有没有一种方法可以分批执行我的搜索?