Details
-
Enhancement
-
Resolution: Done
-
Major
-
None
-
None
Description
Cassandra Connector doesn't handle UDT data correctly, throwing errors as below:
18:00:38.873 [main] DEBUG i.d.connector.cassandra.SchemaHolder - Refreshing schemas... 18:00:38.881 [main] DEBUG i.d.connector.cassandra.SchemaHolder - Updated schema for test_cdc.table_c_test 18:00:38.881 [main] DEBUG i.d.connector.cassandra.SchemaHolder - Updated schema for testcassandra01.test Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.rangeCheck(ArrayList.java:657) at java.util.ArrayList.get(ArrayList.java:433) at org.apache.cassandra.db.marshal.UserType.<init>(UserType.java:71) at io.debezium.connector.cassandra.transforms.type.converter.UserTypeConverter.convert(UserTypeConverter.java:47) at io.debezium.connector.cassandra.transforms.type.converter.UserTypeConverter.convert(UserTypeConverter.java:22) at io.debezium.connector.cassandra.transforms.CassandraTypeConverter.convert(CassandraTypeConverter.java:78) at io.debezium.connector.cassandra.CellData.cellSchema(CellData.java:76) at io.debezium.connector.cassandra.RowData.rowSchema(RowData.java:76) at io.debezium.connector.cassandra.SchemaHolder$KeyValueSchema.getValueSchema(SchemaHolder.java:173) at io.debezium.connector.cassandra.SchemaHolder$KeyValueSchema.<init>(SchemaHolder.java:135) at io.debezium.connector.cassandra.SchemaHolder.lambda$createOrUpdateNewTableSchemas$1(SchemaHolder.java:120) at java.util.HashMap.forEach(HashMap.java:1289) at io.debezium.connector.cassandra.SchemaHolder.createOrUpdateNewTableSchemas(SchemaHolder.java:117) at io.debezium.connector.cassandra.SchemaHolder.refreshSchemas(SchemaHolder.java:54) at io.debezium.connector.cassandra.SchemaHolder.<init>(SchemaHolder.java:47) at io.debezium.connector.cassandra.CassandraConnectorContext.<init>(CassandraConnectorContext.java:50) at io.debezium.connector.cassandra.CassandraConnectorTask.run(CassandraConnectorTask.java:72) at io.debezium.connector.cassandra.CassandraConnectorTask.main(CassandraConnectorTask.java:61) 18:01:08.805 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:01:08.810 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] heartbeat query succeeded 18:01:08.870 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:01:08.871 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] heartbeat query succeeded 18:01:38.810 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:01:38.813 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] heartbeat query succeeded 18:01:38.870 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:01:38.872 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] heartbeat query succeeded 18:02:08.814 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:02:08.819 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] heartbeat query succeeded 18:02:08.874 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:02:08.875 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] heartbeat query succeeded 18:02:38.820 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:02:38.821 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] heartbeat query succeeded 18:02:38.875 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:02:38.876 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] heartbeat query succeeded 18:03:08.823 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:03:08.825 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] heartbeat query succeeded 18:03:08.878 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:03:08.879 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] heartbeat query succeeded 18:03:38.827 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:03:38.829 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] heartbeat query succeeded 18:03:38.882 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:03:38.885 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] heartbeat query succeeded 18:04:08.830 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat 18:04:08.832 [cluster1-nio-worker-0] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-1, inFlight=0, closed=false] heartbeat query succeeded 18:04:08.885 [cluster1-nio-worker-2] DEBUG com.datastax.driver.core.Connection - Connection[/127.0.0.1:9042-2, inFlight=0, closed=false] was inactive for 30 seconds, sending heartbeat