Peter Turcsanyi created NIFI-14277:
--------------------------------------
Summary: Add credential scope in GCP PubSub and BigQuery processors
Key: NIFI-14277
URL: https://issues.apache.org/jira/browse/NIFI-14277
Project: Apache NiFi
Issue Type: Bug
Reporter: Peter Turcsanyi
Assignee: Peter Turcsanyi
If GCP PubSub and BigQuery processors are configured with a private endpoint
(like pubsub-xxx.p.googleapis.com:443 where xxx is the name of the Private
Service Connect endpoint), then the credential scope needs to be set
explicitly. Otherwise authentication error occurs:
{code:java}
2025-02-18 13:44:51,967 ERROR [Timer-Driven Process Thread-4]
o.a.n.p.g.pubsub.publish.FlowFileResult Failed to reconcile PubSub send
operation status
java.util.concurrent.ExecutionException:
com.google.api.gax.rpc.UnauthenticatedException:
io.grpc.StatusRuntimeException: UNAUTHENTICATED: Request had invalid
authentication credentials. Expected OAuth 2 access token, login cookie or
other valid authentication credential. See
https://developers.google.com/identity/sign-in/web/devconsole-project.
at
com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:604)
at
com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:579)
at
com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:114)
at
com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:67)
at
org.apache.nifi.processors.gcp.pubsub.publish.FlowFileResult.reconcile(FlowFileResult.java:63)
at
org.apache.nifi.processors.gcp.pubsub.PublishGCPubSub.finishBatch(PublishGCPubSub.java:428)
at
org.apache.nifi.processors.gcp.pubsub.PublishGCPubSub.onTriggerFlowFileStrategy(PublishGCPubSub.java:347)
at
org.apache.nifi.processors.gcp.pubsub.PublishGCPubSub.onTrigger(PublishGCPubSub.java:309)
at
org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
at
org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1272)
at
org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:244)
at
org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:102)
at org.apache.nifi.engine.FlowEngine.lambda$wrap$1(FlowEngine.java:105)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
at
java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:358)
at
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: com.google.api.gax.rpc.UnauthenticatedException:
io.grpc.StatusRuntimeException: UNAUTHENTICATED: Request had invalid
authentication credentials. Expected OAuth 2 access token, login cookie or
other valid authentication credential. See
https://developers.google.com/identity/sign-in/web/devconsole-project.
at
com.google.api.gax.rpc.ApiExceptionFactory.createException(ApiExceptionFactory.java:116)
at
com.google.api.gax.rpc.ApiExceptionFactory.createException(ApiExceptionFactory.java:41)
at
com.google.api.gax.grpc.GrpcApiExceptionFactory.create(GrpcApiExceptionFactory.java:86)
at
com.google.api.gax.grpc.GrpcApiExceptionFactory.create(GrpcApiExceptionFactory.java:66)
at
com.google.api.gax.grpc.GrpcExceptionCallable$ExceptionTransformingFuture.onFailure(GrpcExceptionCallable.java:97)
at com.google.api.core.ApiFutures$1.onFailure(ApiFutures.java:84)
at
com.google.common.util.concurrent.Futures$CallbackListener.run(Futures.java:1132)
at
com.google.common.util.concurrent.DirectExecutor.execute(DirectExecutor.java:31)
at
com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:1307)
at
com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:1070)
at
com.google.common.util.concurrent.AbstractFuture.setException(AbstractFuture.java:819)
at io.grpc.stub.ClientCalls$GrpcFuture.setException(ClientCalls.java:568)
at
io.grpc.stub.ClientCalls$UnaryStreamToFuture.onClose(ClientCalls.java:538)
at
io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
at
io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
at
io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
at
com.google.api.gax.grpc.ChannelPool$ReleasingClientCall$1.onClose(ChannelPool.java:569)
at
io.grpc.internal.DelayedClientCall$DelayedListener$3.run(DelayedClientCall.java:489)
at
io.grpc.internal.DelayedClientCall$DelayedListener.delayOrExecute(DelayedClientCall.java:453)
at
io.grpc.internal.DelayedClientCall$DelayedListener.onClose(DelayedClientCall.java:486)
at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:564)
at io.grpc.internal.ClientCallImpl.access$100(ClientCallImpl.java:72)
at
io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:729)
at
io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:710)
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
... 3 common frames omitted
Caused by: io.grpc.StatusRuntimeException: UNAUTHENTICATED: Request had invalid
authentication credentials. Expected OAuth 2 access token, login cookie or
other valid authentication credential. See
https://developers.google.com/identity/sign-in/web/devconsole-project.
at io.grpc.Status.asRuntimeException(Status.java:532)
... 20 common frames omitted {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)