Confluent Connect, Debezium, java.lang.Ошибка OutOfMemoryError

#java #apache-kafka-connect #confluent-platform #debezium

#java #apache-kafka-connect #confluent-платформа #debezium

Вопрос:

Мы размещаем кластер контейнеров Confluent Connect версии 5.01 в Amazon EKS для запуска нескольких экземпляров соединителя Debezium для SQL Server версии 0.9.5. Иногда, когда мы перенастраиваем один из этих соединителей, он запускает перебалансировку, и один соединитель (не всегда один и тот же), похоже, выходит из строя ипотребляет всю память, выделенную для контейнера. Это заполняет наши журналы десятками тысяч незначительных изменений следующей записи журнала …

 INFO Skipping change ChangeTablePointer [changeTable=Capture instance "REDACTED" [sourceTableId=REDACTED, changeTableId=REDACTED, startLsn=008e7c10:00313f98:0010, changeTableObjectId=914583783, stopLsn=NULL], resultSet=SQLServerResultSet:2825973, completed=false, currentChangePosition=008e9893:00010320:0035(008e9893:00010230:0046)] as its position is smaller than the last recorded position 008e9893:00010320:0035(008e9893:00010320:0033) (io.debezium.connector.sqlserver.SqlServerStreamingChangeEventSource)
  

… прежде чем, наконец, достичь предела памяти контейнера, что приводит к отключению контейнера.

 Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "kafka-producer-network-thread | REDACTED-dbhistory"
  

Это запускает другую перебалансировку, которая перезапускает цикл.

Мы отследили проблему до этой строки кода в Debezium, которая, похоже, указывает на то, что соединитель пытается найти, где он остановился при перезапуске, но потребляет слишком много памяти в процессе. Мы будем признательны за любые предложения, которые вы могли бы предложить, чтобы помочь нам отследить и решить проблему.

Комментарии:

1. 0.9.5, это древний 🙂 Не могли бы вы сначала попробовать с 1.2.5.Final и сообщить нам, присутствует ли там проблема? Если да, то давайте углубимся в детали.

2. Отчет: мы обновились до Kafka v2.3, Connect v5.5 и Debezium v1.2.5 и с тех пор не сталкивались с этой проблемой. Я добавлю больше информации к этому вопросу, если он вернется, но в противном случае, я думаю, мы можем предположить, что обновление было решением. Спасибо!