
Description
Description
I have an app that throws an exception following a consumer.poll before commit. In turn my python program ends with SIGSEGV and a core dump. Here's the output from gdb:
Program terminated with signal SIGSEGV, Segmentation fault.
#0 CallState_get (h=h@entry=0x7f0578bd3978) at confluent_kafka/src/confluent_kafka.c:1390
warning: Source file is more recent than executable.
1390 PyEval_RestoreThread(cs->thread_state);
(gdb) bt
#0 CallState_get (h=h@entry=0x7f0578bd3978) at confluent_kafka/src/confluent_kafka.c:1390
#1 0x00007f0579f88241 in Consumer_rebalance_cb (rk=0x27880d0, err=RD_KAFKA_RESP_ERR__REVOKE_PARTITIONS, c_parts=0x7f0544002730, opaque=0x7f0578bd3978) at confluent_kafka/src/Consumer.c:656
#2 0x00007f0579cb8774 in rd_kafka_poll_cb (rk=0x27880d0, rkq=0x260b650, rko=0x7f0544002780, cb_type=2184411728, cb_type@entry=1140860800, opaque=opaque@entry=0x0) at rdkafka.c:2530
#3 0x00007f0579cb97f8 in rd_kafka_consumer_close (rk=0x27880d0) at rdkafka.c:2088
#4 0x00007f0579cb98f4 in rd_kafka_destroy_app (blocking=<optimized out>, rk=<optimized out>) at rdkafka.c:669
#5 rd_kafka_destroy (rk=0x27880d0) at rdkafka.c:712
#6 0x00007f0579f8919a in Consumer_dealloc (self=0x7f0578bd3978) at confluent_kafka/src/Consumer.c:65
#7 0x00007f0581ca2b47 in dict_dealloc (mp=0x7f0578bf3120) at Objects/dictobject.c:2014
#8 0x00007f0581cc9701 in subtype_dealloc (self=0x7f0578bf11d0) at Objects/typeobject.c:1207
#9 0x00007f0581c8cfc2 in frame_tp_clear (f=0x2779a08) at Objects/frameobject.c:509
#10 0x00007f0581d9f912 in delete_garbage (old=<optimized out>, collectable=<optimized out>) at Modules/gcmodule.c:867
#11 collect (generation=generation@entry=2, n_collected=n_collected@entry=0x7ffc85866530, n_uncollectable=n_uncollectable@entry=0x7ffc85866538, nofail=nofail@entry=0) at Modules/gcmodule.c:1019
#12 0x00007f0581da0559 in collect_with_callback (generation=2) at Modules/gcmodule.c:1128
#13 PyGC_Collect () at Modules/gcmodule.c:1592
#14 0x00007f0581d7d343 in Py_FinalizeEx () at Python/pylifecycle.c:603
#15 0x00007f0581d9e33a in Py_Main (argc=argc@entry=3, argv=argv@entry=0x21b1010) at Modules/main.c:829
#16 0x0000000000400ae1 in main (argc=3, argv=<optimized out>) at ./Programs/python.c:69
How to reproduce
https://gist.github.com/sbv-siteimprove/90965a8b16e9f542f3fe3aa0f01355e0
Checklist
Please provide the following information:
- confluent-kafka-python and librdkafka version (
confluent_kafka.version()
andconfluent_kafka.libversion()
):
>>> import confluent_kafka
>>> confluent_kafka.version()
('0.11.0', 720896)
>>> confluent_kafka.libversion()
('0.11.0', 721151)
- Apache Kafka broker version:
wurstmeister/kafka:0.11.0.1 docker image - Client configuration:
{...}
{
'bootstrap.servers': brokers,
'group.id': 'somethinghere'
'api.version.request': True,
'socket.keepalive.enable': True,
'metadata.request.timeout.ms': 3000,
'topic.metadata.refresh.interval.ms': 3000,
'socket.timeout.ms': 3000,
'enable.auto.commit': False,
'auto.commit.interval.ms': 0,
'enable.auto.offset.store': True,
'default.topic.config': {
'auto.offset.reset': 'earliest'
},
'message.max.bytes': _MAX_MESSAGE_BYTES
}
-
Operating system:
debian jessie -
Provide client logs (with
'debug': '..'
as necessary)
I'm not sure how to -
Provide broker log excerpts
[2017-10-16 14:44:13,870] INFO [GroupCoordinator 1001]: Member rdkafka-bcb360c4-e259-4b8b-9329-1d589e626d7a in group somethinghere has failed, removing it from the group (kafka.coordinator.group.GroupCoordinator)
[2017-10-16 14:44:13,870] INFO [GroupCoordinator 1001]: Preparing to rebalance group somethinghere with old generation 1 (__consumer_offsets-42) (kafka.coordinator.group.GroupCoordinator)
[2017-10-16 14:44:13,871] INFO [GroupCoordinator 1001]: Group somethinghere with generation 2 is now empty (__consumer_offsets-42) (kafka.coordinator.group.GroupCoordinator) -
Critical issue