googleapis / googleapis/java-pubsub-group-kafka-connector

we are observing when we upgrade confluent platform 7.8.2 with this connector 1.3.2, we are seeing config deployment error

Open
#392 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
50
Forks
37
Avg merge
1d 19h
Merged PRs (30d)
3

Description

**PLEASE READ**: If you have a support contract with Google, please create an issue in the [support console] (https://cloud.google.com/support/) instead of filing on GitHub. This will ensure a timely response.

we are getting **Error**: io.grpc.LoadBalancerProvider: io.grpc.rls.RlsLoadBalancerProvider not a subtype
on confluent platform 7.8.2 (Enterprise version) with pubsub-group-kafka-connector 1.3.2

Any idea how to fix this.

**config info:**

"name": "gcpsource-config",
"config": {
"connector.class":"com.google.pubsub.kafka.source.CloudPubSubSourceConnector",
"tasks.max":"3",
"cps.subscription":"****",
"cps.project":"****",
"value.converter":"org.apache.kafka.connect.storage.StringConverter",
"key.converter": "org.apache.kafka.connect.storage.StringConverter",
"kafka.topic":"$TOPIC_NAME",
"transforms": "CustomTransformerGCPToString",
"transforms.CustomTransformerGCPToString.type":"com.****.CustomTransformerGCPToString",
"transforms.CustomTransformerGCPToString.fields":"xx"
}

**Error log:**

{"name":"gcpsource-config","connector":{"state":"FAILED","worker_id":"******:**","trace":"java.util.ServiceConfigurationError: io.grpc.LoadBalancerProvider: io.grpc.rls.RlsLoadBalancerProvider not a subtype\n\tat java.base/java.util.ServiceLoader.fail(ServiceLoader.java:590)\n\tat java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNextService(ServiceLoader.java:1237)\n\tat java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNext(ServiceLoader.java:1265)\n\tat java.base/java.util.ServiceLoader$2.hasNext(ServiceLoader.java:1300)\n\tat java.base/java.util.ServiceLoader$3.hasNext(ServiceLoader.java:1385)\n\tat io.grpc.ServiceProviders.loadAll(ServiceProviders.java:67)\n\tat io.grpc.LoadBalancerRegistry.getDefaultRegistry(LoadBalancerRegistry.java:102)\n\tat io.grpc.internal.AutoConfiguredLoadBalancerFactory.(AutoConfiguredLoadBalancerFactory.java:51)\n\tat io.grpc.internal.ManagedChannelImpl.(ManagedChannelImpl.java:613)\n\tat io.grpc.internal.ManagedChannelImplBuilder.build(ManagedChannelImplBuilder.java:655)\n\tat io.grpc.ForwardingChannelBuilder2.build(ForwardingChannelBuilder2.java:261)\n\tat com.google.api.gax.grpc.InstantiatingGrpcChannelProvider.createSingleChannel(InstantiatingGrpcChannelProvider.java:425)\n\tat com.google.api.gax.grpc.ChannelPool.(ChannelPool.java:107)\n\tat com.google.api.gax.grpc.ChannelPool.create(ChannelPool.java:85)\n\tat com.google.api.gax.grpc.InstantiatingGrpcChannelProvider.createChannel(InstantiatingGrpcChannelProvider.java:243)\n\tat com.google.api.gax.grpc.InstantiatingGrpcChannelProvider.getTransportChannel(InstantiatingGrpcChannelProvider.java:237)\n\tat com.google.api.gax.rpc.ClientContext.create(ClientContext.java:236)\n\tat com.google.cloud.pubsub.v1.stub.GrpcSubscriberStub.create(GrpcSubscriberStub.java:287)\n\tat com.google.pubsub.kafka.source.CloudPubSubSourceConnector.verifySubscription(CloudPubSubSourceConnector.java:305)\n\tat com.google.pubsub.kafka.source.CloudPubSubSourceConnector.start(CloudPubSubSourceConnector.java:146)\n\tat org.apache.kafka.connect.runtime.WorkerConnector.doStart(WorkerConnector.java:218)\n\tat org.apache.kafka.connect.runtime.WorkerConnector.start(WorkerConnector.java:247)\n\tat org.apache.kafka.connect.runtime.WorkerConnector.doTransitionTo(WorkerConnector.java:406)\n\tat org.apache.kafka.connect.runtime.WorkerConnector.doTransitionTo(WorkerConnector.java:387)\n\tat org.apache.kafka.connect.runtime.WorkerConnector.doRun(WorkerConnector.java:167)\n\tat org.apache.kafka.connect.runtime.WorkerConnector.run(WorkerConnector.java:127)\n\tat org.apache.kafka.connect.runtime.isolation.Plugins.lambda$withClassLoader$7(Plugins.java:339)\n\tat java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)\n\tat java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)\n\tat java.base/java.lang.Thread.run(Thread.java:835)\n"},"tasks":[],"type":"source"}

Contributor guide

Open the contributing guide

Research direction

Start with the reported version combination and the stack trace entry points in CloudPubSubSourceConnector.java, especially verifySubscription and start. Reproduce connector deployment on Confluent Platform 7.8.2 with connector 1.3.2 and investigate the gRPC ServiceLoader failure; done means the source connector deploys without this error.

Written by the indexing model from the issue text.

Assessment

Tech stack
google-cloud, grpc, java, kafka
Domain
backend, cloud, distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.