We are using Debezium 0.8.3.Final and we are running into an ArrayIndexOutOfBoundsException.
The following setup is triggering the exception:
Message that is parsed:
Actual Database Schema
SCHEMA.TABLE with three columns: COLUM_A, COLUMN_B, COLUMN_D
The primary key has been changed from (COLUMN_A, COLUMN_C) to (COLUMN_A, COLUMN_D).
- COLUMN_C is processed in the for loop
- position becomes -1
- The assertion is not triggered since the -ea option is not provided by the Connect Docker image and assertions are by default disabled at runtime in Java
However, it is a valid case that a column is removed from a table so throwing an AssertionError would have been a bug as well.
- I came across https://issues.jboss.org/browse/DBZ-842 in my research where the ArrayIndexOutOfBoundsException is also mentioned in the comments. While my issue has a different cause. The fact that the ArrayIndexOutOfBoundsException can be thrown there is also because assertions are disabled at runtime.