Skip to content

WriteApi does not respect Ctrl+C / KeyboardInterrupt / SIGTERM #688

@hterik

Description

@hterik

Specifications

  • Client Version: 1.48.0
  • InfluxDB Version: 2.4.0
  • Platform: Ubuntu 24.04

Code sample to reproduce problem

  1. Make sure there is no server running at the address below.
  2. Run the following program
import urllib3
from influxdb_client.client.influxdb_client import InfluxDBClient
from influxdb_client.client.write.point import Point

_RETRIES = urllib3.util.Retry(total=6, backoff_factor=0.8)
p = Point("dsjfsfd")
with InfluxDBClient("http://127.0.0.1:8086", org="fake", retries=_RETRIES) as client:
    with client.write_api() as api:
        api.write("mybucket", client.org, p)
  1. Wait a second or two to make sure at least one attempt has been made.
  2. Press Ctrl+C (or send a SIGTERM through some other mechanism, eg kill utility on linux)

Expected behavior

api.__exit__ should raise a KeyboardInterrupt exception immediately.

Actual behavior

Program is stuck running for several minutes inside api.__exit__. Until program is force killed using SIGKILL or all retries have been exhausted.

Additional info

I've also experimented with write_options=WriteOptions(max_close_wait=1000) but it does not help and it has the risk to affect the normal flow when user is not pressing Ctrl+C

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @hterik

        Issue actions

          WriteApi does not respect Ctrl+C / KeyboardInterrupt / SIGTERM · Issue #688 · influxdata/influxdb-client-python