-
Bug
-
Resolution: Done
-
Major
-
None
-
None
See https://api.travis-ci.org/v3/job/699606922/log.txt:
javax.management.InstanceAlreadyExistsException: kafka.admin.client:type=app-info,id=my-db-history
at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:437)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1898)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:966)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:900)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)
at org.apache.kafka.common.utils.AppInfoParser.registerAppInfo(AppInfoParser.java:64)
at org.apache.kafka.clients.admin.KafkaAdminClient.<init>(KafkaAdminClient.java:529)
at org.apache.kafka.clients.admin.KafkaAdminClient.createInternal(KafkaAdminClient.java:472)
at org.apache.kafka.clients.admin.Admin.create(Admin.java:61)
at org.apache.kafka.clients.admin.AdminClient.create(AdminClient.java:39)
at io.debezium.relational.history.KafkaDatabaseHistory.initializeStorage(KafkaDatabaseHistory.java:484)
at io.debezium.relational.history.KafkaDatabaseHistoryTest.differentiateStorageExistsFromHistoryExists(KafkaDatabaseHistoryTest.java:334)
I suppose the problem is the async usage of an admin client in KafkaDatabaseHistory#checkTopicSettings(). It's not 100% to me how this could happen as that executor should be shut down after each test method. But in any case it seems the saver approach to use a distinct name (client id), avoiding the conflict.