это ожидаемое поведение. Debezium никогда не должен находиться в нерабочем состоянии до тех пор, пока не будет удален любой невыполненный бинарный журнал, поскольку это приведет к несогласованности данных, поэтому сообщение об ошибке будет правильным.
Правильное решение этой ситуации - использование snapshot.mode=when_needed
. Другое решение, которое вы упомянули, - это манипуляция смещением. Но здесь вы должны допустить любую ошибку, так как то, что вы описываете, звучит так, как будто Connecotr вообще не смог найти смещения, поэтому он думает, что он работает с нуля, и инициирует новый снимок.