Как исправить: http.client.HTTPException: получил более 100 заголовков при использовании объемных из Pythonasticsearch API - PullRequest
1 голос
/ 23 октября 2019

Я используюasticsearch-oss: 6.8.3 с python 3.7

Я использую функцию массового обновления для обновления значения в моем ES, например:

for hit in hits:
        # hit = {
        #   '_index': 'my-index',
        #   '_score': '1.0',
        #   '_type': '_doc',
        #   '_id': 'YNi6920BHiHVzMIEjF0_', 
        #   '_source': {}
        # }
        del hit["_score"]

        hit["_source"].update({something_to_update})
        hit["_op_type"] = "update"

        # Need to deepcopy otherwise as we are in a generator, this will create an id loop in pyhton and raise an ES error
        _source = {"doc": deepcopy(hit["_source"])}

        # yield result
        yield hit

Покаон пропускает ошибку: http.client.HTTPException: получил более 100 заголовков при использовании массового использования из pythonasticsearch API

Я думаю, это связано с размером ограничения python для заголовков http. Итак, я хотел бы передать все идентификаторы в форме каждого попадания в теле запроса, но я не знаю, как это сделать ...

1 Ответ

0 голосов
/ 24 октября 2019

Пока у меня есть грязное исправление, которое:

import http.client

http.client._MAXHEADERS = 1000
...