elastic/elasticsearch-py

Helpers for `bulk` method such as `async_bulk` sleep in blocking manner, preventing graceful shutdown

Open

#2.484 geöffnet am 22. März 2024

Auf GitHub ansehen
 (5 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Python (4.060 Stars) (1.206 Forks)batch import
Area: HelpersCategory: Enhancementgood first issue

Beschreibung

We tried using async_bulk and async_streaming_bulk helpers to ingest data into Elasticsearch and they work great, but we've found out that they prevent our code from gracefully shutting down when CTRL+C is pressed.

Example code that sleeps: https://github.com/elastic/elasticsearch-py/blob/e1603f4f25888ca7fee03ee977abafb00d512601/elasticsearch/_async/helpers.py#L249-L251

It would be great to have a way to:

  • Either define how the sleep happens by passing sleep function into the client
  • Make Elasticsearch client internally cancel all sleeps when the client is closed

Contributor Guide