apache / apache/pulsar-client-python

Pulsar client with custom logger may not terminate gracefully when a producer is created

オープン
#256 コメント 4 件 リアクション 0 件 担当者 1 名 @BewareMyPower が担当を希望しています GitHub で見る
主要言語
Python
スター
75
フォーク
53
PR マージ指標
30日以内にマージされた PR はありません

説明

When providing a custom logger to the Pulsar client and creating a producer, intermittent terminations occur with the following error:
```bash
terminate called without an active exception
Aborted (core dumped)
```

This doesn't happen consistently; I'd estimate it occurs in about 1 out of 20 runs. The other executions complete gracefully as expected. As the setup here is almost exactly as in https://github.com/apache/pulsar-client-python/issues/194, I've tried adding the del statements suggested there, but that hasn't resolved the issue for me.

Here is the Python script I'm using:
```python
import logging
import pulsar

def open_and_close():
pulsar_logger = logging.getLogger("pulsarDummyLogger")
client = pulsar.Client("pulsar://localhost:6650", logger=pulsar_logger)
producer = client.create_producer("A")
producer.close()
client.close()
del producer
del client

if __name__ == "__main__":
open_and_close()
```
I'm running it using the following bash command (as it doesn't happen all the time, I must run it a few times to encounter it):
```bash
for i in {1..20}; do env/bin/python python_script.py || break; done
```

I tried it on python 3.11.3 and on 3.13.3, as well as with pulsar-client 3.5.0, 3.6.0, 3.6.1, 3.7.0.

Any insights or suggestions would be greatly appreciated

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。