Not able to create Kafka source connector

I am trying to create a kafka source connector with scylladb-cdc-source -connector. I have enable CDC on the table I want link this connector to, but I getting following error when I try to create a connector.

Connector Config -

{
  "name": "connector_name",
  "config": {
    "connector.class": "com.scylladb.cdc.debezium.connector.ScyllaConnector",
    "tasks.max": "1",
    "scylla.name": "cluster_name",
    "scylla.cluster.ip.addresses": "host_address:9042,host_addess_2:9042,host_address_3:9042",
    "scylla.keyspace": "keyspace_name",
    "scylla.table.names": "table_name",
    "scylla.consistency.level": "LOCAL_QUORUM",
    "scylla.port": "9042",
    "scylla.username": "admin",
    "scylla.password": "admin",
    "producer.override.acks": "all",
    "key.converter": "org.apache.kafka.connect.storage.StringConverter",
    "value.converter": "org.apache.kafka.connect.json.JsonConverter",
    "transforms": "topicRoute,ExtractField,contextType",
    "transforms.topicRoute.type": "org.apache.kafka.connect.transforms.RegexRouter",
    "transforms.topicRoute.regex": "(.*)",
    "transforms.topicRoute.replacement": "topic_name",
    "errors.tolerance": "none",
    "errors.log.enable": true,
    "errors.log.include.messages": true,
    "errors.retry.delay.max.ms": 60000,
    "errors.retry.timeout": 300000,
    "snapshot.mode": "schema_only",
    "snapshot.locking.mode": "none",
    "schema.refresh.mode": "columns_diff",
    "transforms.ExtractField.type": "org.apache.kafka.connect.transforms.ExtractField$Key",
    "transforms.ExtractField.field": "field_name",
    "transforms.contextType.filter.condition": "$.[?(@.after.field_type == 'example_type')]",
    "transforms.contextType.filter.type": "include",
    "transforms.contextType.type": "io.confluent.connect.transforms.Filter$Value",
    "transforms.contextType.missing.or.null.behavior": "exclude",
    "topic.creation.default.replication.factor": 3,
    "topic.creation.default.partitions": 3,
    "database.history.producer.security.protocol": "SSL",
    "database.history.producer.ssl.keystore.location": "./certs/keystore.jks",
    "database.history.producer.ssl.keystore.password": "${var:env:KeyPassword}",
    "database.history.producer.ssl.truststore.location": "./certs/truststore.jks",
    "database.history.producer.ssl.truststore.password": "${var:env:TruststorePassword}",
    "database.history.producer.ssl.key.password": "${var:env:KeyPassword}",
    "database.history.producer.endpoint.identification.algorithm": "https",
    "database.history.producer.ssl.endpoint.identification.algorithm": "",
    "database.history.consumer.security.protocol": "SSL",
    "database.history.consumer.ssl.keystore.location": "./certs/keystore.jks",
    "database.history.consumer.ssl.keystore.password": "${var:env:KeyPassword}",
    "database.history.consumer.ssl.truststore.location": "./certs/truststore.jks",
    "database.history.consumer.ssl.truststore.password": "${var:env:TruststorePassword}",
    "database.history.consumer.ssl.key.password": "${var:env:KeyPassword}",
    "database.history.consumer.ssl.endpoint.identification.algorithm": "",
    "database.history.consumer.endpoint.identification.algorithm": "https"
  }
}

Error -

{
    "error_code": 400,
    "message": "Connector configuration is invalid and contains the following 1 error(s):\nUsername is not set while password was set.\nYou can also find the above list of errors at the endpoint `/connector-plugins/{connectorType}/config/validate`"
}

Any help is appreciated.

The correct name of username configuration option is scylla.user, not scylla.username. The connector should start correctly after correcting:

"scylla.username": "admin",

to

"scylla.user": "admin",
3 Likes