Debezium MySQL 1.3.0 - Failed to construct kafka consumer

342 views
Skip to first unread message

midhunsuk...@gmail.com

unread,
Feb 28, 2022, 1:47:07 AM2/28/22
to debezium
Hi,

I have received the below kafka connect error and it started working fine after Kafka connect restart. 

Error trace: org.apache.kafka.connect.errors.ConnectException: org.apache.kafka.common.KafkaException: Failed to construct kafka consumer
        at io.debezium.connector.mysql.MySqlConnectorTask.start(MySqlConnectorTask.java:298)
        at io.debezium.connector.common.BaseSourceTask.start(BaseSourceTask.java:106)
        at org.apache.kafka.connect.runtime.WorkerSourceTask.execute(WorkerSourceTask.java:198)
        at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:175)
        at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:219)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.kafka.common.KafkaException: Failed to construct kafka consumer
        at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:805)
        at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:652)
        at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:632)
        at io.debezium.relational.history.KafkaDatabaseHistory.storageExists(KafkaDatabaseHistory.java:352)
        at io.debezium.relational.history.KafkaDatabaseHistory.exists(KafkaDatabaseHistory.java:360)
        at io.debezium.connector.mysql.MySqlSchema.historyExists(MySqlSchema.java:265)
        at io.debezium.connector.mysql.MySqlTaskContext.historyExists(MySqlTaskContext.java:188)
        at io.debezium.connector.mysql.MySqlConnectorTask.start(MySqlConnectorTask.java:86)
        ... 9 more
Caused by: org.apache.kafka.common.KafkaException: java.io.IOException: Too many open files
        at org.apache.kafka.common.network.Selector.<init>(Selector.java:159)
        at org.apache.kafka.common.network.Selector.<init>(Selector.java:211)
        at org.apache.kafka.common.network.Selector.<init>(Selector.java:224)
        at org.apache.kafka.common.network.Selector.<init>(Selector.java:228)
        at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:727)
        ... 16 more
Caused by: java.io.IOException: Too many open files
        at sun.nio.ch.IOUtil.makePipe(Native Method)
        at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:65)
        at sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:36)
        at java.nio.channels.Selector.open(Selector.java:227)
        at org.apache.kafka.common.network.Selector.<init>(Selector.java:157)
        ... 20 more

Is there any way to prevent this in the future?

Setup:
Debezium MySQL 1.3.0 and Kafka 2.1.0 

Chris Cranford

unread,
Mar 1, 2022, 9:57:41 AM3/1/22
to debe...@googlegroups.com, midhunsuk...@gmail.com
Hi

So this error implies that your Kafka Connect environment has reached the maximum number of open file descriptors (or ulimit) of the operating system.  Both versions of Debezium and AK/KC are quite old, but I don't think there is likely a regression here since when these were relevant I don't recall any ulimit issues back then.  Linux traditionally sets the default ulimit relatively low, so it could just be a product of an overloaded environment.  It's worth noting that open file descriptors also include network socket connections as well.  Worse case you can raise the ulimit, but I think it's more important to first check the environment to understand what open file descriptors are allocated.

Thanks,
CC
--
You received this message because you are subscribed to the Google Groups "debezium" group.
To unsubscribe from this group and stop receiving emails from it, send an email to debezium+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/debezium/3fe98cd1-e267-464e-b59f-9a18edf97f9cn%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages